A university Q&A platform empowering students with instant answers, project insights, and internship tracking—all enhanced by AI.
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
- 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
Layer | Technologies |
---|---|
Frontend | Next.js, Tailwind CSS |
Backend | FastAPI, SQLAlchemy |
Database | PostgreSQL |
AI | Gemini API (Google) via LangChain |
DevOps | Docker, Render or self-host |
- Docker & Docker Compose
- Node.js (v18+) for frontend local dev (optional)
- Python 3.10+ (for backend local dev, optional)
- PostgreSQL database (local/remote)
git clone https://github.com/masum184e/askiit.git
cd askiit
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
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
With Docker Compose (recommended):
docker-compose up --build
- The client runs at
http://localhost:3000
- The API runs at
http://localhost:8000
- 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
- Visit
http://localhost:8000/docs
for autogenerated Swagger/OpenAPI documentation.
Contributions welcome! To get started:
- Fork the project
- Create your feature branch (
git checkout -b feature/awesome-feature
) - Commit your changes (
git commit -m 'feat: add awesome feature'
) - Push to the branch (
git push origin feature/awesome-feature
) - Open a Pull Request
Please follow conventional commit messages and keep PRs focused.
- 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
Developed by Masum Billah.
For issues or suggestions, please open an issue or contact via GitHub.
Empowering campus knowledge, together!