Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Basic Blog is a mostly lightweight, high-performance blog template built with Astro.
Basic Blog is a lightweight, high-performance blog template built on Astro 6 and Tailwind CSS, designed for static blogs with pre-configured security headers, built-in search, and working newsletter and contact forms.
Basic Blog is a GitHub-hosted blog template that runs on Astro 6 and outputs a static site with pages for blog posts, projects, about, contact, newsletter, and search. It takes site settings from a TypeScript configuration file and content from Markdown, then generates an optimized static build with RSS and sitemap. The template is created by Daniel Adrian (GitHub: truedaniyyel) and distributed as a repository.
.woff2 fonts through Astro's font provider and exposes a CSS variable for theming._headers file in the public folder tuned for Cloudflare, with instructions to port rules to Vercel or Netlify.src/styles/global.css.CldImage with Low-Quality Image Placeholders (LQIP) to show blurred placeholders until full images load.astro-expressive-code renders code blocks, astro-icon handles icons, and medium-zoom adds image light-box zoom.src/site.config.ts.Clone the repository, install dependencies, and update src/site.config.ts to set your site title, description, and social links. Add your Cloudinary and Turnstile keys to the .env file, then deploy — the _headers file applies CSP and XSS rules automatically on Cloudflare, while Vercel and Netlify require moving those rules to their own config files.
The template is static by default. To make the newsletter and contact forms work, uncomment export const prerender = false; in the relevant page files and create src/actions/index.ts with your form logic using Astro Actions.
Images are handled through Cloudinary with the CldImage component, which uses format="auto" and quality="auto" so Cloudinary serves the best format for each visitor.
For static pages, pass an ogImage prop to the BaseLayout component. For blog posts, specify an image with src and alt in the Markdown frontmatter, and the template builds the social sharing card automatically.
Search is powered by Pagefind, a static search library that indexes your content at build time and provides fast, no-server search results directly in the browser.
