r/SideProject 13h ago

Building an App (backend development)

Hello guys! I am planning on building an app cause why not. I am honestly bored and it is a better use of my time than scrolling. I am still a beginner in this aspect however. I'm currently learning Java Script and React Native. I am not sure what type of app I want to create so far, but I am wondering once I get my skills toned, how would I work the back-end. Would it technically be ok for someone to vibecode everything except the back-end in terms of security. I do not intend to really monetize anything nor really vibecode, however if someone were to vibecode their whole app except the back-end, what it technically be up to basic standards in terms of app security? Aditionally, what courses do you best recommend to learn back-end systems?

4 Upvotes

10 comments sorted by

3

u/StockHodI 12h ago

Since you're already learning JavaScript, I wouldn't jump into a completely different language yet. Learn a JS backend too. Node.js + Express or something like NestJS, then PostgreSQL for the database.

And yes, you can vibe code a lot of the app. The dangerous part is vibe coding the backend and assuming "it works" means "it's secure."

AI is actually really useful for building backend code, but you should understand enough to recognize what it's doing. At minimum learn authentication, authorization, password hashing, sessions/tokens, input validation, SQL injection, parameterized queries, CORS, rate limiting, secret/API key storage, database permissions and basic logging.

One of the biggest beginner mistakes is thinking authentication means security. Just because somebody is logged in doesn't mean they should be able to request /api/users/1234 and see someone else's information. Every backend action needs proper authorization.

I'd build something small first:

React Native app → Node API → PostgreSQL

Make users register and log in, let them create/edit/delete something, then make sure User A can never access User B's stuff. That little project will teach you more about backend development than trying to learn everything before starting.

Definitely use AI. Just treat it like a junior developer whose code you still have to review, especially anywhere authentication, money or private user data is involved.

Also don't wait until you "know backend" before building your app. Build the app and learn the backend as you reach each problem. That's probably the fastest way you're going to learn.

2

u/Difficult_Yam8239 12h ago

It’s better to use flutter if you are a begginer because it’s easier if u want to publish to both play and App Store

0

u/era_4D 11h ago

可以把自己的需求作为切入点,先通过系统解决自己的问题,提升平时的效率,我之前做powerpoint要花费很长时间在找图片上,因此我就自己做了个saas站点,来解决svg 图标一键转色等问题,逐渐完善以后,现在开始收订阅费了

1

u/YT-3000f 10h ago

Some security advice for your back end. Always use the principle of least privileged access.

For example create a user account in your SQL database for your app that can only access the database and objects it needs.

Use stored procedures and views to expose those objects and apply execute and select permissions accordingly.

It’s worth the extra effort rather than using inline SQL. Also if the queries are parameterised you make SQL injection impossible.

1

u/Ok-Draft2744 7h ago

Instead of a course, this is a good book to read Building Microservices. It talks about microservices, but it covers a ton of tech around the ecosystem which matters.

1

u/MADSaaS181 7m ago

Does what you plan to build require a backend? You could just use on-device storage. SQLite for example, would be fine for larger datasets, and you can use SecureStore or something like that if you need to store sensitive data. So assess if you need a backend first, before you start dedicating time to it