Installation & Setup
What versions of Node.js and Rust do I need?
- Node.js: 18.0.0 or higher
- Rust: Latest stable (via rustup.rs)
Can I use an older Node.js version?
No. The scaffolded Next.js requires 18+. Upgrade with:
brew install node # macOS
# or use nvm install 18 && nvm use 18
Project Setup
Can I change the project name after scaffolding?
Yes, manually. Edit Cargo.toml (Rust) and package.json (Next.js) with the new name.
Can I add features after scaffolding?
Absolutely. You own the code. Add any package:
cd api && cargo add some-crate
cd web && npm install react-query
Can I switch from Prisma to Drizzle?
Yes, manually:
- Uninstall Prisma:
npm uninstall prisma @prisma/client - Install Drizzle:
npm install drizzle-orm drizzle-kit - Copy schema setup from Drizzle docs
- Update
src/lib/db.ts
Development
Why is my Rust code compiling slowly?
Rust compilation is slow. For faster iteration:
- Use debug mode (default):
cargo run— fast to compile - Only use release for production:
cargo build --release
How do I debug my frontend?
Use browser DevTools (F12) and React DevTools extension.
How do I debug my API?
Use logging:
tracing::debug!("Value: {:?}", my_var);
API & Frontend
How do I call the API from the frontend?
const API_URL = process.env.NEXT_PUBLIC_API_URL;
const response = await fetch(`${API_URL}/api/items`);
const data = await response.json();
How do I pass authentication tokens?
const session = await auth();
const response = await fetch(`${API_URL}/api/protected`, {
headers: {
Authorization: `Bearer ${session.accessToken}`,
},
});
How do I add a new database field?
Prisma:
- Edit
prisma/schema.prisma - Run:
npx prisma migrate dev --name add_field
SQLx:
- Create migration:
sqlx migrate add add_field - Edit the SQL file
- Run:
sqlx migrate run
Deployment
How much does it cost to host?
Railway offers $5/month free tier, which usually covers hobby projects. Production typically costs $20-100+/month depending on usage.
Can I deploy just the frontend?
Yes, to Vercel or Netlify. You still need an API hosted somewhere else.
Can I deploy just the API?
Yes, to Railway, Fly.io, AWS, or any Rust-capable host. The frontend can call it from anywhere.
Customization
Can I use a different database?
Yes, if it has SQLx/SeaORM/Prisma/Drizzle support:
- PostgreSQL ✅
- MySQL ✅
- SQLite ✅
- MongoDB (Prisma only, basic support)
Can I use a different auth system?
Yes, replace NextAuth.js or JWT with OAuth, magic links, passkeys, etc.
Can I use a different UI library?
Yes. Tailwind and shadcn/ui are optional. Use CSS Modules, Styled Components, Bootstrap, etc.
Can I use GraphQL instead of REST?
Yes, but you’ll implement it manually using libraries like async-graphql.
Version Compatibility
| Component | Minimum | Recommended |
|---|---|---|
| Node.js | 18.0.0 | Latest LTS |
| Rust | stable | Latest stable |
| Next.js | 14.0.0 | Latest |
| Axum | 0.7 | Latest |
What’s Next?
- Getting Started — Install and scaffold
- Running Locally — Get your app running
- Your First Feature — Build something real
- Deployment — Ship to production