Skip to content

nicocodeevo-ux/interview_agent

Repository files navigation

Interview Agent

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.

✨ Features

  • 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.

🎯 Technology Stack

This application is built with a modern and efficient technology stack:

Core Framework

  • 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.

UI Components & Styling

  • 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.

Forms & Validation

  • React Hook Form: Performant forms with easy validation.
  • Zod: TypeScript-first schema validation.

State Management & Data Fetching

  • Zustand: Simple, scalable state management.
  • TanStack Query: Powerful data synchronization for React.
  • Axios: Promise-based HTTP client for API requests.

Database & Backend

  • Prisma: Next-generation Node.js and TypeScript ORM.
  • NextAuth.js: Complete open-source authentication solution.

Advanced UI Features

  • 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.

Internationalization & Utilities

  • Next Intl: Internationalization library for Next.js.
  • Date-fns: Modern JavaScript date utility library.
  • ReactUse: Collection of essential React hooks for modern development.

🚀 Quick Start

To get your development environment up and running:

  1. Clone the repository:

    git clone https://github.com/nicocodeevo-ux/interview_agent.git
    cd interview_agent
  2. Install dependencies:

    npm install
  3. Set up environment variables: Create a .env.local file in the root of your project and add necessary environment variables (e.g., database connection strings, API keys).

  4. Database Setup (with Prisma):

    npx prisma migrate dev --name init
    npx prisma db seed # If you have seed data
  5. Start the development server:

    npm run dev

    Open http://localhost:3000 in your browser to see the application.

📁 Project Structure

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)

🤝 Contributing

Contributions are welcome! Please follow these steps to contribute:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/your-feature-name).
  3. Make your changes.
  4. Commit your changes (git commit -m 'Add new feature').
  5. Push to the branch (git push origin feature/your-feature-name).
  6. Open a Pull Request.

📝 License

This project is licensed under the MIT License. See the LICENSE file for details.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published