▲ | platelminto 5 days ago | |||||||||||||||||||||||||||||||||||||||||||||||||
I was about to start a new project with Next.js... is anyone willing to give me some advice? I'm about to start building an e-commerce site (30-50k poster print designs, i.e. no inventory), and was leaning towards a Django backend (because I know it) and... some sort of SSR frontend. I'm not really a frontend guy, but taking this as an opportunity to learn it. This article obviously does not inspire confidence in me choosing Next.js - would someone have any suggestions/pros and cons of what to use? I currently see the options for doing SSR as: - Next.js: well-represented in AI training data (though recent versions had breaking changes? I'm not sure), but annoying to actually use (according to this article/general sentiment I've found online), and pushes you into Vercel? (I barely know what that means) - SvelteKit: best DX and nice to use, but might be less present in AI training data? - Django templates + HTMX: possibly limiting? Less maintainable once you get to a certain size? I'm not sure. - Other options? | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | komali2 5 days ago | parent | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
In my opinion (9 years FE exp) you should build your ecommerce site in shopify or wordpress + woocommerce or some other off the shelf tool. It will be up before the evening's out and you won't be spending that much extra than you would have anyway, and everything will Just Work (tm) and look pretty good (chuck out 50$ for a nice wordpress theme and you're golden). If you insist on rolling your own, Django + templates should be plenty. Lots of existing code for integrating Stripe or whatever. AI will be fine at it. You could potentially investigate medusajs or prestashop. Here's a list that could be fun to investigate: https://github.com/awesome-selfhosted/awesome-selfhosted?tab... but keyword is fun. You should build it in wordpress because that is a bombproof solution running like half the internet and will save you endless amount of time. If you're doing this as an exercise to learn a new tool, leave the AI to the side as you're robbing yourself an opportunity to delve into docs and gain more domain knowledge. And absolutely do not touch nextjs with a 10 foot pole, it's an absurdly overwrought tool. The only people that should learn nextjs are people working at dev houses that churn out a shitload of full stack apps for clients that have the budget to shell out for vercel's hosting costs. And even then imo they should just be using django + react + vite + tanstack MAYBE. HTMX is cool but I'm not sure the point, again if for fun why not, but I would ask yourself: you get your site up and running and you spend the next year scrambling around putting things in boxes and printing shipping labels, and then in 2026 Thanksgiving right before the holiday rush something breaks in your app and you want to fix it but HTMX/nextjs/whatever have gone through 2 breaking change upgrades and so have 4 different libraries they rely on and actually the most up to date version of two libraries you rely on are not interoperable right now because they depend on different node versions or some other bullshit, and now what do you do? Just use wordpress. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | carlosneves 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
For awareness, if you want to build a SSG/SSR frontend, there's also [Astro](https://astro.build/) It lets you ship client islands to the client, which AFAIK is essentially partial hydration. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | skorpen 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Sonnet 4 and gpt5 are both good at SvelteKit. You might have to specify that you want to use Svelte 5 in the llm instructions for your editor. Use Context7 mcp to get Svelte 5 docs if the agent messes up something you know should work. The new experimental remote functions solved a big pain point with sveltekit, so I no longer have any reasons not to recommend svelte and sveltekit to people. | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | christophilus 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Vanilla Django would get my vote. Your description doesn’t sound like it needs a heavy frontend. Sprinkle in some scripts as needed. If you really want to learn front-end, Next is really just the worst place to start or finish or anything in between. | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | Zanfa 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
If already know Django, go with Django and sprinkle in some HTMX as necessary. You’ll get 95% of the benefits with a fraction of the effort compared to a modern Javascript SPA. And it’ll be a breeze to maintain. You’ll also save so much time never needing to debug a bundler, minifier or ESM/CJS issues. | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | palmfacehn 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Use what you know. Build the backend first. You probably won't know what the frontend requires before this. Once you know what is actually going to be on your site, you can style the output with CSS and add the necessary interactivity with JS. Browser APIs have mostly standardized as compared to the bad old days. Using them directly instead of libraries or frameworks will keep your site lean and fast. All of your CSS, HTML and browser API knowledge will continue to serve you for the years to come. In a few years, people will be arguing about a new magic framework. | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | andoando 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
Personally I love Sveltekit. Theres some things to learn but once you do its amazingly simple and powerful. That said I havent tried Astro, Nuxt | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | nop_slide 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
You should definitely run through the Rails tutorial at least. I rediscovered Rails this last year (and checked out Django/Laravel) and it's really awesome these days. So many things built in ready to go. | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | xdanger 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
You should really try Nuxt (a vue framework, like Next.js but better). | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | infamia 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
That sounds like a good candidate for Django using either Datastar or HTMX with web components (Lit/React/VanillaJS) as an escape hatch for really interactive bits. Instagram, Threads, Doordash, EdX, Octopus Energy, etc. have all running Django at scale for years. | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
[deleted] | ||||||||||||||||||||||||||||||||||||||||||||||||||
▲ | gg2222 5 days ago | parent | prev [-] | |||||||||||||||||||||||||||||||||||||||||||||||||
SolidStart |