https://github.com/afsify/codisify-devlearn
Explore a dynamic hub where developers can provide services, courses, connecting seamlessly with developers and users. Experience live chat and an attractive interface.
https://github.com/afsify/codisify-devlearn
courses learning-site live-chat
Last synced: about 1 year ago
JSON representation
Explore a dynamic hub where developers can provide services, courses, connecting seamlessly with developers and users. Experience live chat and an attractive interface.
- Host: GitHub
- URL: https://github.com/afsify/codisify-devlearn
- Owner: afsify
- Created: 2024-07-21T16:35:41.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2025-03-01T10:58:24.000Z (over 1 year ago)
- Last Synced: 2025-03-01T11:31:21.773Z (over 1 year ago)
- Topics: courses, learning-site, live-chat
- Language: JavaScript
- Homepage: https://codisify.vercel.app
- Size: 261 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Codisify Devlearn
Welcome to the Codisify Devlearn project! This platform is designed to a freelancer offers his services, provide courses, and establish connections between developers and users. Prime members enjoy additional benefits such as support group chat, personal support, meeting sessions, and a Prime Badge. The Codisify Devearn project ensures flawless functionality with a captivating design, delivering a smooth experience across all devices.
## Features
- **User Authentication:** Securely log in and manage your profile, services, and courses with our robust user authentication system.
- **Service and Course Offerings:** Freelancers can offer services, provide courses, and users can explore and enroll in them.
- **Prime Membership:** Prime members enjoy exclusive benefits, including support group chat, personal support, meeting sessions, and a Prime Badge.
- **Live Chat:** Engage in real-time conversations with other users and freelancers through the live chat feature.
- **DevHub for Developers:** A dedicated space for developers to showcase their skills, share insights, and collaborate with others.
- **Library for Purchased Courses:** Access a centralized library to manage and revisit purchased courses conveniently.
- **Responsive Design:** The platform is designed to provide a seamless experience across various devices.
- **Modular Architecture:** Embrace a modular architecture that enhances flexibility and scalability for future development.
## Tools and Technologies
### Client-Side Libraries
- **React.js:** A JavaScript library for building user interfaces.
- **Redux.js:** A predictable state container for JavaScript apps.
- **TailwindCSS:** A utility-first CSS framework for rapidly building custom designs.
- **Ant Design:** A design system for enterprise-level products.
**HTTP Client:**
- **Axios:** A promise-based HTTP client for making requests to APIs. Axios is used to interact with the server-side API.
### Server-Side Technologies
- **Node.js:** A JavaScript runtime built on Chrome's V8 JavaScript engine.
- **Express.js:** A minimal and flexible Node.js web application framework.
- **Socket.io:** Real-time bidirectional event-based communication.
- **MongoDB (Mongoose):** A NoSQL database used to store and retrieve data.
- **JWT Token:** JSON Web Token for user authentication.
## Access the live project
The live project can be accessed at [https://codisify.vercel.app](https://codisify.vercel.app)
## Getting Started
1. **Clone the repository:**
```bash
git clone https://github.com/afsify/codisify-devlearn.git
```
2. **Set up environment variables:**
Create a `.env` file in the root directory or rename the current `.env.sample` file and configure necessary variables for client and server sides.
**Client ENV**
```bash
VITE_STRIPE_KEY = stripe-payment-key
VITE_GOOGLE_ID = google-auth-id
VITE_JITSI_ID = jitsi-meeting-id
VITE_USER_URL = user-backend-url
VITE_ADMIN_URL = admin-backend-url
VITE_CLOUD_NAME = cloudinary-upload-name
VITE_CHAT_PRESET = cloudinary-chat-preset
VITE_CLOUD_PRESET = cloudinary-upload-preset
VITE_PROFILE_PRESET = cloudinary-profile-preset
```
**Server ENV**
```bash
STRIPE_KEY = stripe-secret-key
MONGO_URL = mongo-atlas-url
JWT_SECRET = jwt-secret-code
GMAIL_USER = smtp-gmail-email
GMAIL_PASS = smtp-gmail-password
CLIENT_URL = react-frontend-url
PRIME_GROUP = prime-group-id
```
3. **Navigate to the client directory:**
Open a terminal in Visual Studio Code and split it into two terminals. In the first terminal, navigate to the client directory:
```bash
cd client
```
4. **Install client side dependencies:**
```bash
npm install
```
5. **Start the client-side application:**
```bash
npm start
```
The client-side application will be running on [http://localhost:3000](http://localhost:3000)
6. **Navigate to the server directory:**
In the second terminal, navigate to the server directory:
```bash
cd server
```
7. **Install server side dependencies:**
```bash
npm install
```
8. **Start the server:**
```bash
npm start
```
The server will be running on [http://localhost:5000](http://localhost:5000)
## Contributing
Contributions are welcome! Feel free to open issues and pull requests.