gndx.dev Tailwind Templates

Gndx.dev

EV0 Astro Theme is a free and open-source serverless blog template, built with Astro, Tailwind CSS, and TypeScript.

šŸš€ EV0 Astro Theme - Blog Template

EV0 Astro Theme is a free and open-source serverless blog template, built with Astro, Tailwind CSS, and TypeScript. It serves as a starting point for creating your personal portfolio website or showcasing your projects online. The template is open-source and released under the MIT license, meaning you are free to use, modify, and distribute it for personal or commercial purposes.

EV0 Astro Theme

šŸ”„ DEMOS

šŸ”„ Features

  • āœ… Minimal styling (Tailwind CSS)
  • āœ… 100/100 Lighthouse performance
  • āœ… SEO-friendly with canonical URLs and OpenGraph data
  • āœ… Sitemap support
  • āœ… RSS Feed support
  • āœ… Markdown & MDX support
  • āœ… PWA-ready
  • āœ… Fully responsive
  • āœ… Robots.txt & Humans.txt
  • āœ… TypeScript support
  • āœ… Syntax highlighting
  • āœ… YouTube Integration
  • āœ… CLI for adding new posts

āš“ Lighthouse Score - PWA Ready

Lighthouse Score

šŸš€ Getting Started

Clone this repository to your local machine using Git.

git clone https://github.com/gndx/ev0-astro-theme.git your-project-name
Command Action
npm install Installs dependencies
npm run dev Starts local dev server at localhost:4321
npm run build Build your production site to ./dist/
npm run preview Preview your build locally, before deploying
npm run youtube Fetches the Latest YouTube Channel Videos
npm run newpost Generate a New Blogpost Markdown Entry

Edit the HTML files in the src/pages directory to add your projects, experiences, and personal information.

šŸ“ Configuration Blog

To configure your blog, edit the src/config/config.json file. This file contains the following options:

{
  "site": {
    "title": "EV0 Astro Theme",
    "base_url": "https://ev0.gndx.io",
    "base_path": "/",
    "favicon": "/favicon.png",
    "logo": "https://s3.amazonaws.com/gndx.dev/ev0-astro-logo.png",
    "lang": "en",
    "description": "EV0 is a free and open-source serverless blog template, built with Astro, Tailwind CSS, and TypeScript.",
    "pageSize": 6
  },
  "metadata": {
    "meta_author": "Oscar Barajas @gndx",
    "meta_description": "EV0 is a free and open-source serverless blog template, built with Astro, Tailwind CSS, and TypeScript."
  },
  "author": {
    "name": "Oscar Barajas Tavares @gndx",
    "avatar": "https://s3.amazonaws.com/gndx.dev/gndx-astro-avatar.png",
    "bio": "EV0 is a free and open-source serverless blog template, built with Astro, Tailwind CSS, and TypeScript."
  }
}

The menu is configured in the src/config/menu.json file. This file contains the following options:

[
  {
    "name": "Home",
    "url": "/"
  },
  {
    "name": "Blog",
    "url": "/blog"
  },
]

Social networks are configured in the src/config/social.json file. This file contains the following options:

  {
    "name": "Instagram",
    "url": "https://instagram.com/gndx"
    "svg": "...."
  }

šŸŽ„ YouTube Integration

To integrate your YouTube channel, you need to create a new file called .env in the root directory of your project. Then add the CHANNEL_ID and API_KEY to get the latest videos from your YouTube channel in src/config/youtube.json.

npm run youtube

Your YouTube API is not used in production.

Requires an API KEY for YouTube API V3 - Google Console

šŸ“ Adding New Posts

To add a new post, run the following command:

npm run newpost

Follow the instructions and this will generate a new markdown file in the src/content/blog directory. Edit the file to add your post content.

šŸ“‚ Project Structure

/
ā”œā”€ā”€ public/
│   └── favicons/
│   └── fonts/
│   └── blog-placeholder.jpg
│   └── favicon.png
│   └── humans.txt
ā”œā”€ā”€ scripts/
│   └── newpost.cjs
│   └── youtube.cjs
ā”œā”€ā”€ src/
│   ā”œā”€ā”€ components/
│   ā”œā”€ā”€ config/
│   ā”œā”€ā”€ content/
│   ā”œā”€ā”€ layouts/
│   └── pages/
│   └── styles/
│   └── env.d.ts
└── package.json
└── astro.config.mjs
└── tailwind.config.js
└── tsconfig.json
└── .gitignore

šŸš€ Release History

  • 1.0.0: Initial Release šŸš€ - (18/09/23)

šŸ’» Contributing

Contributions to this project are welcome. If you find a bug or have a suggestion for improvement, please open an issue or submit a pull request.

šŸ“ƒ License

This project is licensed under the MIT License. See the LICENSE file for details.

ā˜• Support

If this project helped you learn something new, or if you're feeling particularly generous, you can buy me a coffee. It's greatly appreciated! 😊 GitHub Sponsors

Top categories

Loading Svelte Themes