- ⚡️ Next.js 15 with App Router
- ⚛️ React 18
- ✨ TypeScript
- 💨 Tailwind CSS 3
- 🛠 Redux
- 🌈 Prisma ORM
- 🐘 PostgreSQL 16
- 🎭 Puppeteer
- 🃏 Jest + React Testing Library
- 📏 ESLint
- 💖 Prettier
- 👷 GitHub Actions
- Create & manage multiple resumes
- Choose from multiple templates
- Customisable colour elements
- Print preview
- Download PDF
- ☀️ Light / ⏾ Dark themes
Clone this repository:
git clone git@github.com:michaelclemens/resume-builder-app.git
Install npm dependencies:
cd resume-builder-app
npm ci
If you're using Docker on your computer, the following script will set up a PostgreSQL database using the docker-compose.yml
file at the root of
your project:
npm run db:up
Run the following command to create your PostgreSQL database:
npx prisma migrate dev --name init
When npx prisma migrate dev
is executed against a newly created database, seeding is also triggered. The seed file in
prisma/seed.ts
will be executed and your database will be populated with a sample resume.
cp .env.example .env
Ensure these variables are correct. The CHROME_EXECUTABLE_PATH
is used by Puppeteer when downloading a PDF of the resume. To find this locally go to
chrome://version/
in a Chrome browser and copy the Executable Path
value
npm run dev
The app is now running, navigate to http://localhost:3000/
in your browser to explore its UI.