Enju (槐 🌳 in Japanese) — a symbol of knowledge and elegance.
A minimalist, accessible, and beautifully structured academic portfolio template built with Next.js and Tailwind CSS. Designed to showcase your research, projects, and publications with clarity and style.
🚧 Under Construction This project is still in development and not yet ready to be used as a theme or template — even though it currently has no major bugs or performance issues.
If you're interested in updates, click the "Watch" button at the top right, select "Custom" → "Releases" to be notified when it's ready!
.
├── public # Static assets directory
│ └── images # Image resources
├── src # Project source code
│ ├── app # Next.js application directory
│ ├── components # Reusable components
│ │ ├── common # Common components
│ │ │ └── layout # Layout components
│ │ └── ... # Other pages' components
│ ├── hooks # Custom hooks
│ ├── lib # For Metadata and JSON-LD
│ ├── contents # All pages' MDX contents
│ └── types.d.ts # Global type definitions
├── next.config.ts # Next.js config file
├── tsconfig.json # Typescript config file
├── eslint.config.mjs # Eslint configuration
├── package.json # Project dependencies and scripts
└── pnpm-lock.yaml # pnpm dependency lock file
Make sure you have Node.js (>= 20.0.0) installed on your machine. Recommend using LTS version.
Check whether you have pnpm
installed by running:
pnpm --version
If you don't have pnpm
installed, you can install it by running:
npm install --global corepack@latest
corepack enable pnpm
If any error occurs, please refer to the official installation documentation.
Run the following command to install all dependencies (in the root directory):
pnpm install
To start the development server, run:
pnpm dev
And open http://localhost:3000/ in your browser.
To build the production version, run:
pnpm build
And to start the production server, run:
pnpm start
Note: This step is only for developing purpose.
Auto linting on save and commit is already set up. You can also run the following command to lint the code:
pnpm run lint:fix