Skip to content

BidyutDev/AUS-PaperVault

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

369 Commits
 
 
 
 
 
 
 
 

Repository files navigation

📚 AUS PaperVault

A centralized, responsive, and real-time platform designed for managing, accessing, and organizing university question papers. It features a modern, intuitive interface where students can easily browse, upload, and download papers. For administrators, it offers a powerful role-based dashboard for catalog management, review queues, seamless department configurations, and live feedback monitoring.

🚀 Study smart, not hard.


✨ Features

Students

  • Smart Browsing: Search and filter papers by department, semester, subject, and year with a beautifully designed, responsive interface.
  • Contribution System: Upload question papers seamlessly for admin review.
  • Seamless Access: Download & view question papers across devices.
  • Support the Platform: Integrated donation system featuring dynamic QR code generation, masked UPI IDs, and a mobile-friendly payment experience.

Admins (Role-Based)

  • Real-Time Dashboard: WebSocket integration ensures instant cross-client updates for file uploads, student feedback, and system notifications without page reloads.
  • Catalog & Department Management: Dynamically create and edit departments, subjects, and semesters with real-time UI feedback and multi-option sorting.
  • Review Queue: Approve, reject, or edit metadata for pending question paper uploads.
  • Inbox Zero Workflow: Manage user feedback with a clean, responsive interface centered around an "Inbox Zero" empty state.
  • Vault Analytics: View comprehensive platform statistics and upload trends using interactive charts.

🛠️ Tech Stack

Frontend

  • Framework: React 19, Vite
  • Routing: React Router DOM 7
  • Styling: TailwindCSS 4, Framer Motion, Glassmorphism
  • UI & Visualization: Lucide Icons, Recharts, Sonner (Toasts)
  • Real-Time Client: Socket.io-client
  • Deployment: Vercel

Backend

  • Environment: Node.js, Express.js
  • Database: MongoDB (Mongoose)
  • Authentication: JWT, bcrypt
  • File Uploads: Multer
  • Real-Time Server: Socket.io
  • Utilities: Nodemailer, Zod

⚙️ Setup Instructions

Prerequisites: Node.js v18+, MongoDB installed and running.

1. Clone the repository

git clone https://github.com/BidyutDev/AUS-PaperVault.git
cd AUS-PaperVault

2. Setup Backend (Terminal 1)

cd backend
npm install

Start the backend development server:

npm run dev

3. Setup Frontend (Terminal 2)

cd frontend
npm install

Start the frontend development server:

npm run dev

🚀 Workflows

Student Flow: Browse Departments → Select Semester → Select Subject → View/Download Paper

Upload Flow: Select Details → Upload PDF → Real-Time Admin Notification → Admin Reviews → Published to Vault

Admin Flow: Secure Login → Access Role-Based Dashboard → Make Changes (Auto-synced via WebSockets)


🤝 Contributing

We welcome contributions! To get started:

  1. Fork the repository
  2. Create your feature branch: git checkout -b feature/AmazingFeature
  3. Commit your changes: git commit -m 'feat: Add some AmazingFeature'
  4. Push to the branch: git push origin feature/AmazingFeature
  5. Open a Pull Request

Code Style Guidelines: Use functional components, React Hooks, and ensure ESLint/Prettier compliance.


📬 Support & Feedback


Version: 1.0.0 | Status: Active Development 🚀

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors