Choosing the Stack

1. The Core Decision: Database First

This is often the most rigid part of your stack. Changing your database later is much harder than changing a frontend framework.

spinner

πŸ› SQL (Relational)

Examples: PostgreSQL, MySQL, SQLite.

Choose this if:

  • βœ… Structure is known: You have clear entities (Users, Orders, Inventory) with strict relationships.

  • βœ… Data Integrity is key: You cannot afford "orphan" data (e.g., an Order without a User).

  • βœ… Complex Queries: You need to join multiple tables to generate reports.

πŸ“„ NoSQL (Document)

Examples: MongoDB, Firebase, DynamoDB.

Choose this if:

  • βœ… Unstructured Data: You are storing logs, analytics, or user-generated content that varies wildly.

  • βœ… Speed of Iteration: You need to change data models daily without writing migration scripts.

  • βœ… Real-time: You need out-of-the-box syncing (e.g., Chat apps using Firebase).

Frontend

spinner

Backend

spinner

express.js, django ?

ORM Prisma/Drizzle?

Last updated