๐ Live Application: https://applyflowai.vercel.app
A modern, full-stack job application tracker and career management platform with live BDJobs discovery.
ApplyFlow streamlines your entire job hunt โ from discovering active listings and saving opportunities to tracking application pipelines, scheduling multi-round interviews, and monitoring your response metrics.
Search live job openings across Bangladesh with smart filters for Category, Experience (Entry Level), Location, Workplace, and Salary.
Click any discovered job card to review detailed responsibilities, educational requirements, deadlines, compensation, and experience criteria directly from BDJobs.
Monitor your total application volume, interview conversion rates, active offers, and recently tracked opportunities at a glance.
Drag and drop applications across customizable recruitment stages: Saved, Applied, Interviewing, Offer, and Rejected.
Track upcoming phone screenings, technical rounds, and behavioral conversations with automated header notification alerts.
ApplyFlow is engineered as a mobile-first responsive web application featuring an ergonomic bottom navigation bar with the Discover tab prominently positioned as the 3rd icon, touch-optimized cards, and native-feeling slide-over modals.
| Mobile Job Discovery (3rd Tab) | Mobile Job Details Modal |
|---|---|
![]() |
![]() |
| Mobile Overview & Metrics | Mobile Interview Schedule |
|---|---|
![]() |
![]() |
- ๐ Live Job Discovery: Direct integration with BDJobs public search API (
api.bdjobs.com), complete with real-time in-memory filtering (Entry Level intern roles, locations, employment types, disclosed salaries). - ๐ท๏ธ Clean Card Presentation: Transparent salary displays (
Tk. --placeholder for undisclosed salaries, no erroneous currency prefixes) and clean metadata tags. - ๐ Detailed Job Modal: View full employer information, job responsibilities, candidate requirements, and direct application links without leaving ApplyFlow.
- ๐ Instant Saving & Duplicate Prevention: Save opportunities to your tracker in one click with built-in deduplication guards.
- ๐ Dynamic Dashboard Metrics: Calculate authentic application totals, response rates, and interview pipeline stages without hardcoded or fabricated numbers.
- ๐ Interview Scheduler & Notifications: Organize interview schedules, dates, and interviewers with an active header notification bell.
- ๐ Dual-Mode Persistence:
- Guest Mode: Zero-friction local experimentation backed by versioned
localStorage. - Cloud Mode: Seamless Neon PostgreSQL cloud synchronization with user data isolation.
- Guest Mode: Zero-friction local experimentation backed by versioned
- ๐ก๏ธ Production Security: Authenticated sessions using secure
HttpOnly; SameSite=Laxcookies, eliminating cross-site cookie blocking across Safari, iOS, and Chrome.
| Domain | Technology | Purpose |
|---|---|---|
| Frontend | React 19 + TypeScript | High-performance reactive UI with component modularity |
| Styling | Tailwind CSS v4 + Radix UI | Modern design system, accessible primitives, sleek glassmorphism |
| Icons | Lucide React | Consistent iconography across sidebar, cards, and mobile bottom bar |
| Notifications | Sonner | Fluid, non-blocking toast notifications |
| Backend | Express + TypeScript | Lightweight REST API routing with structured error handling |
| Database | Neon PostgreSQL + Prisma ORM | Serverless PostgreSQL with connection pooling and schema migrations |
| Job Search | BDJobs Search & Details API | Live provider querying with resilient timeouts and caching |
| Authentication | Google Identity Services + Password Auth | Dual-provider auth with encrypted session cookies |
| Deployment | Vercel (Hobby Tier) | Serverless single-origin full-stack deployment |
- Node.js:
v20.xor higher (tested on Nodev24.x) - npm:
v10.xor higher - PostgreSQL: Local instance or free Neon serverless database
git clone https://github.com/your-username/applyflow.git
cd applyflow# Install root dependencies npm install # Install server dependencies npm --prefix server install
Copy the example environment files:
cp .env.example .env.local
Configure your .env.local file:
# Database (Neon Serverless PostgreSQL) DATABASE_URL="postgresql://<user>:<password>@<ep-pooler>.us-east-1.aws.neon.tech/neondb?sslmode=require&pgbouncer=true" # Authentication & Runtime NODE_ENV="development" ENABLE_DEMO_AUTH="true" SESSION_SECRET="your-development-session-secret" # Optional: Google OAuth 2.0 (GIS) VITE_GOOGLE_CLIENT_ID="" GOOGLE_CLIENT_ID="" # Optional: Email Service for Password Reset (Resend) RESEND_API_KEY="" EMAIL_FROM="ApplyFlow <[email protected]>"
# Apply Prisma schema migrations
npm run prisma:deployStart both frontend and backend development servers concurrently:
# Terminal 1: Vite Frontend Dev Server (http://localhost:5173) npm run dev # Terminal 2: Express Backend Server (http://localhost:5000) npm run server:dev
Open http://localhost:5173 in your browser.
ApplyFlow maintains a test suite covering backend API endpoints, storage recovery, database isolation, metric calculations, and BDJobs provider integrations:
# Run all automated unit and integration tests (138 tests) npm test -- --run # Run ESLint validation npm run lint # Run TypeScript typechecks npm run server:typecheck npx tsc -b # Run full production build npm run build
For detailed, step-by-step instructions on deploying ApplyFlow to Vercel with a free-tier Neon PostgreSQL database, refer to the Production Deployment Guide.
This project is open-source and available under the MIT License.








