Name: CoDesign
Contributors: Aryan Gupta, Abhinav Gonthina, Shiven Ajwaliya, Jonas Bleck, Abhinav Tavlidar
Objective:
To create a platform that connects designers and developers, enabling them to collaborate on projects seamlessly. CoDesign facilitates profile creation, project posting, chat-based communication, and personalized matchmaking based on skills, interests, and availability. Additionally, CoDesign offers a mobile-friendly experience and scalable backend to support growing users.
- Connect designers and developers looking to collaborate on projects.
- Allow users to create detailed profiles showcasing skills, interests, experience, and availability.
- Implement a matchmaking algorithm to recommend potential collaborators based on user preferences.
- Enable direct communication via a chat system.
- Provide a seamless, mobile-friendly experience
- Support content posting to share ongoing or completed projects.
- Offer personalized project recommendations.
- Framework: ReactJS (Web), React Native (Mobile)
- Styling: Tailwind CSS, Material UI Icons
- State Management: Context API
- Routing: React Router
- Framework: Flask (Python)
- Database: MongoDB (Profiles, Projects, Chat data)
- APIs: RESTful API design for frontend-backend communication
- Authentication: JWT-based user authentication, Google Auth
- Designers and developers can create profiles with skills, interests, experience level, availability, and project preferences.
- Recommend top collaborators based on profile attributes and user preferences.
- Matching criteria: role (designer/developer), skills, experience, and availability.
- Users can post project ideas and browse existing ones.
- Option to search and filter projects based on trending.
- Real-time messaging between users to facilitate collaboration discussions.
- Mobile-friendly web design.
- Dedicated mobile app version for enhanced accessibility.
- RESTful APIs for handling profile management, project posting, matchmaking, and chat functionality.
- Designers seeking developers to bring their creative ideas to life.
- Developers looking to collaborate with designers on innovative technical projects.
-
Set up two terminals
- Terminal 1:
cd frontend(frontend terminal) - Terminal 2:
cd backend(backend terminal)
- Terminal 1:
-
Backend Setup
- In
backend/, create a.envfile with the following values:MONGO_URI= JWT_SECRET_KEY= CLOUDINARY_CLOUD_NAME= CLOUDINARY_API_KEY= CLOUDINARY_API_SECRET= GOOGLE_CLIENT_ID= GOOGLE_CLIENT_SECRET= SECRET_KEY= FRONTEND_URL= - Then run:
python -m venv venv source venv/bin/activate # or venv\Scripts\activate on Windows pip install -r requirements.txt python app.py
- In
-
Frontend Setup
- In
frontend/, create a.envfile with:VITE_BACKEND_URL= - Then run:
npm install npm run dev
- In
- Add support for group chats and project-based team channels.
- Integrate push notifications for messages and collaboration requests.
- Implement feedback and review system for collaborators.
- Support media sharing (images, design prototypes).
- Add AI-based matchmaking recommendations using ML models.
- Introduce gamification: badges, achievements for community engagement.