/tables

Primary LanguageTypeScript

tables

Generates tables, pretty simple!

I cut my teeth on a more server-rendered project called Simbi, but with Tables, I wanted to dive deep into the client-focused capabilities of Next13 (now ported to Remix). The result? A streamlined GUI that acts as a friendly generator around raw SQL and prisma, letting you visualize and construct your data models.

Features

  • Drag-and-Drop Table Creation
  • Column Customization
  • Default Values
  • Unique Constraints
  • Nullable Columns
  • Foreign Key Management
  • Relations Simplified
  • SQL Export

Check it out for yourself

video.mov

Most interesting bits

  • SQL export strategies in the services/
  • zustand store in lib/
  • zod schemas in schemas/
  • shadcn/ui components in components/ui/
  • reactflow setup/custom nodes and edges in app/routes/_index.tsx

Whats next?

  • I'm pretty happy with this, but if I did make any changes it would be to add check constraints and maybe more export strategies like prisma. Ater that maybe even a Remix CLI wrapper that inits a project with auth, shadcn/ui, a DB query runner (prisma's typesql?) that produces typed results, and some pregenerated api routes based on a schema. The UX escapes me at the moment but having a tool that generates a batteries included way to hack on side projects is pretty tempting!