AstroStarter

scholar-lite — Astro Starter Template

By fjd2004711

Scholar-Lite is an Astro-based static academic portal template for labs, research teams, and scholars, supporting automatic BibTeX import, multilingual full-text search with Pagefind, and management of team and publication content.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

3 previews
Desktop homepage1 / 3
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 3

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-04View source

What stands out

A quick read of the recorded project description.

01

Built-in BibTeX import engine: after running npm run import-bibtex, entries are automatically classified by type into Publications or Books

02

Maps BibTeX fields such as pdf, code, website, demo, video, slides, and award to page buttons or badges

03

Built-in Pagefind full-text search supporting 8 languages: English, Chinese, Japanese, Korean, French, German, Spanish, and Russian

04

Beyond papers and books, also supports Markdown content management for software copyrights, invention patents, and team honors

05

Provides GitHub Actions and GitLab CI configurations for automated build and deployment to GitHub Pages or GitLab Pages

06

MIT licensed, allowing free use, modification, commercial use, and distribution of this version of the code

Template Details

Scholar-Lite is a static portal template for academic labs, research teams, and scholars, built with Astro and paired with Tailwind CSS and TypeScript. Its core capabilities center on showcasing academic output and managing content: through the BibTeX import engine in scripts/import-bibtex.js, entries in citations.bib are automatically classified by type into Publications (src/content/publications) or Books (src/content/books), and fields such as pdf, url, code, website, demo, video, slides, and award are mapped to buttons or badges on the page. In addition to papers and books, the template supports maintaining software copyrights, invention patents, and team honors in src/content/softwares, src/content/patents, and src/content/honors respectively; content such as News, Team, and Research is also stored as Markdown files under src/content/. For search, the template includes Pagefind and supports search in 8 languages: English, Chinese, Japanese, Korean, French, German, Spanish, and Russian. The search index is generated at build time, so search functionality depends on the build step. Internationalization is managed through src/i18n/ui.ts.

For usage and deployment, the template requires Node.js v22.12.0 or higher, and provides npm run dev for local development and npm run build to generate the static site and search index; the build output goes to dist and can be deployed to Cloudflare Pages, Vercel, Netlify, or GitHub Pages. The repository includes GitHub Actions and GitLab CI configurations for automated build and deployment. The template is MIT licensed, allowing free use, modification, commercial use, and distribution of this version of the code, but third-party assets such as demo images, fonts, and icons must be checked separately under their respective licenses, and external services such as domains and hosting may incur costs.

AstroStarter

Is it right for your project?

Use Cases

  • Academic labs or research teams building a public-facing portal to present papers, books, and projects in one place
  • Individual scholars maintaining a publication list and automatically updating page content by replacing citations.bib
  • Academic sites that need multilingual search, using Pagefind to search site content across 8 languages
  • Static sites maintaining team news, member information, and research directions in sections such as News, Team, and Research
  • Display pages for registering non-paper academic output such as software copyrights, invention patents, and team honors

Suitable For

  • Academic labs and research teams with a BibTeX library who want to reduce manual data entry
  • Maintainers of academic portals who need a multilingual interface and on-site search
  • Developers accustomed to managing site content with Markdown and content directories
  • Users planning to deploy a static site to Cloudflare Pages, Vercel, Netlify, or GitHub Pages

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    Requires Node.js v22.12.0 or higher

  2. 2

    For local development, run npm run dev; by default, access http://localhost:4321

  3. 3

    To build, run npm run build; the output directory is dist. The search index is generated at build time, so search functionality depends on the build step

  4. 4

    To import references, place citations.bib in the project root and run npm run import-bibtex

  5. 5

    When deploying to Cloudflare Pages, Vercel, or Netlify, set the build command to npm run build and the output directory to dist

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version in the public repository under the MIT license; the free scope applies to this version of the code and does not mean external services or third-party assets are free.

Must comply with when using

  • Free use, modification, commercial use, and distribution of this version of the code are permitted.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • Demo images, fonts, icons, and other third-party assets must be checked under their respective licenses and cannot be judged solely by the code's MIT license.
  • External services such as domains, hosting, databases, payments, or AI may incur additional charges.
  • The on-site search index is generated at build time, and search functionality depends on running the build step (npm run build); search is unavailable without building.
  • Using this template requires Node.js v22.12.0 or higher installed locally; lower versions cannot run it.
  • Importing references requires first exporting a BibTeX file from external tools such as Zotero, Mendeley, or Google Scholar; the template itself does not provide reference data.
  • Deploying to Cloudflare Pages, Vercel, or Netlify requires connecting a GitHub/GitLab repository and depends on a third-party hosting platform account.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

*Note: The search index is generated at build time. Search functionality requires the build step.*

Original README

### Prerequisites * Node.js v22.12.0 or higher

Original README

1. **Export BibTeX**: Export your bibliography as `citations.bib` from Zotero, Mendeley, or Google Scholar.

Original README

1. Connect your GitHub/GitLab repository.

Original README
https://github.com/fjd2004711/scholar-lite/blob/main/LICENSEhttps://github.com/fjd2004711/scholar-lite/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-05. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
Astro Themes
Documentation and maintenance reference score
More documented · 87 / 100
Technologies
Astro
Website type
Starter
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2026-09-30
Screenshot last checked
2026-10-05

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Astro as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Review declaration: [email protected] · 2026-10-05

Inspect the recorded source material

SHA-256: 06f9866c5bb95f7b4f252e6337f97ef27ffee363354532020152d0263084400e

2026-10-05T03:35:22.911Z

Source file / repository
# 🎓 Scholar-Lite

<div align="center">

![Astro](https://img.shields.io/badge/Astro_v6-BC52EE?style=for-the-badge&logo=astro&logoColor=white)
![TailwindCSS](https://img.shields.io/badge/Tailwind_v4-38B2AC?style=for-the-badge&logo=tailwind-css&logoColor=white)
![TypeScript](https://img.shields.io/badge/TypeScript-5.0-3178C6?style=for-the-badge&logo=typescript&logoColor=white)
![Pagefind](https://img.shields.io/badge/Pagefind-Search-FF0000?style=for-the-badge&logo=algolia&logoColor=white)
![License](https://img.shields.io/badge/License-MIT-green.svg?style=for-the-badge)

**[English](./README.md) | [简体中文](./README.zh-CN.md)**

> ## **⚡ Create your site in 30 seconds**
> ```bash
> npm create astro@latest -- --template fjd2004711/scholar-lite
> ```

<p align="center">
  <a href="https://app.netlify.com/start/deploy?repository=https://github.com/fjd2004711/scholar-lite" target="_blank">
    <img src="https://www.netlify.com/img/deploy/button.svg" alt="Deploy to Netlify">
  </a>
  <a href="https://vercel.com/new/clone?repository-url=https://github.com/fjd2004711/scholar-lite" target="_blank">
    <img src="https://vercel.com/button" alt="Deploy with Vercel">
  </a>
</p>

**The Next-Generation Static Website Template for Academic Labs & Scholars.**
*Blazing fast, zero-config BibTeX import, and multilingual search engine built-in.*

---

## 🚀 Quick Start (No Coding Required)

1.  **Click** the `Deploy to Netlify` or `Deploy with Vercel` button above.
2.  **Wait** for the deployment to finish.
3.  **Go to** your new GitHub repository and find `citations.bib`.
4.  **Upload** your own BibTeX file to replace it.
5.  **Done!** Your website updates automatically in 1 minute.

---

<div align="center" style="margin-top: 20px;">
  <table>
    <tr>
      <td align="center">
        <a href="https://scholar-lite-demo.netlify.app/" target="_blank">
          <img src="https://img.shields.io/badge/Live_Demo-Netlify-00C7B7?style=for-the-badge&logo=netlify&logoColor=white" alt="Live Demo" />
        </a>
        <br />
        <strong>Live Preview</strong>
      </td>
      <td align="center">
        <a href="https://github.com/fjd2004711/scholar-lite" target="_blank">
          <img src="https://img.shields.io/badge/Source_Code-GitHub-181717?style=for-the-badge&logo=github&logoColor=white" alt="Source Code" />
        </a>
        <br />
        <strong>Repository</strong>
      </td>
    </tr>
  </table>
</div>

<div align="center">
  <img src="public/assets/screenshots/home-desktop-mockup.png" width="70%" alt="Desktop View" />
  <img src="public/assets/screenshots/mobile-view-mockup.png" width="25%" alt="Mobile View" />
</div>

</div>

---

## 🚀 Why Scholar-Lite?

### ⚡ Unmatched Performance
*   **Zero JS by Default**: Built on **Astro v6**, sending **0kb** of JavaScript to the client for content pages.
*   **100/100 Lighthouse**: Optimized out-of-the-box for Performance, Accessibility, Best Practices, and SEO.
*   **Tailwind CSS v4**: The latest utility-first CSS framework for rapid, modern styling.

<p align="center">
  <img src="public/assets/screenshots/lighthouse-score.png" width="80%" alt="Lighthouse Score">
</p>

### 🤖 Smart Automation
*   **One-Click BibTeX Import**: Stop manually copying papers. Drop your `citations.bib` and run one command.
*   **Intelligent Parsing**: Automatically extracts **PDF links**, **Code repositories**, **Project Websites**, **Videos**, and **Cover images**.
*   **Asset Management**: Smart fallback system for missing publication covers.
*   **Auto-Badging**: Automatically highlights "Best Paper", "Oral", or "Spotlight" awards based on BibTeX notes.

### 🌍 Global Reach
*   **Multilingual Search**: Built-in **Pagefind** search engine supporting **8 languages** (English, Chinese, Japanese, Korean, French, German, Spanish, Russian).
*   **i18n Ready**: Native support for internationalization with type-safe translations.

---

## 🆚 Comparison: Scholar-Lite vs. Hugo Academic

| Feature | 🎓 Scholar-Lite | 🐢 Hugo Academic (Wowchemy) |
| :--- | :--- | :--- |
| **Tech Stack** | **Astro v6 + React + Tailwind v4** (Modern & Mainstream) | Hugo + Go Templates (Steep learning curve) |
| **Performance** | **100/100 Lighthouse** (Zero JS by default) | Good, but often bloated with heavy JS |
| **BibTeX Import** | **Zero-Config** (Drag & drop `citations.bib`) | Complex Python scripts / Manual entry |
| **Customization** | **Component-based** (Edit `.astro` / `.tsx` files directly) | Rigid Theme (Overriding internal templates is hard) |
| **Multilingual** | **Native i18n + Pagefind** (Search in 8 languages) | Partial support, search often breaks |
| **Dev Experience** | **Hot Reload (HMR)** in milliseconds | Slower rebuilds on large sites |
| **Ecosystem** | **NPM / Node.js** (Access to millions of packages) | Go Modules (Limited web-focused packages) |

---

## 🛠️ Quick Start

### Prerequisites
*   Node.js v22.12.0 or higher

### 1. Installation
```bash
git clone https://github.com/your-repo/scholar-lite.git
cd scholar-lite
npm install
```

### 2. Development
Start the local server with hot module replacement:
```bash
npm run dev
```
Visit `http://localhost:4321`.

### 3. Production Build
Generate the static site and search index:
```bash
npm run build
```
*Note: The search index is generated at build time. Search functionality requires the build step.*

---

## 📚 Smart Publication & Book Management

Scholar-Lite features a powerful **BibTeX Import Engine** located in `scripts/import-bibtex.js`, supporting both **Papers** and **Books**.

### How to Import
1.  **Export BibTeX**: Export your bibliography as `citations.bib` from Zotero, Mendeley, or Google Scholar.
2.  **Place File**: Save `citations.bib` in the project root.
3.  **Run Import**:
    ```bash
    npm run import-bibtex
    ```
4.  **Auto-Classification**: The system automatically classifies entries based on BibTeX type:
    *   `@article`, `@inproceedings`, etc. -> Imported to **Publications** (`src/content/publications`)
    *   `@book` -> Imported to **Books** (`src/content/books`)

### Advanced BibTeX Features

The importer maps BibTeX fields to website elements intelligently:

| BibTeX Field | Website Element | Smart Behavior |
|--------------|-----------------|----------------|
| `cover`/`image` | Cover Image | Auto-detects local images in `src/assets/`. **Highly recommended for books**. |
| `publisher` | Publisher | For books, `publisher` is automatically displayed as the venue. |
| `pdf`/`url`/`file` | PDF Button | Cleans Zotero path formats (e.g., `files/mypaper.pdf`). |
| `code`/`github` | Code Button | Generates a GitHub/Code link button. |
| `website`/`project` | **Project Page** | Generates a Globe icon link to the project homepage. |
| `demo` | **Live Demo** | Generates a "Demo" button (Web App / HuggingFace / Video). |
| `video`/`recording` | **Video** | Generates a Video link button. |
| `slides`/`ppt` | **Slides** | Generates a Slides download button. |
| `award`/`note` | **Badges** | Auto-generates Gold/Blue/Red badges for "Best Paper", "Oral", etc. |

### BibTeX Entry Examples

#### 1. Paper
```bibtex
@article{gpt4,
  title={GPT-4 Technical Report},
  author={OpenAI},
  year={2024},
  journal={ArXiv},
  url={https://arxiv.org/pdf/2303.08774.pdf},
  code={https://github.com/openai/evals},
  cover={../../assets/gpt4-cover.jpg},
  note={Tech Report}
}
```

#### 2. Book
Simply set the entry type to `@book`, and the system will automatically place it in the "Books" section.
```bibtex
@book{deeplearning,
  title={Deep Learning},
  author={Goodfellow, Ian and Bengio, Yoshua and Courville, Aaron},
  publisher={MIT Press},
  year={2016},
  url={http://www.deeplearningbook.org},
  cover={../../assets/book-deep-learning.jpg}
}
```

---

## 🌟 Best Practices

### 📁 Directory Structure
*   **Images**: Store website assets in `src/assets/images/`. Use `.webp` or optimized `.jpg` for better performance.
*   **Team Photos**: Place headshots in `src/assets/team/`. Square aspect ratio (1:1) is recommended.
*   **Content**: All editable content (News, Team, Research info) lives in `src/content/`.

### 📝 Content Management
*   **News**: Add new Markdown files in `src/content/news/`. The filename doesn't matter, but sorting is based on the `date` field.
*   **Team**: Add members in `src/content/team/`. Use `weight` to control display order (lower numbers appear first).
*   **Research Fields**: Add Markdown files in `src/content/research/`. Use `order` field to control display order.
*   **Translations**: Edit `src/i18n/ui.ts` to modify UI text (e.g., navigation menu, buttons) for all supported languages.

### 🎓 More Academic Achievements
Beyond papers and books, the system supports managing other academic achievements. Simply create Markdown files in the corresponding folders.

#### 1. Software Copyrights
*   **Location**: `src/content/softwares/`
*   **Example**:
    ```markdown
    ---
    title: "Intelligent Image Processing System V1.0"
    developers: ["John Doe", "Jane Smith"]
    number: "2023SR123456"
    date: 2023-06-15
    description: "An automated image processing platform based on deep learning."
    ---
    ```

#### 2. Invention Patents
*   **Location**: `src/content/patents/`
*   **Example**:
    ```markdown
    ---
    title: "A Method for Image Recognition Based on Attention Mechanism"
    inventors: ["John Doe", "Bob Johnson"]
    number: "CN102345678B"
    date: 2024-01-20
    status: "Granted" # Options: Granted, Pending, Filed
    ---
    ```

#### 3. Group Honors
*   **Location**: `src/content/honors/`
*   **Example**:
    ```markdown
    ---
    title: "18th Challenge Cup National College Student Extracurricular Academic Science and Technology Works Competition"
    award: "Grand Prize"
    date: 2023-10-30
    year: "2023"
    type: "Challenge Cup"  # Options: Challenge Cup, Internet+, Other
    level: "Special"       # Options: Special, First, Second, Third
    ---
    ```


### 🖼️ Image Optimization
Scholar-Lite automatically optimizes images imported from `src/assets/`.
*   **Avoid**: Putting large images in `public/`.
*   **Prefer**: Importing images in Markdown or Astro components to leverage automatic compression and lazy loading.

---

## 🚢 Deployment

Scholar-Lite is a static site that can be deployed anywhere.

### Recommended Platforms

| Platform | Global Speed | Ease of Use | Cost |
|----------|--------------|-------------|------|
| **Cloudflare Pages** | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | Free |
| **Vercel** | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | Free |
| **Netlify** | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | Free |
| **GitHub Pages** | ⭐⭐⭐ | ⭐⭐⭐⭐ | Free |

### Cloudflare Pages / Vercel / Netlify
1.  Connect your GitHub/GitLab repository.
2.  **Build Command**: `npm run build`
3.  **Output Directory**: `dist`
4.  Deploy!

### GitHub Pages / GitLab Pages
This template includes CI/CD configurations (`.github/workflows` and `.gitlab-ci.yml`) to automatically build and deploy to GitHub/GitLab Pages on push.

---

<div align="center">

**[Scholar-Lite Team](https://github.com/fjd2004711)**
<br>
*Empowering academic research with modern web technology.*

</div>
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.