A lightning-fast, sleek Next.js React application built to help NMIT students find, filter, and share study materials seamlessly. This repository contains the frontend client dynamically integrating server-rendering for high performance and an intuitively designed user experience. Check out our introduction on YouTube here: https://www.youtube.com/@VedByte
- 🔍 Smart Search Interface: Find study materials instantly using exact Subject Codes combined with multi-select Tag Chips (e.g., PDF, PYQ, Unit 1).
- 🔗 Shareable Search URLs: The search state is synchronized with the browser URL. Students can copy the link and share exact search results directly in WhatsApp or Discord study groups.
- 🧑🏫 Mentor Directory: A dedicated page featuring beautifully designed, official NMIT-styled profile cards for peer mentors, complete with a detailed modal view and LinkedIn integration.
- 🔒 Secure Architecture: Built-in server middleware efficiently protecting administrative dashboard operations and handling Next.js server actions.
- 📱 Fully Responsive: Carefully crafted with Tailwind CSS to look perfect on mobile phones, tablets, and desktops.
- Framework: Next.js App Router
- Core Library: React 18
- Styling: Tailwind CSS
- State & Querying: Next.js Server Components / Axios
- Icons: Lucide React
Follow these instructions to get a copy of the project up and running on your local machine for development and testing.
- Node.js (v18 or higher recommended)
- npm or yarn
-
Clone the repository:
git clone [https://github.com/your-username/nitte-academia.git](https://github.com/your-username/nitte-academia.git) cd nitte-academia -
Install the Dependencies:
npm install
-
Start Development Server
npm run dev
src/
├── app/ # Main Next.js App Router (Pages & APIs)
│ ├── api/ # Serverless backend logic
│ ├── mentors/ # Dynamic routes
│ ├── upload/ # Protected operations
│ └── page.tsx # Homepage implementation
├── components/ # Reusable UI components (Header, Footer, NoteCard, TagChip etc.)
├── lib/ # Shared utilities & Mock Data
├── models/ # Database Schemas
├── middleware.ts # Global protection logic
└── app/globals.css # Global styles and Tailwind entry
Vedant Asthana * Portfolio: @v3dxnt
- YouTube: @VedByte