Skip to main content

Planning

Back to Documentation Intro Contents

Decide on Architecture

If you already have an architecture in mind, jump to Plan the UI

If it is just a web app to be built, consider the below Front End, Back End and Database Architecture options. If it also needs to be a mobile app, consider the below Mobile Architecture options.

  1. Ask AI to recommend an architecture with justification - see the Obsidian note on AI Prompts here
  2. Review the below architecture considerations against the AI output and verify it makes sense

Front End Architecture

React Logo Vite Logo NextJS Logo

  • Considerations:
    • Single page application or not?
    • SSR (Server side rendering) or SSG (Static site generation) required?
  • Options:
    • CRA (Create React App)
    • Vite.js
    • Next.js
  • Recommendations (from Robin Wieruch):
    • Vite.js for client-side rendered React applications
    • Next.js server-side rendered React applications
    • Astro for static-side generated React applications

Back End Architecture

Database

  • Considerations:
    • Should it be SQL or non SQL?
    • How am I going to query my database? Via a client? By the CLI?
    • Consider TypeORM or Prisma for type safe access to your database
  • Options:
    • Sequel DBs:
      • Xata
      • MySQL
      • Postgress (recommended)
    • No Sequel DBs:
      • Firebase
      • MongoDB
      • PlanetScale
      • Supebase

References

  1. Which Is Better? SQL vs NoSQL
  2. How To Choose a Database for your App
  3. Build a TypeScript API with Express, RapidAPI, and Xata

Hosting

  • Considerations:
    • How much will hosting the site cost?
    • What features does the hosting provide?
    • What access protection does the hosting service offer for limiting access to your app or database?
  • Options:
    • Netlify (free)
    • Vercel
    • Heroku (cheap)
    • DigitalOcean (cheap)
    • Amazon RDS (expensive)
    • BlueHost (basic)

Mobile Architecture

Plan the UI

Inspiration

For inspiration for projects, check out the following resources on the Coding Resources Design UI/UX Links Todoist list

Top Links: