Skip to content

A university Q&A platform empowering students with instant answers, project insights, and internship tracking—all enhanced by AI.

Notifications You must be signed in to change notification settings

masum184e/askiit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Askiit

A university Q&A platform empowering students with instant answers, project insights, and internship tracking—all enhanced by AI.

🚀 Description

Askiit is a full-stack web platform designed for universities, connecting students, teachers, and admins for seamless knowledge-sharing. Built with Next.js (frontend) and FastAPI (backend), it offers:

  • Fast, secure student authentication and profile management
  • Project (SPL) coordination and tracking
  • Internship opportunities overview
  • An AI-powered chatbot via Gemini API (through LangChain) for smart responses
  • Modern, containerized deployment

Preview

Live Preview

✨ Features

  • Student Registration & Session Management: Secure signup/login and account management
  • SPL Listings: View and manage Software Project Lab (SPL) projects and details
  • Internship Company Tracking: Keep records of companies, roles, and internship status
  • AI-Powered Chatbot: Get quick answers with Gemini-powered AI integration using LangChain
  • Admin Panel: Manage users, SPL projects, internship listings (optional/enabled)
  • Dockerized Setup: Ready-to-launch Docker Compose configuration for both frontend and backend

🛠️ Tech Stack

Layer Technologies
Frontend Next.js, Tailwind CSS
Backend FastAPI, SQLAlchemy
Database PostgreSQL
AI Gemini API (Google) via LangChain
DevOps Docker, Render or self-host

📉 LangGraph

🚦 Getting Started

Prerequisites

  • Docker & Docker Compose
  • Node.js (v18+) for frontend local dev (optional)
  • Python 3.10+ (for backend local dev, optional)
  • PostgreSQL database (local/remote)

Clone the Repository

git clone https://github.com/masum184e/askiit.git
cd askiit

🔧 Setup Instructions

1. Environment Variables

Create .env files using these samples:

Frontend (client/.env)

NEXT_PUBLIC_API_URL=http://localhost:8000
NEXT_PUBLIC_GEMINI_API_KEY=your-gemini-api-key

Backend (server/.env)

DATABASE_URL=postgresql://user:password@localhost:5432/askiit
SECRET_KEY=your-super-secret-key
ALLOWED_HOSTS=*
GEMINI_API_KEY=your-gemini-api-key

2. Local Development

Start the backend:

cd server
pip install -r requirements.txt
uvicorn app.main:app --reload

Start the frontend:

cd client
npm install
npm run dev

3. Dockerized Deployment

With Docker Compose (recommended):

docker-compose up --build
  • The client runs at http://localhost:3000
  • The API runs at http://localhost:8000

📚 Usage

  • Access frontend in browser and register/login as student or admin
  • Explore SPL project listings, internship tracking, and chatbot features
  • Use the admin panel (if enabled) for full management
  • Test AI Q&A in the chatbot interface

📝 API Documentation

  • Visit http://localhost:8000/docs for autogenerated Swagger/OpenAPI documentation.

🤝 Contribution

Contributions welcome! To get started:

  1. Fork the project
  2. Create your feature branch (git checkout -b feature/awesome-feature)
  3. Commit your changes (git commit -m 'feat: add awesome feature')
  4. Push to the branch (git push origin feature/awesome-feature)
  5. Open a Pull Request

Please follow conventional commit messages and keep PRs focused.

💡Contribution Ideas

  • Update Prompt
  • Faculty Database
  • Question Database
  • Global Error Handling
    • Client
    • Server
  • No Result Found UI
  • Sort the response with recent update
  • Improve Pagination Performance
  • SPL
    • Filter By Batch
  • Student
  • Achivement

🪪 License

MIT

👤 Author / Contact

Developed by Masum Billah.

For issues or suggestions, please open an issue or contact via GitHub.

Empowering campus knowledge, together!

About

A university Q&A platform empowering students with instant answers, project insights, and internship tracking—all enhanced by AI.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published