# Building full-stack apps with AI

Like the Complete Cursor course, this is a clear and well-organized course that pulls a lot of ideas into one place. A mixture of text and videos would probably be better than just videos, but seeing things done in practice is great for picking up tacit knowledge.

## Suggested tech stack

* Version control
  * GitHub
* IDE
  * Cursor
* AI tools
  * V0 for building UIs
  * Perplexity for troubleshooting
  * flowvoice.ai for text-to-speech
    * Unlike traditional TTS, it uses an LLM to tidy up what you've said into something more coherent (e.g., cutting out things like "um" and any doubling back)
    * Currently only available on Mac
    * I tried using WhisperTyping as a Windows alternative, but I struggled with latency and getting it to activate
* Frontend
  * next.js
  * Tailwind CSS
  * shadcn/ui
  * Framer Motion for animations
* Backend
  * PostgreSQL
  * Supabase (open-source backend-as-a-service platform that uses PostgreSQL)
  * Drizzle ORM
* Auth
  * Clerk
* Payments
  * Stripe
* Deployment
  * Vercel
    * Someone questions this in the lesson forum, with criticism around costs and customer support
  * Replit is also mentioned as an alternative

## Practical examples

The remainder of the course works through three practical examples:

* Your first app (\~4 hours)
  * A basic to-do app that makes use of everything in the suggested tech stack
* Notes app (\~2 hours)
  * A more sophisticated (though still quite basic) notes app, with more focus on building it rather than learning the stack
* Starter templates and AI workflows (\~1 hour)
  * Building a similar app much more quickly by letting Cursor and V0 do all the work


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://www.raoulharris.com/technical-courses/building-full-stack-apps-with-ai.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
