https://github.com/jacceycode/job-board
A platform for job vacancies.
https://github.com/jacceycode/job-board
neondb nextauth nextjs prisma typescript
Last synced: 6 months ago
JSON representation
A platform for job vacancies.
- Host: GitHub
- URL: https://github.com/jacceycode/job-board
- Owner: JacceyCode
- Created: 2025-08-22T12:50:33.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2025-08-22T14:53:19.000Z (7 months ago)
- Last Synced: 2025-08-30T22:02:36.247Z (7 months ago)
- Topics: neondb, nextauth, nextjs, prisma, typescript
- Language: TypeScript
- Homepage: https://job-application-board.vercel.app
- Size: 1.02 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
---
# Build a Job Board App with Next.js & Prisma
## 📋 Table of Contents
1. [Introduction](#-introduction)
2. [Tech Stack](#-tech-stack)
3. [Features](#-features)
4. [Quick Start](#-quick-start)
5. [Screenshots](#-screenshots)
6. [Deployment](#-deployment)
---
## 🚀 Introduction
In this tutorial, you'll learn how to build a modern **Job Board App** using **Next.js**, **Prisma**, **PostgreSQL**, and **TailwindCSS**. You'll cover **real-world database relations, complex queries, and a complete CRUD workflow**, and implement **dynamic search filters** and **user applications**.
🎥 Watch the full tutorial: [YouTube](https://youtu.be/YOUR_VIDEO_ID)
---
## ⚙️ Tech Stack
* **Next.js 15** – For building the React fullstack app with server components
* **Prisma** – For database ORM and relations
* **PostgreSQL** – As the relational database
* **TailwindCSS** – For styling with utility-first CSS
* **React Hooks** – For managing client-side state & interactivity
* **TypeScript** – Type safety and tooling
* **NextAuth** or custom session handling – For user authentication (depending on your implementation)
---
## ⚡️ Features
* 📝 **Post Job Offers**
Authenticated users can post new job offers with title, description, type, and location.
* 🔍 **Advanced Search**
Filter jobs by **keyword**, **type** (Full-time, Part-time, Contract), and **location** — all with Prisma query filters.
* 👤 **User Dashboard**
Users can view their posted jobs and see how many applicants each job has received.
* ✅ **Job Applications**
Users can apply for any job. The dashboard lists all applications with statuses.
* 🔄 **Dynamic Routes & Pages**
Each job has its own dynamic detail page with full information and "Apply" button.
* 🔐 **Authentication & Authorization**
Users must be signed in to post jobs or apply for them.
---
## 👌 Quick Start
### Prerequisites
* [Node.js](https://nodejs.org/)
* [PostgreSQL Database](https://www.postgresql.org/)
* [Prisma CLI](https://www.prisma.io/docs/getting-started)
* [Next.js](https://nextjs.org/)
### Clone and Run
```bash
git clone https://github.com/yourusername/job-board-next-prisma.git
cd job-board-next-prisma
npm install
# Configure your database in .env
npx prisma generate
npx prisma migrate dev
npm run dev
```
Your app will be available at: [http://localhost:3000](http://localhost:3000)
---
## 🖼️ Screenshots

---
## ☁️ Deployment
### Deploy on Vercel
1. Push your code to GitHub
2. Go to [Vercel](https://vercel.com/)
3. Import your repository
4. Set up your database connection in Vercel Environment Variables
5. Click **Deploy**
Your live app will be hosted on a custom subdomain (e.g. `https://your-job-board.vercel.app`)
---
## 🔗 Useful Links
* [Next.js Documentation](https://nextjs.org/docs)
* [Prisma Documentation](https://www.prisma.io/docs)
* [PostgreSQL Docs](https://www.postgresql.org/docs/)
* [Tailwind CSS Docs](https://tailwindcss.com/)
* [Vercel](https://vercel.com/)
---