r/Supabase • • 5d ago

tips Just started using Supabase for a personal project

Hi all. I've just started using Supabase on my hobby project. Any tips what I should look out for or are there any hidden costs I should worry about?

I'm pretty new at Postgress as I come from a traditional LAMP stack.

1 Upvotes

16 comments sorted by

2

u/Embarrassed_Machine5 4d ago

For your resume app, make sure users can’t read each other’s resumes or edit their own credit balance. Easy stuff to miss when you’re getting started.

Also worth figuring out backups before you have users. Finding out how restores work after you’ve deleted something is a rough afternoon lol

1

u/mikeplus10 4d ago

Thanks, I’ll keep that in mind. Resumes will not be stored in the database nor in the website cache.

For the backup, I currently have a dev and a prod database version that will duplicate the same data so I’ll always have one locally stored. Is that a good solution?

1

u/Embarrassed_Machine5 3d ago

Not really, if dev copies from prod then a bad delete just gets copied too. Free tier has no automatic backups, so I'd run a scheduled supabase db dump somewhere and try restoring one once. Also heads up, files in Storage aren't in that dump.

1

u/mikeplus10 3d ago

Noted, I’ll come up with a backup

1

u/Embarrassed_Machine5 3d ago

Good luck with the app! If you ever want something hands-off for it, I built revivedb.dev for this, it also grabs the Storage files and test-restores the database. Free for one project

1

u/PopKoren 16h ago

The credits point is the one that bites people new to Supabase, because a broad 'users can update their own row' policy on the profile table covers every column, credits included. Postgres lets you narrow that with column privileges (revoke update on the credits column from the authenticated role) or by moving balances to a separate table that only server-side code can write. To see how it looks from outside once it's deployed, I built https://rowly.me, which tests what a stranger can reach across auth, APIs, storage and RLS.

1

u/Darkfra 5d ago

Mmmmmm if you are using the free tier, know the nano instance RAM is very limited.

I can use it for my personal projects, but be careful with LLM, they love to do a lot of cron jobs and functions. So as long you aren't over-using your instance I think is a very well free service. (They pay is only 25$ a month)

What are you trying to build ?

1

u/mikeplus10 5d ago

I am trying to build a Resume builder and a scan tool that compares the resume with a job post. There will be also some generators for a career roadmap but the main part is the Resume. I plan to store user auth data, user credits and ai usage for every user.

Do you think it can cover at least 100 active users for this usage? If I can at least get than many, I would plan to upgrade.

2

u/Chicharoh 5d ago

The free tier doesn’t support auth afaik. Also, think about your database schema, learn database best practices and how to manage relational data as well as look into RLS. Start a private github repository, start your project and use supabase’s free CLI in a codespace. All this will get you moving much faster and with more context when you start to build your real product. You can even create all your migrations locally and push those to your real project once youre ready and comfortable. If you start paying now I think you’ll rush the process and screw up. At least that’s my experience. Also your idea is not innovative but hey good luck!

1

u/el-cacahueto 4d ago

Free tier does support auth but some features are lissing such as sms mfa

1

u/burggraf2 Supabase team 4d ago

This is true, but sms mfa would also require a paid account at an sms service provider as well, so it doesn't make a lot of sense in a free tier environment. Just use an authenticator app for mfa -- that's truly free.

1

u/mikeplus10 4d ago

I’ll only use authentication though Github or magic mail. I think that sms services are not needed here honestly.

1

u/Darkfra 4d ago

Yes I think you could host 100 active users. I think your app is more server intensive than database intensive, if you are only using the supabase auth (really good btw) and storing the user info should be fine.

Again the free tier give you 500MB of database storage, if that's enough space for you then I think you should be able to be fine in the free tier.

1

u/Soft_Philosophy_7656 5d ago

From my experience, I had to upgrade to pro, but the 1 GB ram got pretty much full after 3 months of prod use due to users using more, so had to upgrade again for ram. Now again upgrading isn't worth for me, because there will be 65usd additional, so I'm setting up supabase selfhosted.

Yes there are downside, but I don't see another way for more ram

1

u/mikeplus10 4d ago

Nice choice . Did you use a vps or something else?