https://github.com/awebcode/next-express-jwt-auth-role-authorization
https://github.com/awebcode/next-express-jwt-auth-role-authorization
Last synced: 10 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/awebcode/next-express-jwt-auth-role-authorization
- Owner: awebcode
- Created: 2024-12-06T14:45:11.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-12-06T15:22:29.000Z (about 1 year ago)
- Last Synced: 2025-02-07T06:15:02.460Z (12 months ago)
- Language: TypeScript
- Size: 283 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Full-Stack Authentication System
A complete authentication system built with **React**, **Next.js**, **Node.js**, and other modern tools, divided into two sections:
- `/client` for the frontend
- `/server` for the backend
This project includes secure authentication, database integration, and modern UI using **ShadCN**, **Tailwind CSS**, **Bun**, **Prisma**, and **PostgreSQL**.
---
## **Features**
### **Client (/client)**
- Built with **React** and **Next.js**
- **ShadCN** components and **Tailwind CSS** for styling
- **TypeScript** for type safety
- JWT-based authentication with API integration
### **Server (/server)**
- **Node.js** with **Express.js** backend
- **Bun** for faster server runtime
- Database integration using **Prisma ORM** and **PostgreSQL**
- Secure routes with role-based access control
- Environment variables managed using `.env`
---
## **Installation Guide**
### **Requirements**
- **Node.js** (LTS)
- **Bun** (for backend runtime)
- **PostgreSQL** (for database)
- **pnpm** or **yarn** (preferred package managers)
---
### **Setup Steps**
#### **1. Clone the Repository**
```bash
git clone https://github.com/awebcode/next-express-jwt-auth-role-authorization.git
cd next-express-jwt-auth-role-authorization
```
client/
├── public/ # Static assets
├── src/
│ ├── components/ # Reusable UI components
│ ├── hooks/ # Custom React hooks
│ ├── pages/ # Next.js pages
│ ├── styles/ # Global styles (Tailwind)
│ └── utils/ # Utility functions
├── .env.local # Environment variables for client
└── tsconfig.json # TypeScript configuration
# License
This project is licensed under the MIT License.