Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Minimal personal website template built with Astro, with MDX content, Giscus comments, and Umami analytics.

Iqbal's personal website theme for Hexo, featuring social links, Disqus comments, and Gulp-based asset building.

A clean, single column, monospace resume template built for Jekyll.

Tactile is a Jekyll theme for GitHub Pages with a minimal, tactile design and easy customization.

A theme of Hexo for personal wiki which seems like Wikitten style.

A personal website template for an astrophysicist, built with Next.js, Tailwind CSS, and Tailwind UI.

My curriculum vitae (CV) written using LaTeX.
Ctros is a minimal personal website template built with Astro that generates a static site with a blog, project portfolio, dynamic Open Graph images, GitHub Discussions-powered comments (Giscus), and privacy-friendly analytics (Umami).
Ctros is an open-source Astro template for developers who want a personal website with a blog and portfolio. It accepts content as MDX files in src/content/post and src/content/project plus JSON data files in src/data (about.json, software.json, hardware.json, project-categories.json), and outputs a fully static site with SEO meta tags and structured data. The template is maintained by aglabsid and runs on Node.js 22+, using pnpm or npm as package managers.
Clone the repository, run pnpm install, and copy .env.example to .env to start. Configure your Giscus repository and category IDs in the environment variables, then set your Umami website ID in astro.config.mjs. Run pnpm dev for local development, add your MDX content, and pnpm build creates a production-ready static site.
Ctros requires Node.js 22 or newer. The README recommends pnpm, but npm is also supported as a package manager.
Comments use Giscus, which stores discussions in your GitHub repository. Enable Discussions in the repository's Settings -> Features, install the Giscus app, then copy the data-repo-id and data-category-id values from giscus.app into your .env file.
Sign up at cloud.umami.is or self-host Umami, add your website in Settings, and copy the Website ID from the tracking code. Then update astro.config.mjs with your id and hostUrl (cloud.umami.is for hosted, or your self-hosted URL).
The template provides pnpm dev for the dev server, pnpm build for production builds, pnpm preview to preview the built site, and pnpm format to format code with Prettier.
