top | item 40521565

(no title)

throwaway38375 | 1 year ago

Backend:

Stick with the LAMP/LEMP stack. It's not perfect, but if you're moving from WordPress (which uses the LAMP/LEMP stack) then sticking with it will make the move less painful.

In terms of a framework. Laravel is a good idea for RAD, although Symfony is a fine choice too!

---

Frontend:

Assuming is has to be a SPA: Use whatever you know best. React, Vue, or Angular are fine. Laravel seems to prefer Vue slighty?

If you can get away with SSR: Use a templating system. Assuming you're using PHP, you could use Blade (for Laravel) or Twig (for Symfony).

---

In terms of hosting and deploying, use one big VM for as long as possible. It's not better, but it's simpler... and I'd say you've got a lot on your plate!

---

But to answer your original question:

If you stick with LAMP/LEMP and a framework, there is so much documentation (and so many guides) that you will be able to figure out what to do. :)

discuss

order

zwnow|1 year ago

This helps a ton, I appreciate it, thanks! Planning to stick with LEMP stack unless I find a reason not to. Gonna work with Vue as I already know it.

solardev|1 year ago

If you want to use LEMP, I'd look into at least abstracting the lower parts of the stack (mainly the L and E, maybe the M too) into vendor-supported services. You can use Google App Engine to host the PHP code on managed auto-scaling infra, DigitalOcean or another hosted MySQL, or virtualize the whole thing using something like Cloudways.

The more you can offload to managed services, the more time you can spend coding application logic (the P part) instead of managing OS and SQL servers updates, Nginx rules, etc. A lot of that is commoditized these days and managed by specialized companies & people & scripts who can do it cheaper, faster, and better than you (if you don't have much experience).

There are legit use cases for rolling your own infra (or rolling your own everything), but "I'm a new solo web dev needing to launch a startup web app" probably isn't one of them. Any one part of that stack (LEMP) can require a lot of knowledge and setup and regular maintenance, and doing those things without downtime can be difficult, especially without a mentor/partner to help you. If you're a one-dev shop / tiny startup, let the specialized vendors take some load off while you grow. You can always in-house the stack later, once you can afford more experienced people (or you yourself get more experience).

matt_s|1 year ago

Just reinforcing to stick with as much stuff you already know since you'll be learning about other areas. SANS web application security principles are a good start: https://www.sans.org/cloud-security/securing-web-application...

Another thing to look into might be a provider like CloudFlare which will take care of a lot of things for you. You might be thinking "who would DDos my little site/app?" I don't think anything is immune and this (or other providers) at least give you time back to focus on building your app. Its probably super cheap for small traffic domains to start with too. Its okay to not know the nitty gritty details of something not core to what you're building. Think of services like that in the beginning to just purchase/subscribe to and revisit later.