https://github.com/devadarshh/landr
A full-stack web app built with Next.js, Clerk, ArcJet, Shadcn UI, and AI tools to help users prepare for interviews by generating questions, providing resume analysis, and giving AI-powered interview feedback. Built for speed, scalability, and real-time interactivity.
https://github.com/devadarshh/landr
ai-saas arcjet clerk full-stack interview-preparation job-preparation nextjs rate-limiting resume-analysis saas shadcn-ui tailwindcss typescript webdev
Last synced: 13 days ago
JSON representation
A full-stack web app built with Next.js, Clerk, ArcJet, Shadcn UI, and AI tools to help users prepare for interviews by generating questions, providing resume analysis, and giving AI-powered interview feedback. Built for speed, scalability, and real-time interactivity.
- Host: GitHub
- URL: https://github.com/devadarshh/landr
- Owner: devadarshh
- Created: 2025-09-10T13:58:03.000Z (26 days ago)
- Default Branch: main
- Last Pushed: 2025-09-13T10:27:16.000Z (24 days ago)
- Last Synced: 2025-09-13T12:51:39.753Z (23 days ago)
- Topics: ai-saas, arcjet, clerk, full-stack, interview-preparation, job-preparation, nextjs, rate-limiting, resume-analysis, saas, shadcn-ui, tailwindcss, typescript, webdev
- Language: TypeScript
- Homepage: https://landr-web.vercel.app
- Size: 180 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🚀 Landr – AI Job Prep Platform
Landr is a **full-stack AI-powered job preparation platform** designed to help candidates practice interviews, refine resumes, and receive real-time feedback. By combining **LLMs, emotion AI, and secure infrastructure**, Landr empowers users to become interview-ready with personalized insights.
**🌐 Live Demo:** [Access Landr](https://landr-web.vercel.app/)
**🎬 Project Walkthrough:** [Watch on YouTube](https://youtube.com/your-video-link)---
## ✅ Core Features
- 🤖 **AI-Powered Interview Practice** – Role-specific interview questions generated via Gemini API.
- 📝 **Resume Feedback** – Automated suggestions to improve clarity, structure, and role alignment.
- 🎤 **Real-Time Emotion & Tone Analysis** – Hume AI tracks delivery across 100+ practice sessions.
- 🔐 **Secure Authentication** – Clerk-based user auth & role management for 500+ user profiles.
- 🛡 **Fraud & Abuse Protection** – Arcjet integration blocking 1,000+ malicious requests.
- 📊 **Progress Tracking** – Monitor performance across multiple mock interviews.
- ⚡ **Scalable & Reliable** – 99.9% uptime with robust API integrations and PostgreSQL persistence.---
## 🛠 Tech Stack
### **Client (Frontend)**
- ⚛️ **Next.js** – React-based framework with server and client rendering
- 🎨 **TailwindCSS, Shadcn UI, Lucide Icons** – Modern and responsive UI components
- 🔔 **Sonner** – In-app notifications
- 📡 **Axios** – API requests and data fetching### **Server (Backend)**
- ⚡ **Express.js** – Lightweight Node.js backend framework
- 🗄 **PostgreSQL + Prisma ORM** – Relational database with schema management
- 🛡 **Arcjet** – Security & request protection
- 🔐 **Clerk** – Authentication, authorization, and session management
- 🧠 **Gemini API** – Role-specific interview question generation
- 🎤 **Hume AI** – Emotion and tone analysis for real-time interview feedback---
## Environment Variables
To run this project, you will need to set the following environment variables in your `.env` file:
- `NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY`
- `CLERK_SECRET_KEY`
- `NEXT_PUBLIC_CLERK_SIGN_IN_URL`
- `NEXT_PUBLIC_CLERK_SIGN_IN_FALLBACK_REDIRECT_URL`
- `NEXT_PUBLIC_CLERK_SIGN_UP_FORCE_REDIRECT_URL`
- `CLERK_WEBHOOK_SIGNING_SECRET`
- `ARCJET_KEY`
- `DATABASE_URL`
- `HUME_API_KEY`
- `HUME_SECRET_KEY`
- `NEXT_PUBLIC_HUME_CONFIG_ID`
- `GEMINI_API_KEY`## 🚀 Installation & Running Locally
Follow these steps to set up and run **Landr**:
```bash
# 1. Clone the repository
git clone https://github.com/devadarshh/landr.git# 2. Navigate into the project directory
cd landr# 3. Install dependencies
npm install# 4. Set up environment variables
# Create a .env.local file in the root directory and add the values listed above.# 5. Start the development server
npm run dev```
## 📸 Screenshots
### Landing Page I

### Landing Page II

### Sign In Page

### Job Dashboard

### Job Info Page

### Edit Job Info Page

### Job Interview Page

### Dark Mode Page

## 📄 License
This project is licensed under a **Custom Personal Use License** — you may view and learn from the code, but **commercial use, redistribution, or claiming authorship is strictly prohibited**.
See the full [LICENSE](./LICENSE) for details.