Skip to content

gloooomed/Abhyas

Abhyas Logo

Abhyas

AI-powered career preparation. Close skill gaps, ace interviews, and get your resume noticed.

Report Bug · Request Feature

Stars Forks License Live Page


What it does

  • Skills Gap Analysis - Tell it your current skills and target role. It maps exactly what you're missing and what to learn first.
  • AI Mock Interviews - Practice with an AI that asks real questions, evaluates your answers, and gives honest feedback.
  • Resume Optimizer - Paste your resume and a job description. Get rewritten copy, stronger keywords, and ATS-ready formatting.

Tech Stack

Category Technology
Frontend React TypeScript
Build Vite
Styling TailwindCSS
Auth & DB Supabase
AI Groq
Animations Framer Motion

Getting Started

git clone https://github.com/gloooomed/Abhyas.git
cd Abhyas
npm install

Create a .env.local file:

VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_key
VITE_GROQ_API_KEY=your_groq_api_key
npm run dev

Project Structure

Abhyas/
├── src/
│   ├── assets/
│   │   └── abhyas-logo.gif        # Animated app logo
│   ├── components/
│   │   ├── ui/                    # Shared shadcn/ui primitives
│   │   ├── LandingPage.tsx        # Marketing / hero page
│   │   ├── Dashboard.tsx          # Post-login home
│   │   ├── SkillsGapAnalysis.tsx  # Skills gap feature
│   │   ├── MockInterview.tsx      # AI interview feature
│   │   ├── ResumeOptimizer.tsx    # Resume rewrite feature
│   │   ├── HistoryPage.tsx        # User history and results
│   │   ├── Navigation.tsx         # Top nav bar
│   │   ├── Logo.tsx               # Logo component (GIF + text)
│   │   ├── SignInPage.tsx         # Custom sign-in page
│   │   ├── AboutUs.tsx            # About page
│   │   ├── TermsPage.tsx          # Terms of Service
│   │   ├── PrivacyPage.tsx        # Privacy Policy
│   │   ├── theme-provider.tsx     # Dark/light mode context
│   │   ├── theme-toggle.tsx       # Theme toggle button
│   │   └── lenis-provider.tsx     # Smooth scroll provider
│   ├── contexts/
│   │   └── AuthContext.tsx        # Supabase Authentication State
│   ├── hooks/
│   │   ├── useRateLimit.ts        # Dedupes identical requests
│   │   └── index.ts               # Hook barrel exports
│   ├── lib/
│   │   ├── ai.ts                  # Groq AI client & prompts
│   │   ├── speech.ts              # Web Speech API wrapper
│   │   ├── cache.ts               # Cache utilities
│   │   ├── supabase.ts            # Supabase client config
│   │   ├── saveGuard.ts           # DB deduplication logic
│   │   └── utils.ts               # Shared helpers (cn, etc.)
│   ├── App.tsx                    # Routes & layout shell
│   ├── main.tsx                   # Entry point + providers
│   └── index.css                  # Global styles & design tokens
├── public/                        # Static assets
├── .env.example                   # Environment variable template
├── index.html                     # Vite HTML entry
├── vite.config.ts
├── tailwind.config.js
└── package.json

Contributing

Please see our Contributing Guide and Code of Conduct for details on how to get involved.

Prerequisites

Make sure you have the following before contributing:

Requirement Version Notes
Node.js v18+ LTS recommended
Git Any recent For version control
Groq API Key - Free tier works fine
Supabase Account - Free plan is sufficient

Set up your local environment using the steps in Getting Started above.

Steps

Contributions are welcome! Here's how to get involved:

  1. Fork the repository
  2. Create a branch for your feature or fix:
    git checkout -b feat/your-feature-name
  3. Make your changes and commit with a clear message:
    git commit -m "feat: add your feature description"
  4. Push to your fork:
    git push origin feat/your-feature-name
  5. Open a Pull Request against main and describe what you changed and why.

Guidelines

  • Keep PRs focused - one feature or fix per PR.
  • Follow the existing code style (TypeScript strict, Tailwind classes, Framer Motion for animations).
  • For larger changes, open an issue first to discuss the approach.

License

MIT with Commons Clause - free for personal and educational use. Commercial use not permitted without permission. See LICENSE for details.


Abhyas (अभ्यास) means "practice" in Sanskrit.

About

AI Interview Prep Platform - Mock interviews, resume optimization & skills analysis

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages