Skip to content

Jain-Pranjal/Oration-chatbot

Repository files navigation

🤖 Oration - AI Career Counselor ChatBot

Oration Logo

An intelligent AI-powered career counseling platform that provides personalized guidance, resume reviews, and career advice through interactive conversations.

Next.js TypeScript Tailwind CSS PostgreSQL License

Live DemoContributingUsage Video


✨ Features

  • AI-powered career counseling with personalized advice
  • Session management for organizing chats
  • Dynamic avatars per session via DiceBear
  • Persistent message history with auto-scrolling
  • Secure authentication with Better Auth and email verification
  • User profiles and protected routes
  • Responsive, mobile-first design
  • Modern UI using shadcn/ui and Framer Motion animations
  • Professional landing page with hero, stats, pricing, and footer
  • Type-safe API with tRPC and Drizzle ORM integration
  • Real-time updates and robust error handling

🚀 Tech Stack

Frontend

Backend & Database

AI & External Services

Development Tools

  • Package Manager: pnpm - Fast package manager
  • Linting: ESLint - Code linting
  • Formatting: Prettier - Code formatting
  • Git Hooks: Husky - Git hooks
  • Testing: Lint-staged - Pre-commit hooks

📋 Prerequisites

Before you begin, ensure you have the following installed:

  • Node.js: Version 18.0 or higher
  • pnpm: Package manager
  • PostgreSQL: Database server
  • Git: Version control system
# Check versions
node --version  # Should be 18.0+
pnpm --version  # Should be installed
git --version   # Should be installed

🛠️ Getting Start

1. Clone the Repository

git clone https://github.com/Jain-Pranjal/Oration-chatbot.git
cd oration-chatbot

2. Install Dependencies

pnpm install

3. Environment Setup

Set up environment variables by copying the .env.example file to .env.local and filling in the necessary details.

# Database
cp .env.example .env.local

4. Database Setup

# Push database schema
pnpm db:push

# Optional: Open database studio
pnpm db:studio

5. Development Server

pnpm dev

Visit http://localhost:3000 to see the application.


📁 Project Structure

oration-chatbot/
├── app/                    # Next.js App Router (auth, main, api, etc.)
├── components/             # UI components (global, ui)
├── db/                     # Database (index.ts, schema.ts)
├── lib/                    # Utilities (ai, auth, utils, etc.)
├── modules/                # Feature modules (auth, chat, landing)
├── trpc/                   # tRPC setup (client, routers, server)
├── public/                 # Static assets (images, favicon)
├── .env.example            # Environment template
├── drizzle.config.ts       # DB config
├── next.config.ts          # Next.js config
├── package.json            # Dependencies
├── tailwind.config.ts      # Tailwind config
├── tsconfig.json           # TypeScript config
└── README.md               # Documentation

📝 License

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


📞 Support

If you have any questions or need help:


Made with ❤️ by Pranjal Jain

⭐ Star this repository if you find it helpful!

Releases

No releases published

Packages

 
 
 

Contributors

Languages