English · 中文 · Demo · Changelog
If you like this project, please give it a star ⭐️
PRISM stands for Portfolio & Research Interface Site Maker. It is a modern, configurable, and high-performance personal website template built with Next.js, Tailwind CSS, and TypeScript. It is designed for researchers, developers, and academics to showcase their work, publications, and portfolio with ease.

TOML, Markdown, and BibTeX files in the content/ directory. No code changes required for content updates!.bib file. Includes search, filtering (Year, Type), and automatic citation generation.Clone the repository:
git clone https://github.com/xyjoey/PRISM.git
cd PRISM
Install dependencies:
npm install
Run the development server:
npm run dev
Open http://localhost:3000 with your browser to see the result.
All content lives in the content/ directory.
content/config.toml)Configure your site title, author details, social links, and navigation menu here.
[site]
title = "Your Name"
description = "Personal website of Your Name"
url = "https://your-website.com"
[author]
name = "Your Name"
title = "PhD Student / Researcher"
# ...
[features]
enable_likes = true
content/about.toml)Customize the “About” section, “News”, and “Selected Publications” on the homepage.
content/publications.bib)Export your publications from Google Scholar, Zotero, or Mendeley to content/publications.bib. PRISM automatically parses this file to generate your Publications page. Customize the display of publications by changing selected, preview and description keys in the bib file.
To add a new page (e.g., “Projects”), create a TOML file in content/ (e.g., content/projects.toml) and add it to the navigation list in content/config.toml.
Supported page types:
text: Renders Markdown content (Great for CVs, Bio).card: Renders a list of cards (Great for Projects, Awards).publication: Renders the full publications list with filters.PRISM is optimized for static deployment.
npm run build
This generates a static out/ directory that can be hosted anywhere.
👉 Read the full Deployment Guide for instructions on deploying to GitHub Pages and Cloudflare Pages.
PRISM/
├── content/ # All user-editable content (TOML, BibTeX, MD)
├── public/ # Static assets (images, papers)
├── src/
│ ├── app/ # Next.js App Router
│ ├── components/ # React components
│ ├── lib/ # Utility functions (parsers, config loaders)
│ └── types/ # TypeScript definitions
├── next.config.ts # Next.js configuration
└── tailwind.config.ts # Tailwind CSS configuration
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.