Dev-Charcha is a community platform designed for developers to discuss and collaborate on various programming languages, frameworks, and libraries. Built with Next.js and powered by Stream Chat, this platform fosters communication and mutual assistance among developers worldwide.
- Language-Specific Channels: Join channels dedicated to your preferred programming languages and frameworks.
- Real-Time Messaging: Engage in seamless real-time conversations.
- User Authentication: Secure login and sign-up system using Clerk.
- Responsive Design: Fully optimized for desktop and mobile devices.
- Customizable Profile: Personalize your user profile with relevant details.
- Stream Chat Integration: Leverage the robust capabilities of Stream Chat for messaging and channel management.
- Framework: Next.js
- State Management: React (part of MERN stack)
- Styling: Tailwind CSS
- Authentication: Clerk
- Database: MongoDB
- Server: Express.js
- Messaging: Stream Chat APIs
- Deployed on platforms like Vercel or Netlify (for frontend) and other hosting services (for backend, if applicable).
Follow these steps to set up the project locally:
- Node.js (version 16+)
- npm or yarn
- MongoDB instance
- Stream Chat API credentials
- Clerk API credentials
-
Clone the repository:
git clone https://github.com/yourusername/dev-charcha.git cd dev-charcha
-
Install dependencies:
npm install # or yarn install
-
Create a
.env.local
file in the root directory and add the following environment variables:NEXT_PUBLIC_STREAM_API_KEY=your_stream_api_key NEXT_PUBLIC_CLERK_FRONTEND_API=your_clerk_frontend_api MONGODB_URI=your_mongodb_connection_string STREAM_API_SECRET=your_stream_api_secret
-
Start the development server:
npm run dev # or yarn dev
-
Open http://localhost:3000 in your browser to view the application.
- Sign up or log in to access the platform.
- Explore language-specific channels and join discussions.
- Share knowledge, ask questions, and help others in real-time.
Contributions are welcome! Follow these steps to contribute:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
- Make your changes and commit them:
git commit -m "Add a meaningful commit message"
- Push to your branch:
git push origin feature/your-feature-name
- Create a Pull Request.
- Next.js
- Stream Chat
- Clerk
- MongoDB
- Express.js
- Open-source contributors
For queries or suggestions, feel free to contact:
- Email: [email protected]