All-in-one starter combining Astro, Strapi CMS, and TailwindCSS with support for Strapi Astro Loader and Strapi Astro Blocks Field.
- ⚡ Astro 5 - Latest version with ultra-fast static sites
- 📝 Strapi CMS - Headless CMS for content management
- 🧱 Strapi Astro Blocks Field - Modular & flexible content block system
- 🔄 Strapi Astro Loader - Automatic content loading from Strapi
- 🎨 TailwindCSS 4 - Modern utility-first CSS styling
- 📱 Responsive Design - Optimized for all devices
- 🌐 TypeScript - Full type support
# NPM
npm create astro@latest -- --template VirtusLab-Open-Source/astro-strapi-starter
# Yarn
yarn create astro --template VirtusLab-Open-Source/astro-strapi-starter
Create a .env
file in the root directory:
# Strapi Configuration
STRAPI_URL=http://localhost:1337
STRAPI_TOKEN=your_strapi_api_token_here
# Development mode
npm run dev
# or
yarn dev
Open http://localhost:4321 in your browser.
/
├── src/
│ ├── components/
│ │ └── blocks/ # Strapi block components
│ │ ├── BlockRenderer.astro
│ │ ├── TextBlock.astro
│ │ ├── QuoteBlock.astro
│ │ ├── MediaBlock.astro
│ │ ├── CTABlock.astro
│ │ └── HeroBlock.astro
│ ├── pages/
│ │ └── index.astro # Homepage
│ ├── types/
│ │ └── strapi.ts # TypeScript types for Strapi
│ ├── content.config.ts # Strapi Loader configuration
│ └── styles/
│ | └── global.css
│ ├── utils/
│ │ └── media.ts # Strapi Media utils
├── package.json
└── astro.config.mjs
This project uses:
@sensinum/astro-strapi-loader
- Automatic content loading@sensinum/astro-strapi-blocks
- Modular & flexible block system
Command | Action |
---|---|
npm install |
Installs dependencies |
npm run dev |
Starts dev server at localhost:4321 |
npm run build |
Build your production site to ./dist/ |
npm run preview |
Preview your build locally |
npm run astro ... |
Run CLI commands like astro add , astro check |
- Connect your repository to Vercel
- Add environment variables in project settings
- Deploy!
- Connect your repository to Netlify
- Set build command:
npm run build
- Set publish directory:
dist
- Add environment variables
- Astro Documentation
- TailwindCSS Documentation
- Strapi Documentation
- Sensinum Astro Strapi Loader
- Sensinum Astro Strapi Blocks Field
- Clone the repository
- Install dependencies:
yarn
- Run development mode:
yarn dev
- Check types:
yarn check
We welcome contributions to this project! Here's how you can help:
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
Please make sure to:
- Follow the existing code style
- Write tests for new features
- Update documentation as needed
- Keep your PR focused and concise
Copyright © Sensinum & VirtusLab
This project is licensed under the MIT License - see the LICENSE.md file for details.