Installation Guide
This comprehensive guide covers everything you need to install and configure CV Builder for development or production use.Prerequisites
Before you begin, ensure your development environment meets these requirements:Required
Node.js
Package Manager
pnpm (recommended), npm, or yarnCheck if installed:Install pnpm:
Optional
Firebase Project
Required for cloud sync, authentication, and version control features.Create at console.firebase.google.com
Git
For version control and cloning the repository.Download from git-scm.com
System Requirements
| Component | Minimum | Recommended |
|---|---|---|
| Node.js | 18.17.x | 20.x or later |
| RAM | 4 GB | 8 GB or more |
| Disk Space | 500 MB | 1 GB |
| OS | Windows 10, macOS 10.15, Ubuntu 20.04 | Latest versions |
Installation Steps
Clone the Repository
Get the source code from GitHub:Alternative: Download ZIPIf you don’t have Git installed:
- Visit github.com/tariqahmaad/CV-Builder
- Click Code → Download ZIP
- Extract the archive
- Navigate to the extracted folder in your terminal
The repository uses the main branch by default. No need to checkout specific branches for stable releases.
Install Dependencies
Install all required npm packages:This command installs dependencies from What gets installed:
package.json:package.json (excerpt)
- Core Framework: Next.js 16.1.6 with React 19.2.3
- Backend: Firebase 12.8.0 for auth and database
- Forms: React Hook Form + Zod validation
- PDF: @react-pdf/renderer for exports
- Styling: Tailwind CSS 4.x
- AI: Google Generative AI for assistance
- Animations: Framer Motion
- Icons: Lucide React
Configure Environment Variables (Optional)
To enable Firebase features, create a Add your Firebase configuration:Where to find these values:
.env.local file:.env.local
- Go to Firebase Console
- Select or create your project
- Click the gear icon → Project settings
- Scroll to Your apps section
- Click the web app icon (
</>) or create a new web app - Copy the config values from the
firebaseConfigobject
lib/firebase.ts:lib/firebase.ts
Without Firebase configuration, the app runs in Guest Mode only. All features work except authentication and cloud sync.
Set Up Firebase (Optional)
If you’re using Firebase, configure the required services:
Authentication Setup
- In Firebase Console, go to Build → Authentication
- Click Get started
- Enable Email/Password sign-in method
- (Optional) Enable Password reset emails
Firestore Database Setup
- Go to Build → Firestore Database
- Click Create database
- Select Start in production mode
- Choose your preferred location (select closest to your users)
- Click Enable
firestore.rules
Storage Setup (for profile images)
- Go to Build → Storage
- Click Get started
- Start in production mode
- Click Done
storage.rules
Start Development Server
Launch the Next.js development server:Expected output:Available Scripts:
package.json (scripts)
| Command | Description |
|---|---|
pnpm dev | Start development server with hot reload |
pnpm build | Create production build |
pnpm start | Start production server (after build) |
pnpm lint | Run ESLint to check code quality |
Verify Installation
Test that everything works:
- Basic Features
- Firebase Features
- Template System
- Navigate to http://localhost:3000
- Click “Start Building”
- Fill in the personal information form
- Verify the preview updates in real-time
- Try exporting a PDF
Directory Structure
After installation, your project structure should look like this:The
.next/ and node_modules/ directories are automatically generated and should never be committed to version control.Configuration Files
next.config.ts
Next.js configuration with React Compiler enabled:next.config.ts
tsconfig.json
TypeScript configuration for strict type checking:tsconfig.json (excerpt)
The
@/* path alias allows you to import from project root, e.g., import { CVData } from '@/lib/types'Troubleshooting
Error: Node version too old
Error: Node version too old
Problem:Solution:Upgrade Node.js to version 18.17 or later:Verify the version:
- Download from nodejs.org
- Or use a version manager like nvm:
Error: pnpm not found
Error: pnpm not found
Problem:Solution:Install pnpm globally:Or use npm/yarn instead:
Error: Port 3000 already in use
Error: Port 3000 already in use
Problem:Solution:Either kill the process using port 3000:Or run on a different port:
Error: Firebase configuration missing
Error: Firebase configuration missing
Problem:Sign-in button doesn’t work, or you see Firebase errors in console.Solution:
- Ensure
.env.localexists with all Firebase variables - Restart the dev server after creating/modifying
.env.local - Verify all 7 environment variables are set (not empty strings)
- Check for typos in variable names (must be exactly as shown)
Remember: Changes to
.env.local require a server restart to take effect.Error: Module not found during build
Error: Module not found during build
Problem:Solution:
- Delete
node_modulesand lock file:
- Clear Next.js cache:
- Reinstall dependencies:
- Restart dev server:
PDF export not working
PDF export not working
Problem:PDF export button doesn’t download a file, or shows an error.Solution:
- Check browser console for errors
- Ensure
@react-pdf/rendereris installed:
- If missing, reinstall:
- Clear browser cache and try again
- Try in an incognito/private window to rule out extensions
Firestore permission denied
Firestore permission denied
Problem:Solution:
- Check Firebase Console → Firestore Database → Rules
- Ensure rules allow authenticated users to access their own data
- Verify you’re signed in (check auth state)
- Update security rules if needed (see Step 4 above)
TypeScript errors in IDE
TypeScript errors in IDE
Problem:Red squiggly lines everywhere, or “Cannot find module” errors.Solution:
- Ensure TypeScript is installed:
-
Reload your IDE/editor window:
- VSCode:
Ctrl+Shift+P→ “Reload Window” - WebStorm: File → Invalidate Caches / Restart
- VSCode:
-
Check
tsconfig.jsonexists and is valid - Install missing type definitions:
Production Build
Before deploying, test the production build locally:Create Production Build
- Compiles TypeScript
- Bundles JavaScript/CSS
- Optimizes images and assets
- Generates static pages where possible
Start Production Server
Next Steps
Quickstart
Build your first resume in 5 minutes
Templates
Learn about available templates
API Reference
Explore the CV service API
Contributing
Contribute to the project
Getting Help
If you encounter issues not covered here:- GitHub Issues: github.com/tariqahmaad/CV-Builder/issues
- Discussions: github.com/tariqahmaad/CV-Builder/discussions
- Email: Contact the maintainer via GitHub profile