Hacker News new | ask | show | jobs
by MilanoCookie 2707 days ago
Related to this topic:

What are the minimum technologies needed to get a solid front-end stack, with a nice balance between modern features without framework/library/build tool/transpiling hell?

For example, I don’t want to learn TypeScript when vanilla JavaScript will suffice. I’m wary of picking up the “hot” new frameworks because they haven’t stood the test of time and may get deprecated/irrelevant.

Basically, I want to have a flexible and minimalist stack, but also with a good balance of features (i.e. not just a static HTML site).

Any ideas?

3 comments

I'd strongly urge you to reconsider using TypeScript. At this point there isn't much difference between TypeScript and ES6 (besides the types) and types are a gigantic maintainability booster and significantly reduces bugs. The TypeScript language server also provides high quality autocomplete and jump-to-definition functionality in your editor of choice. It's very helpful to be able to enumerate through object methods and properties for 3rd party libraries as well as your own application code.
Thanks, I’ll look into TypeScript more.
Vue is simple and progressive - ie you can use it when you want to and use plain JS etc when you don’t.

If you like “pythonic” simplicity, use Vue.

The answer can be a bit different depending on what you already know, but here is a list of a few things things I work with:

- Rails or Express for the backend (depending on needs, I'll usually chose Rails over Express 90% of the time).

- Vanilla JS if you only need a few simple things

- Vuejs if you need a bit more complex client-side logic, but still easy setup (Vue can be installed from a <script> tag)

- React if you need more complex UI, but it will make your client bundles more complex (while importing Vue as a script tag is ok in prod per their doc, React's docs recommend against that).

Another thing, if you already know React and you want something quick if Next.js. It's still a full React framework, so it comes with a pretty "complete" bundle that you might want to avoid, but is really plug and play and requires 0 config. You'll be able to very (very, very) quickly start building pages, etc. with server-side rendering and it works very well (I'm using it on a fairly sizeable project for a client and I'm happy with it so far). And in the case where you want to end up with just a static package that you can host on a CDN, there is an option for that. You loose server-side rendering, but that allows you to serve you website as a static website.

Thanks, I’m leaning towards React and Vue