EV0 Astro Theme is a robust, free, and open-source serverless blog template designed to kickstart your personal portfolio or project showcase. Built with modern web technologies including Astro, Tailwind CSS, and TypeScript, it offers a high-performance, SEO-friendly foundation for your online presence. The template is released under the MIT license, providing full flexibility for personal or commercial use.
Key Features:
- Minimal Styling: Leverages Tailwind CSS for efficient and customizable styling.
- Exceptional Performance: Achieves a 100/100 Lighthouse performance score, ensuring fast load times and a smooth user experience.
- SEO-Friendly: Includes canonical URLs and OpenGraph data for optimal search engine visibility.
- Dark Mode: Offers a built-in dark mode for enhanced readability and user preference.
- Content Management: Supports Markdown & MDX for flexible content creation.
- Modern Web Capabilities: Features View Transitions for seamless page navigation and is PWA-ready for an app-like experience.
- Full Responsiveness: Ensures your content looks great on any device.
- Developer-Friendly: Comes with TypeScript support for type-safe development and syntax highlighting for code blocks.
- Integrations: Includes YouTube integration to display your latest videos and supports sitemap and RSS Feed generation.
- Utilities: Provides
robots.txtandhumans.txtfor web crawlers and project information. - CLI Tools: Simplifies content creation with a command-line interface for adding new posts.
Getting Started:
To begin using EV0 Astro Theme, clone the repository:
git clone https://github.com/gndx/ev0-astro-theme.git your-project-name
Navigate into your project directory and install dependencies:
npm install
Start the local development server:
npm run dev (runs at localhost:4321)
Build your production site:
npm run build (outputs to ./dist/)
Preview your build locally:
npm run preview
Configuration:
The blog is highly configurable via JSON files:
src/config/config.json: Customize site title, base URL, favicon, logo, language, description, and pagination size. It also controls feature toggles like YouTube integration.src/config/menu.json: Define your navigation links.src/config/social.json: Configure your social media profiles.
YouTube Integration:
To display your YouTube channel's latest videos, create a .env file in the root with your CHANNEL_ID and API_KEY. Then run npm run youtube. This feature is disabled in production and can be toggled in config.json.
Adding New Posts:
Generate new blog posts easily with npm run newpost, which creates a markdown file in src/content/blog.
Project Structure:
The project follows a clear structure with dedicated directories for public assets, scripts, components, configuration, content, layouts, pages, and styles, making it easy to navigate and extend.
Contributing:
Contributions are welcome! Feel free to open issues for bugs or suggestions, or submit pull requests for improvements. The project is licensed under the MIT License.
Support:
Optional VIP support is available for $25, offering personalized assistance, customization, deployment help, and advice. You can also support the project via GitHub Sponsors.




