https://github.com/iam-abin/courseapp
https://github.com/iam-abin/courseapp
expressjs nodejs orm-sequelize postgresql redis sequlize typescript
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/iam-abin/courseapp
- Owner: iam-abin
- Created: 2024-08-15T04:31:49.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-08-17T02:34:10.000Z (almost 2 years ago)
- Last Synced: 2025-03-11T00:56:11.609Z (over 1 year ago)
- Topics: expressjs, nodejs, orm-sequelize, postgresql, redis, sequlize, typescript
- Language: TypeScript
- Homepage:
- Size: 104 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Course app
## Prerequisites
Make sure you have the following installed on your system:
- Node.js
- PostgreSQL
- redis
## Installation
1. Clone the repository:
```
git clone https://github.com/iam-abin/Zebronet.git
```
2. Navigate to the project directory:
```
cd Zebronet
```
3. Install the dependencies:
```
npm install
```
4. Set up the required environment variables. Rename the `.env.example` file to `.env` and provide the necessary values for your environment.
5. Start server (Running the app):
```
npm run dev
```
**Start with these steps**
1. Signup a user with userName, email, password , using signup route.
POST http://localhost:8000/api/v1/auth/signup
eg -
```
{
"name":"arun",
"email":"arun@gmail.com",
"password":"arun"
}
```
2. Signin using the email and password to generate JWT access token, using signin route.
3. POST http://localhost:8000/api/v1/auth/signin
eg -
```
{
"email":"arun@gmail.com",
"password":"arun"
}
```
3. Then do other tasks using api endpoints
## Api documentation
[courseApp documentation](https://documenter.getpostman.com/view/26404406/2sA3s7kpZ3)
## Api Endpoints
User
----
POST http://localhost:8000/api/v1/auth/signup - for user signup('user' who create teams ans tasks)
POST http://localhost:8000/api/v1/auth/signin- for user signup('user' who create teams ans tasks)
Course
-------
POST http://localhost:8000/api/v1/course - to create a course
GET http://localhost:8000/api/v1/course/1 - to get a course using courseId with associated lessons
GET http://localhost:8000/api/v1/course/Btech Mec - to search a course using course name
PATCH http://localhost:8000/api/v1/course/1 - to update a course using courseId
DELETE http://localhost:8000/api/v1/course/1- to delete a course using courseId
Lesson
-------
POST http://localhost:8000/api/v1/lesson - to create a lesson
GET http://localhost:8000/api/v1/lesson/1 - to get a lesson using lessonId
PATCH http://localhost:8000/api/v1/lesson/1 - to update a lesson using lessonId
DELETE http://localhost:8000/api/v1/lesson/1- to delete a lesson using lessonId