Minimal Photon is a clean, elegant, and responsive academic homepage template designed for researchers, professors, and students. It is built on top of the Minimal Light theme, featuring a minimalist Apple-inspired design, enhanced data management, automated publication updates from BibTeX, and a stylish typewriter intro animation. Check out my homepage for a live demo.
- 🍎 Apple-style Aesthetic: Clean lines, subtle shadows, and a focus on typography, inspired by Apple's design language.
- 📖 Clean & Academic: Optimized for presenting research, publications, and portfolios.
- 📱 Fully Responsive: Perfectly adapts to desktops, tablets, and mobile devices.
- ⚙️ Easy Configuration: Centralized settings in
_config.yml. - ��️ Data-Driven: Manage content (News, Experience, Publications) via simple YAML files.
- 🤖 Automation: Automatically generate publication lists from BibTeX using Python.
- ✨ Interactive: Stylish typewriter intro animation and publication filtering.
- 📈 Analytics & SEO: Built-in support for Google Analytics and SEO optimization.
Understanding the folder structure will help you customize the theme effectively.
.
├── _config.yml # ⚙️ Main configuration file (Personal info, SEO, Links)
├── index.md # 🏠 Homepage content (About Me, Research Interests)
├── _data/ # 🗃️ Data files for dynamic content
│ ├── experience.yml # - Work & Education experience
│ ├── news.yml # - Latest news updates
│ ├── publications.yml # - Publication list (can be auto-generated)
│ └── references.bib # - BibTeX source for publications
├── _includes/ # 🧩 Reusable HTML components (News, Pubs, Experience)
├── _layouts/ # 📐 Page templates
├── assets/ # 🎨 Static assets
│ ├── css/ # - Stylesheets
│ ├── img/ # - Images (Profile, Favicon, Pub thumbnails)
│ ├── js/ # - JavaScript files (Animation, Filters)
│ └── bibs/ # - Individual BibTeX files (Auto-generated)
└── scripts/ # 🛠️ Utility scripts
└── update_pubs.py # - Script to convert BibTeX to YAML
You can use this template by hosting it on GitHub Pages (recommended) or running it locally.
-
Fork this Repository
- Click the Fork button at the top right of this page.
- Rename the repository to
your-username.github.io(for a main user site) or keep it as is (for a project site).
-
Enable GitHub Pages
- Go to your repository's Settings > Pages.
- Under Source, select
mainbranch (ormaster) and/ (root)folder. - Click Save.
- Your site will be live at
https://your-username.github.io.
-
Customize
- Clone your forked repository to your local machine.
- Follow the Configuration section below to personalize your site.
- Push your changes to GitHub, and the site will update automatically.
-
Clone the Repository
git clone https://github.com/KuangzhiGe/minimal-photon.git cd minimal-photon -
Install Dependencies Ensure you have Ruby and Bundler installed.
bundle install
If you plan to use the auto-update script for publications, install Python dependencies:
pip install -r requirements.txt
-
Run Server Start the local server to preview your site:
bundle exec jekyll serveVisit
http://localhost:4000in your browser.
Most global settings are located in _config.yml. Open it and update the following:
- Basic Info:
title,position,affiliation,email. - URL Settings:
url(your domain),baseurl(repository name if not using a custom domain). - SEO:
keywords,description. - Social Links: Update URLs for GitHub, Google Scholar, LinkedIn, etc.
- Images: Set paths for
avatarandfavicon. - Analytics: Uncomment
google_analyticsand add your Measurement ID (e.g.,G-XXXXXXXXXX) to enable tracking.
Edit index.md to update the About Me, Research Interests, and Miscellaneous sections. Markdown is fully supported.
Add your latest updates here.
- date: Dec. 2024
content: 📃 Paper accepted at CVPR 2025!List your education and work history.
main:
- title: "University Name"
details: "(2022 - Present) Ph.D. Student"
image: ./assets/img/logo.pngYou have two options to manage publications:
- Paste your BibTeX entries into
_data/references.bib. - Open
scripts/update_pubs.pyand setMY_NAMEto your name (this bolds your name in the author list). - Run the script:
This will automatically update
python3 scripts/update_pubs.py
_data/publications.ymland generate individual.bibfiles inassets/bibs/.
Directly edit _data/publications.yml following the existing format.
- Intro Animation: Modify the typing text in
assets/js/intro-animation.js. - Visitor Map: To add a visitor map (e.g., ClustrMaps), edit
index.mdand replace the placeholder comment at the bottom with your script code. - Styles: Custom CSS can be added to
assets/css/style.scss.
This project is licensed under the MIT License.
Based on the Minimal Light theme by Yaoyao Liu.
