DevHub is an innovative platform designed to connect developers who share similar interests and complementary skills. By leveraging advanced technologies, it facilitates intelligent matchmaking and personalized recommendations, enabling devs to form effective teams and engage in meaningful collaborations. The platform provides a structured and user-friendly environment for networking, learning, and growth, ultimately enhancing the academic and professional experiences of developers.
- Backend: Flask 🐍 + LangChain 🔗
- Frontend: Vite + React (TypeScript) ⚛️
- Database: Neo4j + MongoDB
- OTP Based Authentication
- Signin/Signup (Unique Username check and follows NIST Guidlines Validation)
- Create Profile
- Add/update/delete projects
- Add Github and Leetcode profiles (Data in profile will be populated from the given handles)
- Convert Profile into Knowledge Graphs
- Use langchain to Chat with KGs
- Save Chat history
- Typing animation and Markdown response
Enter into the root directory.
cd devhub
You can use setup.bat
to automate the installation and running process of the webapp. (make sure to make .env
in server and populate it with the data)
./setup.bat
Open two terminal for server and client and enter into the directories.
## 1st terminal for server
cd server
## create .env file with following details (you can create your neo4j account or use our mirror database credentials)
GOOGLE_API_KEY=
SECRET_KEY=
NEO4J_URI=
NEO4J_USER=
NEO4J_PASSWORD=
MONGODB_URI=
CLOUDINARY_NAME=
CLOUDINARY_API_KEY=
CLOUDINARY_API_SECRET=
## Join our discord server to get Mirror Database Credentials.
Discord Server Link : https://discord.gg/he8QHEC8WP
## Create and activate Virtual Environment
python -m venv venv
./venv/Scripts/activate
## Install dependencies
pip install -r requirements.txt
## Run the Server
flask run or python server.py
## 2nd terminal for client
cd client
## Install dependencies
npm install
## Run the client
npm run dev
Our API is designed to give you access to all core functionalities of DevHub programmatically. You can interact with the platform's matchmaking, user profile creation, and project exploration features via HTTP requests. To get started with the API, please refer to our Postman documentation, which provides detailed information on all available endpoints.
For the full API documentation, visit the following link:
Postman API Documentation
By integrating LLMs for natural language understanding, LangChain for workflow enhancement, and Neo4j for advanced data storage and querying, DevHub offers a comprehensive solution for devs seeking meaningful collaborations. This combination not only enhances user experience but also ensures that connections are based on relevant skills and interests, leading to more effective teamwork.
See the CONTRIBUTION GUIDE to get started.