DEV Community

Discussion on: How to build a web app in 2017?

Collapse
 
ben profile image
Ben Halpern

I think you have the right line of thinking. In Rails world, you can go "API mode" but I'm not totally sure what the implications of that are.

I'd question whether you need to go "single page", it will depend on the internal navigation of the site. If it's a dashboard a user uses but it's separate from another part of the app, there's not necessarily a need to tie them together in the routing logic. They could be separate client-side apps.

Either way, one thing I'd check out is "app shell architecture" in relation to service-workers. Taking that into consideration early will help you make best use of modern browser APIs.

Collapse
 
rhymes profile image
rhymes

I didn't think about having multiple client apps (like one for the dashboard and one of the admin for example). It might also help avoid coupling in the architecture of the frontend

Thanks, the app shell architecture seems very promising!

Collapse
 
ben profile image
Ben Halpern

Yeah, and presumably if you needed to unify them with client-side routing, it wouldn't be impossible to do so later. But if that's not a major burden, I'd think it could be avoided. That being said, Vue may make this easy enough to deal with that it wouldn't be worth decoupling. I'm not familiar with the details there, but from some adjacent experience I'd say you don't need to make one monolith app.