Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Cartoon-style Astro 5 portfolio with Markdown blog, project carousel, Giscus comments, and config-driven content.

A dark portfolio & blog theme for Astro with a live 5,000-particle Three.js background, blog system, and glassmorphism UI.
Astro Cartoon Portfolio is an open-source portfolio and blog template built on Astro 5 that pairs a cartoon-styled, responsive front end with a Markdown blog, a config-driven project showcase, and Giscus-powered comments.
The template takes your content from TypeScript config files and Markdown posts and generates a static, SEO-friendly website with pages for home, blog list, blog detail, about, contact, and standalone comments. It runs on Astro 5.x with TypeScript and Vite, uses custom CSS for styling, and is published by tomcomtang under the MIT license.
src/content/posts; the list page supports full-text search, tag filtering, reading-time display, and optional cover images per post.src/config, so you rarely need to edit markup.PUBLIC_GISCUS_REPO, PUBLIC_GISCUS_REPO_ID, and PUBLIC_GISCUS_CATEGORY_ID as environment variables.src/pages/index.astro includes an interactive carousel of projects, plus hero and highlight sections, all driven by src/config/projects.ts.src/pages/comments.astro) are built in and ready to customize.src/config/site.ts and projects.ts to set your name, bio, social links, and project list, then publish Markdown posts to share updates.npm install then npm run dev to start a local dev server.src/config/site.ts and src/config/projects.ts, and add Markdown files to src/content/posts.Free and open source under the MIT License. You can use, modify, and redistribute the template for personal or commercial purposes.
Yes, the template is released under the MIT License, so it is free to use, modify, and redistribute for both personal and commercial projects.
No. Blog posts are simple Markdown files in src/content/posts and are read at build time by Astro's Content Collections, so there is no database or admin panel to maintain.
Set three environment variables: PUBLIC_GISCUS_REPO (your GitHub repo), PUBLIC_GISCUS_REPO_ID, and PUBLIC_GISCUS_CATEGORY_ID. Once these are configured, the Giscus React component on the blog detail and standalone comments pages will load discussions.
Yes. Astro generates a fully static site, so the built output can be served from any static host. The repository provides a Vercel quick-deploy button as a convenience, but the build process is platform-agnostic.
The main files are src/config/site.ts (site copy, navigation, social links, hero/about/contact text), src/config/projects.ts (project entries with title, description, tech, links, images), and src/config/posts-images.ts (mapping post slugs to cover images).