Getting Started
Quick Start Guide
Get NeedFont running and upload your first fonts in under 5 minutes.
Prerequisites
Before you begin, make sure you have the following:
- Node.js 18 or later
- A PostgreSQL database (or Supabase account)
- A Supabase project for file storage
- An OpenAI API key for AI-powered metadata
Installation
1. Clone and install
# Clone the repository
git clone https://github.com/yourusername/needfont.git
cd needfont
# Install dependencies
npm install2. Configure environment
Copy the example environment file and fill in your credentials:
cp .env.example .envRequired environment variables:
| Variable | Description |
|---|---|
| DATABASE_URL | PostgreSQL connection string |
| NEXTAUTH_SECRET | Secret for session encryption |
| NEXT_PUBLIC_SUPABASE_URL | Your Supabase project URL |
| SUPABASE_SERVICE_ROLE_KEY | Supabase service role key |
| OPENAI_API_KEY | OpenAI API key for AI metadata |
| ENCRYPTION_KEY | Key for encrypting font files |
Tip: Generate secure keys with: openssl rand -base64 32
3. Initialize the database
npm run db:pushYour First Upload
Once you're signed up and logged in, you can start building your font library.
1. Upload fonts
Drag and drop font files (OTF, TTF, WOFF, WOFF2) or entire folders onto the dashboard.
2. AI metadata
NeedFont automatically extracts and enhances metadata using AI, organizing fonts into families.
3. Serve or download
Use the API to serve fonts on your websites, or download them for local use.
Supported Formats
NeedFont supports all modern font formats:
Desktop fonts
- • OpenType (.otf)
- • TrueType (.ttf)
- • TrueType Collections (.ttc)
- • OpenType Collections (.otc)
Web fonts
- • WOFF (.woff)
- • WOFF2 (.woff2)
- • Variable fonts (all formats)
Learn more about font formats in our Font Formats guide.