OK here’s a fun question for all you web development folks.
I am an experienced, self-taught, full-stack web development dude who has worked almost exclusively, sngle-handedly, on a single project for many years. I call it InterpretersOffice and it’s a PHP app built with Laminas (formerly Zend) MVC, Doctrine ORM, MySQL, and a lot of sort-of old-school Javascript (jQuery etc). I built it out of necessity, for my workplace, for managing our court interpreters office’s administrative needs. IOW my formal title was Court Interpreter but I did IT stuff a great part of the time.
Now I am retired and considering starting a new project as a learning exercise, as a service to the community, and to build sort of a portfolio so I can try to get paid for stuff like this. It will be a bilingual (Spanish<>English) glossary for court interpreters. I plan to host it on a cloud server, most likely Debian or Ubuntu. Here’s the fun part: I am at liberty to choose pretty much whatever FOSS I want in the application stack from back to front: languages, frameworks, libraries, all of it.
I could use a language I already know well (PHP, Javascript), or a only a little (Python), or even less (Java), or not at all (Go). It could be a node.js backend, or PHP, or not. On the front it can be React, Vue, Angular… I am leaning towards Vue. For a CSS framework it could be Bootstrap, or something else.
It’s definitely not likely to need to serve a million hits an hour so it does not have to start out ready for killer scalability/performance, but of course it would be good to plan ahead for moderate success/popularity.
I want to have an authentication/authorization scheme and start out with a small, human volunteer editorial board with privileges to edit content, and have a system where normal authenticated users can earn their way up to editorial privileges by submitting suggested edits.
It doesn’t have to be up and running in a week, so doesn’t have to be something extremely RAD-oriented (Rapid Application Development) like Laravel, and I actually want to learn new frameworks and possibly languages, so it doesn’t have to be super-easy for me and my present skill-set.
So, the question: what technologies would you recommend for a project like this?