
Template details
as-folio
A free, MIT-licensed Astro template for academic portfolios with BibTeX publications, blog, CV, projects, bookshelf, and full-text search.
About this template
as-folio is an open-source Astro template that builds fast, static academic portfolio websites for researchers, scientists, and lab groups, turning BibTeX, Markdown, and YAML content into pages for publications, blog posts, projects, CVs, books, teaching, and people.
What is as-folio?
as-folio is a free, MIT-licensed academic portfolio template built with Astro 6.4+, Tailwind CSS v4, and strict TypeScript. It takes content from BibTeX, Markdown/MDX, YAML, and JSON files under src/content and src/data and compiles them into a static website with pages for publications, blog posts, projects, books, teaching, people, and a CV. The template is maintained by Dadang NH and began as an Astro reimplementation of the Jekyll-based al-folio theme before evolving into an independent project.
Key Features
- BibTeX publications — A custom build-time BibTeX parser (zero runtime dependencies) turns
papers.bibentries into publication listings with author highlighting, abstracts, PDF/code/slides links, and optional Google Scholar, Altmetric, Dimensions, or InspireHEP citation badges. - MDX blog — Blog posts support KaTeX math, syntax highlighting, a reading progress bar, table of contents, image zoom, related posts, year-grouped archives, and draft status via frontmatter flags.
- Full-text search — A ⌘K command-palette search is powered by Pagefind with ninja-keys keyboard navigation.
- Dual-format CV — The CV page accepts both RenderCV YAML (
cv.yml) and JSONResume JSON (resume.json) formats, with PDF download. - GitHub integration — Project pages show live GitHub star counts, and a repositories page displays user stats, pinned repos, and trophies through github-readme-stats.
- Notebook and widget support — Jupyter notebooks render as blog posts, and per-post CDN widgets include Mermaid, Chart.js, ECharts, Vega, Plotly, Pseudocode, TikzJax, Leaflet, and PhotoSwipe.
- Analytics and comments — Analytics can plug in GA4, Pirsch, OpenPanel, or Cronitor; comments can run Giscus (GitHub Discussions) or Disqus.
- Deployment flexibility — The same codebase deploys to GitHub Pages, GitLab Pages, Cloudflare Pages, Netlify, and Vercel, each with a pre-configured workflow or config file.
Who is it for?
as-folio is for academics and researchers who need a professional online presence without building a site from scratch. Early-career researchers can publish a publication list and CV; lab groups can use the people and teaching pages to introduce team members and courses; open-source developers can use the repositories and GitHub stats pages; graduate students can maintain a math-heavy blog with KaTeX and notebook support.
What can you do with as-folio?
- Researchers — Maintain a publication list in BibTeX, with citation counts refreshed automatically on every deploy via the included OpenAlex update script.
- Lab groups — Create team member profiles in
src/content/peopleand list current/past courses insrc/content/teaching. - Book enthusiasts — Build a reading shelf in
src/content/bookswith Open Library cover art, star ratings, and statuses like reading, finished, queued, or paused. - Course instructors — Publish announcements and blog posts to
src/content/announcementsandsrc/content/posts, with frontmatter options for math, table of contents, and drafts.
How does as-folio work?
Deployment is env-first: you set ASTRO_SITE and ASTRO_BASE as environment variables, and astro.config.mjs reads them at build time. After forking the repo and setting GitHub Pages source to GitHub Actions, edit src/config/site.ts with your name, email, avatar, and social links, then push to main to auto-deploy. For local development, run corepack enable, copy .env.example to .env, and use yarn dev.
Pricing
as-folio is free to use under the MIT license; there are no paid tiers or locked features.
Alternatives
al-folio, the Jekyll-based academic portfolio theme that as-folio reimplements and modernizes with Astro and Tailwind CSS.
FAQ
Is as-folio free?
Yes, the template is released under the MIT license and is free to use, modify, and deploy. No paid tiers or hidden costs are mentioned.
What does as-folio do?
as-folio generates a static academic portfolio site from local data files: BibTeX for publications, Markdown/MDX for blog posts and projects, YAML/JSON for CVs, and Markdown for books, teaching, announcements, and people.
How do I deploy as-folio?
The template ships with pre-configured deployment for GitHub Pages, GitLab Pages, Cloudflare Pages, Netlify, and Vercel. For GitHub Pages, set your repository's Pages source to GitHub Actions and push to main; the ASTRO_SITE and ASTRO_BASE variables control your site URL and base path.
Does as-folio support BibTeX?
Yes, as-folio includes a custom build-time BibTeX parser that converts entries in src/data/papers.bib into publication listings with author highlighting, abstracts, and optional citation badges.
What Node version does as-folio require?
The README lists Node 24+ and Astro 6.4+ as prerequisites, with Yarn 4 as the package manager.














