• Astro 78.9%
  • TypeScript 10.1%
  • TeX 5.4%
  • CSS 3.7%
  • JavaScript 1.9%
Find a file
2026-06-04 17:13:49 +07:00
.github Initial commit 2026-04-29 16:49:52 +07:00
public feat(blog): Add Installing OpenMediaVault without IPv6 blog post 2026-06-04 17:03:30 +07:00
src fix(blog): Correct article Installing OpenMediaVault without IPv6 post 2026-06-04 17:13:49 +07:00
.gitignore feat: Add basic ActivityPub support 2026-05-25 12:07:48 +07:00
astro.config.mjs feat: Make all the blog's links opening on new tab 2026-05-29 19:00:48 +07:00
LICENSE Initial commit 2026-04-29 16:49:52 +07:00
package-lock.json feat: Make the RSS feed embed the full article 2026-05-29 21:37:37 +07:00
package.json feat: Make the RSS feed embed the full article 2026-05-29 21:37:37 +07:00
README.md Initial commit 2026-04-29 16:49:52 +07:00
tsconfig.json Initial commit 2026-04-29 16:49:52 +07:00

Astro Scholar

A clean, modern Astro portfolio template for researchers, professors, students, and academic teams.

Lighthouse

Lighthouse score showing 100 across all categories

Why This Template

Most portfolio templates look generic. This one is built for academic storytelling:

  • Blog posts for ideas, notes, and essays
  • Project pages for research work
  • Publications section from BibTeX
  • Team and author profiles
  • Search and generated OG images

Built with Astro for speed, static output, and straightforward deployment.

What You Get

  • Astro + MDX content workflow
  • Blog with table of contents and reading-friendly layout
  • Projects and publications pages
  • Team page and author data model
  • RSS feed and sitemap generation
  • Search indexing via Pagefind
  • GitHub Pages deployment workflow
  • PR preview deployment workflow

Quick Start

  1. Clone the repository.
  2. Install dependencies.
  3. Run the dev server.
npm install
npm run dev

Then open http://localhost:4321/astro-scholar

Commands

Command Description
npm run dev Start local dev server
npm run build Build production site
npm run preview Preview production build
npm run astro -- <command> Run Astro CLI commands

Customization Guide

Update these files first:

  • src/consts.ts: site title and global constants
  • src/data/authors.json: author profiles
  • src/data/projects.json: project entries
  • src/data/publications.bib: publication list
  • src/content/blog/*.md: blog posts
  • src/styles/global.css: theme and typography

Layout and components:

  • src/layouts/BlogPost.astro: post layout
  • src/components/Header.astro: top navigation
  • src/components/Footer.astro: footer

Deployment

This repo is ready for GitHub Pages.

  • main branch deploys via .github/workflows/website-deploy.yml
  • Pull requests deploy preview sites via .github/workflows/preview.yml

Base path is configured in astro.config.mjs:

  • default: /astro-scholar
  • PR preview: /astro-scholar/pr-previews/<PR_NUMBER>

Project Structure

src/
	components/      Reusable UI components
	content/blog/    Markdown blog content
	data/            Authors, projects, publications
	layouts/         Page layouts
	pages/           Route files
	styles/          Global styles
	utils/           Utility helpers
public/
	fonts/           Webfonts and static assets

Community

Feedback & Suggestions

If you have any suggestions/feedback, you can contact me via my email. Alternatively, feel free to open an issue if you find bugs or want to request new features.

License

Licensed under the MIT LICENSE, Copyright © 2026