usebasejump / basejump

Teams, personal accounts, permissions and billing for your Supabase app
https://usebasejump.com
MIT License
702 stars 64 forks source link

This project should use the same copy-paste logic as the UI components #66

Closed thedevdavid closed 6 months ago

thedevdavid commented 8 months ago

I've been using the new Basejump package since its release. First, I wanted to say that it's great work and I appreciate you built this to assess Supabase's needs for a native(ish) organization system. Tho I think, dbdev (and the project being a package) greatly limits the ability of it to be truly useful.

First, the maintainers are already unable to publish the first big update, due to an issue with dbdev.

Second, this makes local development impossible if you're not connected to the internet.

Third, is that the project provides an awesome starter set of functions and tables for a team system but makes it unnecessarily complex to extend it. I have to dig into the Basejump SQL file on GitHub, search for the relevant sections and copy-paste that part into a new migration in my project. This is way less productive than just a simple copy-paste when integrating Basejump.

A few examples that came up where I needed to extend:

So, I recommend making the core functionality copy-pastable and extensible by default, just as the UI components (as the shadcn/ui components). The command @usebasejump/cli@latest init should create a migration file (or ideally multiple files by feature) with the chosen functionality, instead of a dbdev HTTP call.

tiniscule commented 6 months ago

This is now done, I've updated the CLI to no longer use the database.dev version. Also added a nifty optional next starter template.

Thanks for the suggestion and votes!