The ultimate student project showcaseβdiscover, upload, and get inspired across all domains.
ProjectSphere is a web application designed for students to showcase their projects across various domains, allowing them to upload, manage, and share multimedia content such as documents, images, and videos. It serves as a platform for inspiration, learning, and preventing plagiarism in academic projects.
- Student Project Showcase: Upload and display your project with rich multimedia content.
- Bookmark Projects: Save interesting projects for later review, just like a "Watch Later" feature.
- Search Projects: Discover projects based on domains, technologies, and keywords.
- Domain-based Sorting: Categorized project display, from web development to robotics and more.
- Multimedia Storage: Upload images, documents, videos, and more to AWS S3.
- Responsive Design: Optimized for both desktop and mobile users with NextUI.
- Frontend: Next.js, NextUI, JavaScript
- Backend: Supabase (Auth & Database)
- Multimedia Storage: AWS S3 Bucket
- Styling: TailwindCSS
-
Clone the repository:
git clone https://github.com/Stavan1234/ProjectSphere.git cd ProjectSphere -
Install dependencies:
npm install
-
Create an
.env.localfile:- Set up your environment variables for Supabase and AWS S3 (check
config/ProjectSphereClient.jsfor variable names).
- Set up your environment variables for Supabase and AWS S3 (check
-
Run the development server:
npm run dev
Open http://localhost:3000 in your browser.
Once the project is up and running, you can:
- Sign up / Log in to access the dashboard.
- Upload your project: Add details like title, description, domain, technologies used, and upload multimedia.
- Search and filter projects by domain or keywords to discover new ideas.
- Bookmark projects you find inspiring.
Here's a breakdown of the important folders and files in the project:
project-sphere/
βββ app/
β βββ api/ # API routes for project upload and management
β βββ bookmarks/ # Bookmark button functionality
β βββ components/ # Reusable components (UI elements)
β βββ myprojects/ # User's uploaded projects
β βββ project_page/ # Individual project detail pages
β βββ SearchProject/ # Search functionality for projects
βββ public/ # Static files like images and icons
βββ lib/ # Utility functions
βββ utils/ # Miscellaneous helpers
βββ README.md # This file!
Contributions are welcome! To contribute:
- Fork the repository.
- Create your feature branch (
git checkout -b feature-name). - Commit your changes (
git commit -am 'Add new feature'). - Push to the branch (
git push origin feature-name). - Open a pull request.
ποΈ Future Enhancements
- Live Demo: Once deployed, a link will be added here.
- AI Chatbot: An AI chatbot to guide users through the website, answer queries, and help with project uploads and features.
- Community & Threads: A community feature allowing users to interact, share ideas, and discuss projects through threaded discussions.
- AI Suggestions: AI-powered suggestions when a user opens a project, offering related research papers, tools, and resources from the web. These will be displayed like smart search engine results with links to relevant content.
- Gamification: Introduce gamified elements like achievement badges, XP points, leaderboards, and rewards to enhance user engagement and motivation.
This project is a work in progress, and weβre constantly adding new features and improving the platform.
Ready to explore and contribute? Let's build something awesome together! π



