Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Open-source developer blog template built with Astro and Tailwind, featuring content collections, themes, and multi-platform deployment.

Jekyll blog theme using Material Design Lite with Google Custom Search Engine integration.

Free dark Bootstrap blog template by Themefisher with Gulp workflow, live reload, and production build.

A minimal blog starter for Astro with Tailwind CSS, RSS, sitemap, robots.txt, and Markdown support.

Free Bootstrap 4 HTML5 multipage blog template with sticky sidebar, newsletter form, SVG preloader, and contact form.
Developer blog is a free, open-source Astro template for building a personal developer blog and portfolio, created by Nemanja Mitić for his site nemanjamitic.com. It takes Markdown and MDX files organized into Post and Project content collections and outputs a statically generated website with Tailwind CSS styling, React-powered interactive components, and full TypeScript validation.
Developer blog is a free, open-source Astro starter for personal developer blogs and portfolios, published on GitHub by Nemanja Mitić. It accepts Markdown and MDX content files in Post and Project collections, and it produces a static, SEO-friendly website with light/dark themes, tags and categories, pagination, RSS and JSON feeds, and draft-preview support. The project runs on the latest Astro with React islands, and it provides deployment paths for Nginx, GitHub Pages, Vercel, and Docker in both x86 and arm64 architectures.
Developer blog is built for developers who want a personal blog with a maintainable, transparent codebase rather than a closed theme. It suits technical writers who publish code-heavy articles, developers who self-host on Nginx or Docker in a homelab, and anyone who wants to deploy the same static site to Nginx, GitHub Pages, Vercel, or Docker using the included GitHub Actions workflows. It also works as a learning resource, since the README documents the code structure, implementation details, and the credits for every reused component.
The site is statically generated at build time: Post and Project .mdx collections are queried through the modules folder, and all environment variables (SITE_URL, PLAUSIBLE_SCRIPT_URL, PLAUSIBLE_DOMAIN, PREVIEW_MODE) are inlined at build time and ignored at runtime. Deployment works by copying the /dist output into an Nginx web root, pushing to GitHub Pages, using the Vercel Deploy button or CLI, or building and pushing a multi-arch Docker image. The latest git commit info is displayed in the footer so the deployed version can be identified at a glance.
Developer blog is free and open source, published in the nemanjam/nemanjam.github.io repository on GitHub. The README states that anyone is free to reuse and customize the code for their own developer blog; only blog posts (future) require attribution.
Yes. Comments are handled by Giscus and sync their dark mode with the site theme. Analytics are handled by Plausible and configured through the PLAUSIBLE_SCRIPT_URL and PLAUSIBLE_DOMAIN environment variables, which can point to Plausible's hosted service or a self-hosted instance.
Four deployment methods are included: Nginx, GitHub Pages, Vercel, and Docker. Each has ready-made GitHub Actions workflows plus local deployment scripts, and Docker supports building for both linux/amd64 and linux/arm64. A Vercel Deploy button is also available for one-click project creation.
The template defines two content collections. Posts are blog articles with tags, categories, reading time calculation, and a table of contents; Projects are portfolio items. Both are authored as .mdx files, validated by Zod schemas, and can be flagged as drafts that appear only in preview mode.
