Skip to content
lakshitasethiaPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

Β 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“š Vidya Setu

Vidya Setu Banner

Typing SVG

Build Status License Node.js React MongoDB Contributions


🌟 Vision Statement

Vidya Setu is a centralized student project management platform that bridges the gap between students, faculty, and administrators. It ensures streamlined project submission, monitoring, and evaluation within a single system.

The platform serves both as an academic submission system (institutional style) and a developer-friendly repository (open-source style) to encourage transparency, scalability, and collaboration.


✨ Features

🎯 Core Functionality


Centralized Project Repository - Store and manage all student projects in one organized location
Role-Based Access Control - Distinct interfaces for Students, Faculty, and Administrators
Team Collaboration Tools - Multi-user project management with milestone tracking
Advanced Search & Filtering - Find projects by title, student, department, or technology stack
Version Control Integration - Seamless GitHub/GitLab repository linking

πŸ‘₯ User Roles


Students: Upload projects, track progress, collaborate with teams
Faculty/Mentors: Evaluate submissions, provide feedback, monitor milestones
Administrators: Manage users, departments, and oversee project lifecycle

πŸ”’ Security & Authentication


JWT-based secure authentication
Password encryption with bcrypt
Role-based permission system
File upload validation and security


πŸ› οΈ Tech Stack

Frontend

React with Vite for fast development
TailwindCSS + Shadcn UI for modern styling
Axios for API communication

Backend

Node.js + Express.js server
MongoDB + Mongoose ODM
JWT authentication
Multer + GridFS for file handling

DevOps & Deployment

GitHub Actions for CI/CD
Docker for containerization
MongoDB Atlas cloud database
Nginx for production deployment


πŸ“‚ Project Structure

πŸ“ Vidya_Setu/
β”œβ”€β”€ πŸ“ backend/
β”‚   β”œβ”€β”€ πŸ“ config/          # Database & environment configuration
β”‚   β”œβ”€β”€ πŸ“ models/          # MongoDB schemas and data models
β”‚   β”œβ”€β”€ πŸ“ routes/          # Express API endpoints
β”‚   β”œβ”€β”€ πŸ“„ gridfs.js        # GridFS file storage setup
β”‚   β”œβ”€β”€ πŸ“„ seedData.js      # Sample data seeding
β”‚   β”œβ”€β”€ πŸ“„ server.js        # Backend application entry point
β”‚   β”œβ”€β”€ πŸ“„ upload.js        # File upload middleware
β”‚   └── πŸ”’ .env             # Environment variables
β”‚
β”œβ”€β”€ πŸ“ src/
β”‚   β”œβ”€β”€ πŸ“ assets/          # Static resources (images, icons)
β”‚   β”œβ”€β”€ πŸ“ components/      # Reusable React components
β”‚   β”œβ”€β”€ πŸ“ data/            # Static and mock data
β”‚   β”œβ”€β”€ πŸ“ styles/          # CSS and Tailwind configurations
β”‚   β”œβ”€β”€ πŸ“„ AdminDashboard.jsx
β”‚   β”œβ”€β”€ πŸ“„ AdminLogin.jsx
β”‚   β”œβ”€β”€ πŸ“„ AdminPage.jsx
β”‚   β”œβ”€β”€ πŸ“„ App.jsx          # Main React application
β”‚   β”œβ”€β”€ πŸ“„ FacultyApprovalPage.jsx
β”‚   β”œβ”€β”€ πŸ“„ FacultyDashboard.jsx
β”‚   β”œβ”€β”€ πŸ“„ FacultyLogin.jsx
β”‚   β”œβ”€β”€ πŸ“„ FacultyPage.jsx
β”‚   β”œβ”€β”€ πŸ“„ FacultyProfile.jsx
β”‚   β”œβ”€β”€ πŸ“„ FacultySettings.jsx
β”‚   β”œβ”€β”€ πŸ“„ HomePage.jsx
β”‚   β”œβ”€β”€ πŸ“„ main.jsx         # React application entry point
β”‚   β”œβ”€β”€ πŸ“„ StudentLogin.jsx
β”‚   β”œβ”€β”€ πŸ“„ StudentPage.jsx
β”‚   └── πŸ“„ StudentProfile.jsx
β”‚
β”œβ”€β”€ πŸ“„ .gitignore
β”œβ”€β”€ πŸ“„ index.html
β”œβ”€β”€ πŸ“„ package-lock.json
β”œβ”€β”€ πŸ“„ package.json
β”œβ”€β”€ πŸ“„ README.md
└── πŸ“„ vite.config.js

βš™οΈ Installation & Setup

Prerequisites

  • Node.js (version 18 or higher)
  • MongoDB (local installation or Atlas account)
  • Git for version control

πŸš€ Quick Start

πŸ”½ Click to expand installation steps
  1. Clone the Repository

    git clone https://github.com/your-username/Vidya_Setu.git
    cd Vidya_Setu
  2. Backend Setup

    cd backend
    npm install
  3. Environment Configuration

    Create a .env file in the backend/ directory:

    MONGODB_URI=mongodb://localhost:27017/vidya_setu
    JWT_SECRET=your-super-secret-jwt-key
    PORT=5000
    NODE_ENV=development
  4. Start Backend Server

    npm start
    # Server will run on http://localhost:5000
  5. Frontend Setup (in a new terminal)

    cd src
    npm install
    npm run dev
    # Frontend will run on http://localhost:5173
  6. Access the Application

    Open your browser and navigate to: http://localhost:5173


πŸš€ Deployment Options [PROJECT NOT DEPLOYED YET]

Frontend Deployment


Vercel (Recommended for React apps)
Netlify (Static site hosting)
GitHub Pages (For static builds)

Backend Deployment


Render (Full-stack applications)
Heroku (Platform as a Service)
Railway (Modern deployment platform)
Docker + VPS (Self-hosted option)

Database


MongoDB Atlas (Recommended cloud solution)
MongoDB Community (Self-hosted)


🀝 Contributing

We welcome contributions from the community! Here's how you can help:

gitGraph
    commit id: "Fork Repo"
    branch feature
    checkout feature
    commit id: "Add Feature"
    commit id: "Write Tests"
    commit id: "Update Docs"
    checkout main
    merge feature
    commit id: "Deploy πŸš€"
Loading
  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Development Guidelines

  • Follow existing code style and conventions
  • Write clear, descriptive commit messages
  • Include tests for new features
  • Update documentation as needed

πŸ‘¨β€πŸ’» Contributors


Lakshita Sethia
Frontend Developer

Jash Thakkar
Backend Developer

Hetansh Waghela
ML Developer

Darshan Ved
Frontend Developer

Vraj Ved
Frontend Developer

Nikhil Pise
ML Developer

πŸ“ž Contact & Support

GitHub Issues Discussions


⭐ Show Your Support

If you find this project helpful, please consider:

  • ⭐ Starring the repository
  • 🍴 Forking for your own projects
  • πŸ› Reporting bugs and issues
  • πŸ’‘ Suggesting new features

πŸ“œ License

License: GPL v3

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.


Made with ❀️ by the GitGoneWild Team

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages