A full-stack starter project combining Strapi headless CMS with TanStack Start for building modern web applications.
tanstack-demo.mp4
tan-start/
├── client/ # TanStack Start frontend application
├── server/ # Strapi CMS backend
├── seed-data.tar.gz # Sample data for seeding
└── package.json # Root package with setup scripts
Install dependencies and configure environment files for both client and server:
yarn setupThis command will:
- Install root dependencies
- Install client dependencies
- Install server dependencies
- Copy
.env.exampleto.envfiles where they exist
Populate the Strapi database with sample data:
yarn seedRun both client and server in development mode:
yarn devThis will start:
- Strapi server at http://localhost:1337
- TanStack Start client at http://localhost:3000
The client will automatically wait for the server to be ready before starting.
yarn setup- Complete project setup (dependencies + env files)yarn dev- Start both client and server in development modeyarn seed- Import sample data into Strapiyarn export- Export current Strapi datayarn client- Run client development server onlyyarn server- Run server development server only
yarn setup:client- Setup client onlyyarn setup:server- Setup server only
- TanStack Start - Full-stack React framework
- TypeScript - Type-safe development
- Vite - Fast build tool and dev server
- Strapi - Headless CMS
- Node.js - Runtime environment
- SQLite - Default database (configurable)
- First time setup: Run
yarn setupto install everything - Add sample data: Run
yarn seedto populate with demo content - Start development: Run
yarn devto work on both frontend and backend - Access admin panel: Visit http://localhost:1337/admin to manage content
- View frontend: Visit http://localhost:3000 to see your application
The setup script automatically copies .env.example files to .env where they exist. Check the server directory for Strapi configuration options.
- Export data:
yarn exportcreates a backup of your current data - Import data:
yarn seedimports the included sample data - Data is stored in
seed-data.tar.gzin the root directory
- After running
yarn setup, check that both client and server directories have their dependencies installed - The development server automatically handles the startup sequence (server first, then client)
- Make sure port 1337 (Strapi) and 3000 (client) are available
- Visit the Strapi admin panel first to create your admin user
- If setup fails, ensure you have Node.js v18+ and Yarn installed
- If ports are in use, check for other running applications
- If database issues occur, try deleting the server's SQLite file and re-seeding