A robust and modern web application for interview preparation, powered by cutting-edge technologies. This project is designed to assist with various aspects of the interview process, including CV generation, cover letter generation, LinkedIn scraping, salary analysis, and AI assistant functionalities.
- CV Generation: Generate professional CVs.
- Cover Letter Generation: Create tailored cover letters.
- LinkedIn Scraping: Extract information from LinkedIn profiles.
- Salary Analysis: Analyze salary data for informed decisions.
- AI Assistant: Utilize AI-powered assistance for interview preparation.
- Document Import: Import documents for processing and analysis.
- Interview Questions: Generate and practice common interview questions.
This application is built with a modern and efficient technology stack:
- Next.js 15: The React framework for production with App Router.
- TypeScript 5: Type-safe JavaScript for better developer experience.
- Tailwind CSS 4: Utility-first CSS framework for rapid UI development.
- shadcn/ui: High-quality, accessible components built on Radix UI.
- Lucide React: Beautiful & consistent icon library.
- Framer Motion: Production-ready motion library for React.
- Next Themes: For perfect dark mode integration.
- React Hook Form: Performant forms with easy validation.
- Zod: TypeScript-first schema validation.
- Zustand: Simple, scalable state management.
- TanStack Query: Powerful data synchronization for React.
- Axios: Promise-based HTTP client for API requests.
- Prisma: Next-generation Node.js and TypeScript ORM.
- NextAuth.js: Complete open-source authentication solution.
- TanStack Table: Headless UI for building tables and datagrids.
- DND Kit: Modern drag and drop toolkit for React.
- Recharts: Redefined chart library built with React and D3.
- Sharp: High performance image processing.
- Next Intl: Internationalization library for Next.js.
- Date-fns: Modern JavaScript date utility library.
- ReactUse: Collection of essential React hooks for modern development.
To get your development environment up and running:
-
Clone the repository:
git clone https://github.com/nicocodeevo-ux/interview_agent.git cd interview_agent -
Install dependencies:
npm install
-
Set up environment variables: Create a
.env.localfile in the root of your project and add necessary environment variables (e.g., database connection strings, API keys). -
Database Setup (with Prisma):
npx prisma migrate dev --name init npx prisma db seed # If you have seed data -
Start the development server:
npm run dev
Open http://localhost:3000 in your browser to see the application.
src/
├── app/ # Next.js App Router pages and API routes
│ ├── api/ # Backend API routes
│ │ ├── anschreiben/ # API for cover letter generation
│ │ ├── assistant/ # API for AI assistant
│ │ ├── cv/ # API for CV generation
│ │ ├── import/ # API for document import
│ │ ├── interview/ # API for interview questions
│ │ ├── linkedin/ # API for LinkedIn scraping
│ │ ├── profile/ # API for user profiles
│ │ └── salary/ # API for salary analysis
│ ├── globals.css # Global styles
│ ├── layout.tsx # Root layout
│ └── page.tsx # Root page
├── components/ # Reusable React components
│ └── ui/ # shadcn/ui components
├── hooks/ # Custom React hooks
└── lib/ # Utility functions and configurations (e.g., database connection)
Contributions are welcome! Please follow these steps to contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature/your-feature-name). - Make your changes.
- Commit your changes (
git commit -m 'Add new feature'). - Push to the branch (
git push origin feature/your-feature-name). - Open a Pull Request.
This project is licensed under the MIT License. See the LICENSE file for details.