Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/michaelclemens/resume-builder-app
A resume builder app for creating, managing, storing, customising, printing and downloading resumes
https://github.com/michaelclemens/resume-builder-app
eslint github-actions jest nextjs15 postgresql prettier prisma-orm puppeteer react-testing-library react18 redux-toolkit resume resume-builder resume-templates tailwindcss typescript
Last synced: 2 months ago
JSON representation
A resume builder app for creating, managing, storing, customising, printing and downloading resumes
- Host: GitHub
- URL: https://github.com/michaelclemens/resume-builder-app
- Owner: michaelclemens
- License: mit
- Created: 2024-06-25T14:10:03.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-11-18T11:11:01.000Z (2 months ago)
- Last Synced: 2024-11-18T11:51:48.730Z (2 months ago)
- Topics: eslint, github-actions, jest, nextjs15, postgresql, prettier, prisma-orm, puppeteer, react-testing-library, react18, redux-toolkit, resume, resume-builder, resume-templates, tailwindcss, typescript
- Language: TypeScript
- Homepage:
- Size: 4.89 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Resume Builder App 📝 ![GitHub CI](https://github.com/michaelclemens/resume-builder-app/actions/workflows/ci.yml/badge.svg)
![example](https://github.com/user-attachments/assets/214dd70d-c5a3-4564-9277-7f35562a4095)
## Overview
### Stack
- ⚡️ [Next.js 15 with App Router](https://nextjs.org/docs)
- ⚛️ [React 18](https://18.react.dev/)
- ✨ [TypeScript](https://www.typescriptlang.org/docs/)
- 💨 [Tailwind CSS 3](https://tailwindcss.com/docs)
- 🛠 [Redux](https://redux.js.org/)
- 🌈 [Prisma ORM](https://www.prisma.io/docs/orm)
- 🐘 [PostgreSQL 16](https://www.postgresql.org/docs/16/index.html)
- 🎭 [Puppeteer](https://pptr.dev/)
- 🃏 [Jest](https://jestjs.io/docs) + [React Testing Library](https://testing-library.com/docs/react-testing-library/intro/)
- 📏 [ESLint](https://eslint.org/docs)
- 💖 [Prettier](https://prettier.io/docs/en/)
- 👷 [GitHub Actions](https://docs.github.com/en/actions)### Features
- Create & manage multiple resumes
- Choose from multiple templates
- Customisable colour elements
- Print preview
- Download PDF
- ☀️ Light / ⏾ Dark themes## Getting started 🚀
### 1. Download and install dependencies
Clone this repository:
```
git clone [email protected]:michaelclemens/resume-builder-app.git
```Install npm dependencies:
```
cd resume-builder-app
npm ci
```### 2. Create and seed the database
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`](./prisma/seed.ts) will be executed and your database will be populated with a sample resume.### 3. Configuring your environment
```
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/`](chrome://version/) in a Chrome browser and copy the `Executable Path` value### 4. Start the app
```
npm run dev
```The app is now running, navigate to [`http://localhost:3000/`](http://localhost:3000/) in your browser to explore its UI.