I have a (not complex) quiz web application which shows an employee photo and 5 names and the user has to pick the right name. It is targeted to desktop browser usage (no mobile support) But since I used Bootstrap, it is responsive. (It does not have a backend because it just grabs a json file from which the quiz data is read.) It was originally developed in AngularJS some years ago.
As AngularJS is now being slowly a thing of a past, I thought about migrating it to newer UI tech. I know the that there are the new Angular framework versions (TypeScript) and I work on projects with it. This would be one option for sure But I wanted to ask what other frameworks / libraries could be considered. I thought about React, Vue.js, etc.
I know that it is hard to tell without seeing the code or the application but I'm interested in your opinion anyway. Thanks in advance! :)
Ryosuke
Designer / Developer / Influencer
What would I migrate to? Vanilla. It's less code, easier to use code, and if you progressively enhance it's more accessible a result. ESPECIALLY if like a smart person you make it work WITHOUT client-side JavaScript FIRST, then enhance it with scripting where and only as necessary.
Especially if you scrape the bootcrap off, with its riduclous code bloat, lack of separation of presentation from content, and PRETEND "responsiveness" that breaks down for anyone using a non-standard font metric, OR (you have a choice) flips the finger at same by declaring everything in pixels. There's a reason I tell developers to find a stick to scrape that off with before tracking it all over the web's carpets.
Dimes to dollars you could use half the code or less, develop it faster, better leverage caching models for faster sub-page loads, have it future proofed, and even be able to restyle it top to bottom without even TOUCHING the HTML. Aka a good chunk of why CSS even exists. ALL by kicking the framework nonsense to the curb.
All these "frameworks" people constantly tout as simpler, easier, faster, 'more productive', etc, etc generally do the exact opposite. They're more code, as much if not more work, and flip the bird at usability and accessibility for anyone who doesn't have the magical combination of perfect eyesight, perfect mobility, and desktop resolution screens.
Put on the big-boy pants and lose the training wheels.
@maruru makes a great point. If the application is a simple one, you could easily use vanilla javascript. You could use es6 template literals to render your UI. You could use Fetch API instead of AngularJS' $http or $resource. Again, like Marco said, you could also easily implement responsiveness with flexbox. If you didn't want to do that, a cheap alternative could be to use a lightweight css framework. Something like Bulma would work great for this.
On the other hand, since it is a small project, you could use it as an opportunity to build it in a new framework just for the experience. Just a thought
One of my collage friend made copy of namethatplace.us using react. I think i can do that too easily with react. P.S I dont know anything about angular
Sounds like you are tattooing ants with an orbital laser cannon. Please, STOP misusing frameworks!
right? So why not throw away all frameworks and libraries, and just write it in good old vanilla web tech? I know, for a fact, that small applications are not the target of big frameworks, like Angular and React. And I know from experience, that responsiveness is super easy to implement - you might even get it for nearly free depending on how you work. Vanilla tech will always be up2date, so you won't have to think about migrating it ever again!
Samuel Batista
I specialize in user interface development for video games and web applications.
That's an easy one: ReactJS . It's the most modern and forward looking UI development process, doesn't come with batteries, so you have to handle state management and business logic all by yourself, but if you can handle it, building UIs in a declarative way is super enjoyable.