DevTinder is a revolutionary platform designed specifically for developers to find like-minded coding partners, collaborators, and project teammates. Just like Tinder, but for the tech community! Swipe right on developers who match your coding style, interests, and project goals.
- 🔐 Secure Authentication - JWT-based authentication with password hashing
- 👤 Rich User Profiles - Showcase your skills, projects, and interests
- 🤝 Smart Matching - Connect with developers based on compatibility
- 📱 Connection Requests - Send and manage collaboration requests
- 🛡️ Data Validation - Robust input validation and security measures
- 🌐 CORS Support - Ready for frontend integration
- Node.js (v14 or higher)
- MongoDB
- npm or yarn
-
Clone the repository
git clone https://github.com/coder-writes/devtinder.git cd devtinder
-
Install dependencies
npm install
-
Set up environment variables
# Create .env file and add: MONGODB_URI=your_mongodb_connection_string JWT_SECRET=your_jwt_secret_key PORT=3000
-
Start the development server
npm run dev
-
Start the production server
npm start
devtinder/
├── src/
│ ├── app.js # Main application entry point
│ ├── config/
│ │ └── database.js # Database configuration
│ ├── middlewares/
│ │ └── auth.js # Authentication middleware
│ ├── models/
│ │ ├── user.js # User schema and model
│ │ └── connectionRequest.js # Connection request model
│ ├── routes/
│ │ ├── auth.js # Authentication routes
│ │ ├── profile.js # Profile management routes
│ │ ├── requests.js # Connection request routes
│ │ └── user.js # User-related routes
│ └── utils/
│ └── validation.js # Input validation utilities
├── test/ # Test files
├── package.json
└── README.md
POST /signup
- Register a new userPOST /login
- User loginPOST /logout
- User logout
GET /profile/view
- View user profilePATCH /profile/edit
- Update user profile
POST /request/send/:status/:userId
- Send connection requestPOST /request/review/:status/:requestId
- Accept/reject requestsGET /user/requests/received
- Get received requestsGET /user/connections
- Get user connectionsGET /user/feed
- Get user feed
Run the test suite using Mocha:
npm test
Technology | Purpose |
---|---|
Node.js | Runtime environment |
Express.js | Web framework |
MongoDB | Database |
Mongoose | ODM for MongoDB |
JWT | Authentication |
bcrypt | Password hashing |
Validator | Input validation |
CORS | Cross-origin requests |
Mocha | Testing framework |
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the ISC License - see the LICENSE file for details.
Your Name
- GitHub: @coder-writes
- LinkedIn: rishi-verma-sde
- Thanks to the open-source community for the amazing tools and libraries
- Special thanks to all contributors who help make DevTinder better
- Inspired by the need to connect developers worldwide