Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/moshfiqrony/facebook-group-api-clone

This is an API created using NodeJS, MongoDB, ExpressJS. This is a clone of facebook's group API
https://github.com/moshfiqrony/facebook-group-api-clone

api express-js javascript mongodb mongoose nodejs rest-api restful-api

Last synced: 3 months ago
JSON representation

This is an API created using NodeJS, MongoDB, ExpressJS. This is a clone of facebook's group API

Awesome Lists containing this project

README

        


Facebook Group API Clone

![Node.JS](https://img.shields.io/badge/-Node.JS-black?style=plastic&logo=Node.js)
![Express.JS](https://img.shields.io/badge/-Express.JS-c7b198?style=plastic&logo=Express.JS)
![MongoDB](https://img.shields.io/badge/-MongoDB-black?style=plastic&logo=mongodb)
![Babel](https://img.shields.io/badge/-Babel-4B275F?style=plastic&logo=Babel)

![License](https://img.shields.io/badge/License%20-MIT-green)
![License](https://img.shields.io/badge/Under%20Development-red)



This is an API created using NodeJS, MongoDB, ExpressJS. Thi is a clone of facebook's group API

# Table of contents
1. [Endpoints](#Endpoints)
1. [Topic I loved Most](#Topic-I-loved-Most)

# Endpoints
- Register an user - **POST** to **/api/register**
- Login an user - **POST** to **/api/login**
- Logout an user - **POST** to **/api/logout**
- Get Logged in user info - **GET** to **/api/user**
- Get Logged in user profile - **GET** to **/api/user/profile**
- Update Logged in user profile - **PUT** to **/api/user/profile**
- Create a group - **POST** to **/api/group**
- Get all the groups - **GET** to **/api/group**
- Get a group - **GET** to **/api/group/pass_group_id_here**
- Update a group - **PUT** to **/api/group/pass_group_id_here**
- Add Moderator to a group - **PUT** to **/api/post/pass_group_id_here/moderator**
- Delete Moderator to a group - **DELETE** to **/api/post/pass_group_id_here/moderator**
- Add admin to a group - **PUT** to **/api/post/pass_group_id_here/admin**
- Delete admin to a group - **DELETE** to **/api/post/pass_group_id_here/admin**
- Add member to a group - **PUT** to **/api/post/pass_group_id_here/member**
- Delete member to a group - **DELETE** to **/api/post/pass_group_id_here/member**

# Topic I loved Most
Here are the topics that I really loved about **ExpressJS, Mongoose, NodeJS**
* [Mongoose Populate](https://mongoosejs.com/docs/populate.html)
* [Mongoose autopopulate](https://plugins.mongoosejs.io/plugins/autopopulate)
* [mongoose-beautiful-unique-validation](https://www.npmjs.com/package/mongoose-beautiful-unique-validation)
* [Mongodb operator](https://docs.mongodb.com/manual/reference/operator/)
* [Mongodb operator update-array](https://docs.mongodb.com/manual/reference/operator/update-array/)