Mono - Minimal Portfolio Template
Thank you for purchasing Mono! This guide will help you set up and customize your new website.
1. Quick Start
Prerequisites
- Node.js (v18 or higher)
- NPM, Yarn, or Pnpm
Installation
- Extract the package files.
- Open your terminal in the project directory.
- Run
npm installto install dependencies. - Run
npm run devto start the development server. - Visit
http://localhost:3000in your browser. - Copy
.env.exampleto.env.localand set your site URL.
2. Environment Variables
Create a .env.local file in the root directory:
NEXT_PUBLIC_SITE_URL=https://your-domain.com
This is used for SEO metadata, sitemaps, and robots.txt.
3. Customization
Central Configuration (The easiest way!)
Almost everything can be customized by editing just one file: lib/site-config.ts.
In this file, you can change:
- Personal Info: Name, role, bio, and email.
- Social Links: GitHub, Twitter, LinkedIn.
- Experience: List your work history.
- Projects: Add your best work with tags and slugs for detail pages.
- Writing (Blog): Manage articles by adding Markdown files to the
content/writingdirectory. Each file should have frontmatter fortitle,date, anddescription. - Research/Articles: Showcase your publications in
siteConfig. - Uses: List your daily tools and equipment in
siteConfig.
Styling
This template uses Tailwind CSS with Next-Themes.
Changing Colors
You can change the entire color scheme by editing the CSS variables in app/globals.css.
background/foreground: Main background and text colors.muted/muted-foreground: Secondary colors.accent/accent-foreground: Highlight colors.
These variables are defined for both :root (Light Mode) and .dark (Dark Mode).
4. Dynamic Pages
Project & Blog Pages
The template automatically generates separate pages for:
-
Projects added to
siteConfig.projects(at/projects/[slug]) -
Blog posts added as Markdown files (at
/writing/[slug]) -
Ensure each item has a unique
slug. -
The page content works with standard Markdown formatting.
5. Contact Form
The contact form is currently set up with a "success" state simulation. To make it functional, we recommend using a service like:
Implementation details can be found in app/components/Contact.tsx.
6. Deployment
Vercel (Recommended)
- Push your code to a GitHub repository.
- Connect your GitHub account to Vercel.
- Create a new project and select your repository.
- Vercel will automatically detect the Next.js settings and deploy.
Build Command
For other platforms, use the following command to generate a static production build:
npm run build
If you have any questions, feel free to reach out via the support email listed on the marketplace.