Inspiration
We observed that faculty members and students in higher educational institutions carry out research activities but face several challenges. Some of them that we observed are:
- A student or faculty member finds it difficult to find the right people to collaborate with.
- They struggle in managing a team or tracking progress in academic projects.
- Students sometimes struggle to connect with faculty members for guidance on projects or research.
- They miss opportunities to utilize resources like labs etc.
- Academic collaborations are often limited to personal networks or departmental boundaries. But, many breakthroughs happen at the intersection of disciplines, but collaboration across fields/departments is rare in academic settings.
- Academic projects often lack proper documentation and path, making it hard to showcase achievements or build on past work.
- Unlike in industries, students and faculty often lack access to structured tools to manage projects, leading to inefficiencies and mismanagement.
What it does
Campus Connect ++ is designed to foster collaboration and streamline project management in academic institutions. It bridges the gap between students, faculty, and resources, creating a centralized platform for effective academic project coordination.
Key functions and features:
- Centralized Collaboration: Connects students, faculty, and departments under one platform to work on intradisciplinary or interdisciplinary academic projects.
- Find like minded people: Students can find other students or faculty members who are working in similar areas of interest or have similar skill sets in order to improve their networking.
- Find the Best student for a project: Faculty members can find the most deserving student for his/her project who have the needed skillsets and area of interests.
- Calendar for Event tracking: Every project will have its own calendar which will notify its team members about the upcoming meetings and deadlines.
- Kanban Board for task management: Every task of a project can be classified into "To Do", "In Progress" and "Done". so that every task done by every team member is tracked by the faculty member.
- Find an interesting project: Student can find project according to his/her interest and submit a proposal expressing interest in working under that faculty member. Faculty member can review his/her proposal and accept/reject the student.
- AI-powered research assistant: Assist students and faculty in finding n number of relevant research papers. It also summarizes key points of research paper and helps in quick reading.
- Dark and light mode according to the user preference
How we built it
Steps involved in building this end-to-end application are:
- Planning the project: Establishing portals goals and identifying key features.
- Frontend development: ReactJS for dynamic user interface and Tailwind CSS for professional styling, Github copilot for help.
- Backend Development: Fast API for building high performance APIs and to handle multiple requests at once, Github copilot for help.
- Database used: Combination of Neo4j keeping track of relation between faculty members, students and Mongodb for storing unstructured documents.
- Deployment:
- Frontend: Vercel (Tried to deploy using Microsoft Azure as well)
- Backend: Fast API
- Database: Neo4j aura, MongoDB Atlas (Tried using Azure services as well)
- Tools: Visual Studio Code, Github Copilot, Github Copilot Chat, Postman for API testing, Github for version control, Neo4j Desktop, Neo4j bloom
Challenges we ran into
- Had a large list of features to implement in a limited number of time. Solution: Used github copilot and github copilot chat in Visual Studio code to quickly implement every modular component. (The components made using github copilot are mentioned in the commit history)
- Testing the entire application end-to-end, especially the interactions between the graph database, document database and the APIs. Solution: Examined every possible senario including edge cases after every changes made.
- Making the web app responsive to most of the available devices: Since this web app contains components to be displayed on large screens we had to make it fit almost all the kinds of screens Solution: Inspected and corrected the responsiveness using browsers inspect and tailwind css' responsive modifiers.
- Deployment in azure: While deploying fastapi application in azure app service, some specific version of fastapi didn't install uvicorn and gunicorn even when uvicorn and gunicorn is mention in requirements.txt. Solution: we searched in github issues and contrained fastapi, uvicorn, gunicorn to specific version.
- Project Management Complexity
- Implementing different project states (Ongoing, Planned, Completed)
- Managing project proposals and approvals between students and faculty
- Building Kanban board functionality for task tracking
- Implementing project calendar for deadlines and meetings
Accomplishments that we're proud of
- Built a modular, scalable system architecture that makes it easy to integrate future features like machine learning, advanced analytics, or AI-based project suggestions.
- Enabled students and faculty from different departments to come together and work on innovative, interdisciplinary projects.
- Project management tools that actually helps in keeping track project like other popular tools available - kanban board, calendar etc
- Highly scalable application
What we learned
- Power of Graph Databases: Neo4j’s graph-based data model is excellent for representing complex relationships (e.g., students collaborating on projects, faculty supervising multiple teams). We became proficient in modeling and querying interconnected data, learning how to optimize graph schemas for performance and scalability.
- Importance of Scalability: Designing for future growth is essential, especially in a collaborative platform where the number of users, projects, and data points can increase exponentially. We learned to use cloud services like Neo4j Aura and optimize backend systems to ensure performance under heavy load.
- Balancing Functionality and Simplicity: While it’s tempting to add numerous features, it’s critical to focus on the ones that deliver the most value and are intuitive to use. We gained insights into the balance between building a feature-rich platform and maintaining a simple, clean user experience.
- Collaboration and Teamwork: Building the portal required close collaboration across different roles (frontend developers, backend developers). We learned the importance of clear communication, role delegation, and version control using Git for seamless teamwork.
What's next for Campus Connect ++
- Scalability and Robustness: Designed a system architecture that is scalable, allowing the portal to handle an increasing number of users, projects, and data without performance degradation. The portal can grow alongside the institution’s needs, making it a long-term solution for academic collaboration.
Log in or sign up for Devpost to join the conversation.