Skip to content

BhashkarFulara369/Student_Counseling_Portal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

10 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Student Counseling Portal

A full-stack Django-based web application designed to streamline the student counseling process for educational institutions. This portal handles seat allocation, branch preferences, payment verification, and offer letter generation β€” all in one secure and user-friendly platform.


πŸš€ Key Features

πŸ” Role-Based Authentication

  • Separate login flows for students and staff admins
  • Secure session management using Django AllAuth

πŸ“ Student Workflow

Students follow a guided, multi-step process:

  • Personal Information Submission
  • Educational Details Entry
  • Branch Preference Filling
  • Receipt Upload for Payment Verification
  • Offer Letter Download (post-verification)

πŸ§‘β€πŸ’Ό Admin Dashboard

Staff admins have access to a powerful control panel:

  • View student rankings and branch choices
  • Manually allocate branches
  • Toggle acceptance status
  • Verify uploaded payment receipts
  • Generate and download official offer letters

πŸ“„ Offer Letter Generation

  • Professionally styled PDF letters
  • Includes institute logo, signature, and student details
  • Downloadable by both students and staff

πŸ“€ Receipt Uploads

  • Students can upload payment receipts (PDF, JPG, PNG)
  • Stored securely in the media directory
  • Verified manually by staff via the admin panel

πŸŽ₯ Demo Video

Want to see the portal in action?
πŸŽ₯ Watch Demo on YouTube

User Process Flow --

Image

UML Diagram --

Image

πŸ› οΈ Tech Stack

Layer Technology
Backend Django 5.2
Frontend Bootstrap 5
PDF Engine ReportLab
Auth System Django AllAuth
Database SQLite (default) β€” easily swappable with PostgreSQL

πŸ“ Folder Structure

student_counseling_portal/
β”œβ”€β”€ manage.py
β”œβ”€β”€ requirements.txt
β”œβ”€β”€ db.sqlite3
β”œβ”€β”€ media/
β”‚   └── receipts/
β”œβ”€β”€ static/
β”‚   └──/images
β”œβ”€β”€ templates/
β”‚   └── ...
β”œβ”€β”€ student_portal/
β”‚   β”œβ”€β”€ __init__.py
β”‚   β”œβ”€β”€ admin.py
β”‚   β”œβ”€β”€ apps.py
β”‚   β”œβ”€β”€ models.py
β”‚   β”œβ”€β”€ views.py
β”‚   β”œβ”€β”€ forms.py
β”‚   β”œβ”€β”€ urls.py
β”‚   └── ...
β”œβ”€β”€ staff_dashboard/
β”‚   β”œβ”€β”€ __init__.py
β”‚   β”œβ”€β”€ admin.py
β”‚   β”œβ”€β”€ apps.py
β”‚   β”œβ”€β”€ models.py
β”‚   β”œβ”€β”€ views.py
β”‚   β”œβ”€β”€ forms.py
β”‚   β”œβ”€β”€ urls.py
β”‚   └── ...
β”œβ”€β”€ offer_letter/
β”‚   β”œβ”€β”€ __init__.py
β”‚   β”œβ”€β”€ pdf_generator.py
β”‚   └── ...
β”œβ”€β”€ student_counseling_portal/
β”‚   β”œβ”€β”€ __init__.py
β”‚   β”œβ”€β”€ settings.py
β”‚   β”œβ”€β”€ urls.py
β”‚   β”œβ”€β”€ wsgi.py
β”‚   └── asgi.py

⚑ Setup Instructions

1. Clone the Repository

git clone https://github.com/BhashkarFulara369/student_counseling_portal.git
cd student_counseling_portal

2. Create a Virtual Environment

python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

3. Install Dependencies

pip install -r requirements.txt

4. Apply Migrations

python manage.py migrate

5. Create a Superuser (for Overall access)

python manage.py createsuperuser

6. Run the Development Server

python manage.py runserver

7. Access the Portal

  • Student Portal: http://localhost:8000/
  • Admin Dashboard: http://localhost:8000/admin-panel/

Note:

  • For PDF generation, ensure ReportLab is installed (included in requirements.txt).
  • Uploaded receipts and generated offer letters are stored in the media/ directory.
  • To use PostgreSQL or another database, update settings.py accordingly.
  • For email verification, configure SMTP settings in settings.py if required.

🌟 Future Enhancements

  • Automated Branch Allocation: Implement algorithms for automatic seat and branch allocation based on merit and preferences.
  • Real-Time Notifications: Integrate email/SMS notifications for application status updates and important deadlines.
  • Analytics Dashboard: Provide visual analytics for admin users to track counseling trends and student statistics.
  • Multi-Institute Support: Extend platform to support multiple institutions with customizable workflows.
  • Document Verification Automation: Use OCR and AI to automate verification of uploaded documents and receipts.
  • Mobile App Integration: Develop companion mobile apps for students and staff for easier access.
  • Multi-Language Support: Add localization for regional languages to improve accessibility.
  • Payment Gateway Integration: Enable online fee payments and instant verification.
  • Bulk Data Import/Export: Allow admins to import/export student data and counseling results in CSV/Excel formats.
  • Enhanced Security: Add two-factor authentication and advanced access controls for sensitive operations.

🀝 Contributing

I welcome contributions! To get started:

  1. Fork the repository and create your branch (git checkout -b feature-name)
  2. Make your changes and commit them (git commit -m 'Add new feature')
  3. Push to your fork (git push origin feature-name)
  4. Open a pull request describing your changes

Please ensure your code follows the existing style and includes relevant tests or documentation. For major changes, open an issue first to discuss your ideas.


πŸ“„ License

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


Made with ❀️ by BhashkarFulara

About

The only place where students fight for seats, admins play matchmaker, and everyone hopes the PDF offer letter looks fancier than their degree. Now with 100% more drama, less paperwork, and absolutely zero counseling couches!

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors