TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: How does one start a web app nowadays? (2021)

12 点作者 eugene_stepnov超过 3 年前
Hello HN, I am a professional software engineer, but coding stopped being my full-time job in 2015. Now I am quite unsure what is the best way to start a web app today. I need to create a mostly CRUD-only app: an E-commerce website with an admin interface. It is important to have the code, since some custom features are required + owning IP matters for me.<p>Stack-wise, I like React and relational databases.<p>I suppose there are at least two possible solutions: 1) templates, like themeforest, 2) starter kits, like create-react-app.<p>Is there anything else? How would one start a web app today?<p>Thanks

10 条评论

travisd超过 3 年前
For the frontend side of things, especially when using React, NextJS is the first tool in the toolbox. You get a lot more than CRA provides out of the box (SSR, routing, API routes, and server-side only code for dealing with database access). Vercel or Netlify are both amazing dev experiences to get setup with (including Git push deploys).
评论 #28935863 未加载
oblib超过 3 年前
I spent some time at &quot;TodoMVC.com&quot; going over the tools they have there. Then I spent some time trying to figure out which of those I wanted to use. After a few weeks of struggling to decide, and not being able to, I decided to not use any of them.<p>I can see why those would be a reasonable choice when a team is working on a project, but it&#x27;s just me working on my stuff and all of those tools require a pretty huge investment, and once you&#x27;re using one you&#x27;re vested in it and there&#x27;s no turning back without a significant loss.<p>I&#x27;ve never been a fan of using SQL DBs for web apps. I&#x27;m sure they&#x27;re great for some apps and if you&#x27;re well versed is using those it&#x27;s probably the tool to use, but I wasn&#x27;t.<p>So I decided to use what was familiar and easy for me. I use jQuery, Bootstrap, mustache.js, accounting.js. For the DB I started with PouchDB.js, and added Apache&#x27;s CouchDB and web server running on DigitalOcean VPS when I was ready to move the app to the web.<p>With this approach I can start off without using any web server or DB at all, or using my Mac&#x27;s built-in web server and CouchDB installed on my Mac.<p>And when you move to a web server you can use one that&#x27;s much smaller. I added a service worker to my app so it stores the app on the client side. Since the app resides and is running almost entirely on the client side the server can handle many more users and you can use a much less costly server with no degradation of performance.<p>I have a demo with some pre-loaded data you can check out at <a href="https:&#x2F;&#x2F;cherrypc.com&#x2F;app&#x2F;demo.html" rel="nofollow">https:&#x2F;&#x2F;cherrypc.com&#x2F;app&#x2F;demo.html</a>, and a free version of the app at <a href="https:&#x2F;&#x2F;cherrypc.com&#x2F;app&#x2F;web.html" rel="nofollow">https:&#x2F;&#x2F;cherrypc.com&#x2F;app&#x2F;web.html</a>. Both of those use your web browser&#x27;s built-in IndexedDB and run entirely on the client side.<p>The main point is, for me, these tools were so much easier to get going with than those frameworks and I spent quite a bit of time working with those to find that out. PouchDB.js is, in my opinion, one of the best and most overlooked JS tools we have right now. And CouchDB is right there with it. No other DB makes it so easy to implement Offline-First, Local-First design goals.
reactor超过 3 年前
Its almost always what you know already.<p>Regarding React, you should give Svelte a try. As someone who did some projects in React, I regret not finding it (svelte) earlier, its a joy to work with it compared to React.<p>Back-end, just pick any popular framework from your language of you choice, things you&#x27;d want are mostly covered in most of them, without much differences.
jlengrand超过 3 年前
Usually going as light as possible with lit-html (starting using the open-wc starter). Most likely in Javascript, not typescript.<p>99% of the time I don&#x27;t need a backend, and just directly use firebase &#x2F; supabase or an equivalent.<p>Can&#x27;t beat 2 dependencies :).<p>Deployment gets either done on firebase or Netlify
评论 #28951660 未加载
kody超过 3 年前
The last SPA side project I launched was<p>- Flask + sqlite3 for the backend<p>- Svelte for the frontend<p>- nginx<p>- Hosted on my VPS<p>I am currently developing my company&#x27;s MVP with<p>- FastAPI + Postgres for the backend<p>- Firebase&#x2F;Firestore for the {front, back}end<p>- React + TypeScript for the frontend<p>- Vercel<p>My takeaways:<p>- Svelte clicks with me because it feels like I&#x27;m basically writing vanilla JS&#x2F;HTML&#x2F;CS. I can get a lot more done in Svelte than React because I don&#x27;t have to learn so much React-specific syntax<p>- The downside to Svelte is unit tests are gnarlier<p>- TypeScript makes me sane<p>- FastAPI is awesome, very similar to CherryPy. Doesn&#x27;t try to force you to render server-side HTML like Flask tends to<p>- Vercel is cool, but I don&#x27;t like {S,P}AAS deployment when I know I can write my own CI&#x2F;CD config and just deploy my app where I want
rlawson超过 3 年前
If writing a CRUD app - go Django if you like Python or Rails if you prefer Ruby. Most pages won&#x27;t require any js but drop in React where needed.
评论 #28960542 未加载
DarrenDev超过 3 年前
Take a look at WooCommerce. There&#x27;s a lot in a fully featured eCommerce site. Don&#x27;t roll your own when you don&#x27;t have to.<p>If you want to &#x27;own the code&#x27; that&#x27;s special to your particular eCommerce site, write your own plugins for that.
forgotmypw17超过 3 年前
I start by building a Web site which works without JavaScript, and enhance it from there.
评论 #28955004 未加载
tofukid超过 3 年前
Consider just signing up for Shopify and being done with it. What are the custom features? It’s likely there are already Shopify plug-ins&#x2F;services for this.
Graffur超过 3 年前
Redwoodjs is nearly 1.0. It&#x27;s based on React and solves data fetching, data storage and deployment with an opinionated approach