Skip to content

sgandhi15/nextresume-public

Repository files navigation

NextResume

NextResume is a modern, AI-powered resume builder application that helps users create, customize, and tailor professional resumes for specific job applications.

About The Project

NextResume empowers job seekers to create polished, professional resumes with ease. Using advanced AI technology, the application can structure raw resume content, tailor resumes for specific job descriptions, and generate high-quality PDF documents ready for submission.

Key Features

  • User Authentication: Secure Google OAuth integration with PKCE for user management
  • Structured Resume Creation: Convert unstructured resume text into a properly formatted resume
  • AI-Powered Tailoring: Customize your resume for specific job descriptions using advanced AI
  • PDF Export: Generate professional-looking PDF resumes with proper formatting
  • Resume Management: Save and organize multiple versions of your resume
  • Modern UI: Clean, responsive interface built with React and Tailwind CSS

Tech Stack

  • Frontend: React with TypeScript, Tailwind CSS, and Shadcn UI components
  • Backend: Serverless functions with Hono.js and AWS Lambda
  • Authentication: Google OAuth implementation with JWT tokens
  • Database: PostgreSQL with Drizzle ORM
  • Infrastructure: SST (Serverless Stack) for AWS deployment
  • PDF Generation: Puppeteer and Chromium
  • Development: Bun for package management and TypeScript for type safety

Architecture

NextResume follows a modern serverless architecture:

  • Monorepo Structure: Organized into packages for core, functions, and frontend
  • API-First Design: RESTful API endpoints with proper validation using Zod
  • Database Abstraction: Type-safe database queries with Drizzle ORM
  • Serverless Deployment: Deployed to AWS using SST for infrastructure as code
  • Secret Management: Environment variables and SST secrets for sensitive data

Getting Started

Prerequisites

  • Node.js 18+
  • PostgreSQL database
  • Google OAuth credentials
  • AI API key (for resume tailoring)

Installation

  1. Clone the repository
git clone https://github.com/yourusername/nextresume.git
cd nextresume
  1. Install dependencies
npm install
  1. Set up environment variables (see Environment Variables section)

  2. Start the development server

npm run dev

Environment Variables

Create .env files in respective package directories:

Frontend (packages/www)

VITE_API_URL=your-api-url
VITE_AUTH_URL=your-auth-url
VITE_GOOGLE_CLIENT_ID=your-google-client-id

Backend (packages/functions)

AUTH_URL=your-auth-url
GOOGLE_CLIENT_ID=your-google-client-id
GOOGLE_CLIENT_SECRET=your-google-client-secret
DB_HOST=your-db-host
DB_PORT=5432
DB_NAME=your-db-name
DB_USER=your-db-user
DB_PASSWORD=your-db-password
AI_KEY=your-ai-key

Development

Development workflow uses Bun and SST:

# Development with hot reload
npm run dev

# Build for production
npm run build

# Deploy to AWS
npm run deploy

About

No description, website, or topics provided.

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors