Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/gbrowns/sw-lab-project


https://github.com/gbrowns/sw-lab-project

api express mongodb reactjs rest-api sendgrid vite

Last synced: 27 days ago
JSON representation

Awesome Lists containing this project

README

        

# Bonga KE - SCCI/01165/2018

## Overview

**1. Project Background and description**

```Bonga Kenya``` is a web app that connects individuals,provides a platform for sharing blog posts and provides a forum-based page for actively sharing thoughts.

**2. High-Level Requirements**

The following system is a fully web-based application with the ability to work on all browser platforms and only requires internet availability together with a computer or device with the capabilities to connect to the internet.

**3. Project scope**

In order to achieve the full functionality of the above-described application, the project will implement the following modules. A fully responsive frontend, a serviced backend, and a NoSQL database for storing data.

The functionality that will be implemented consists of the following modules:

*Users module*

- New user's registration and storing of records.

- Alert or notification on a successful registration.

- Authentication and verification of a user during login.

- Modification and update of user records.

*Posts module*

- Creation of new posts and storage of post records

- Update and deletion of post records from user’s account

- Creation of comments on a given post

*Forum module*

- Registered users joining forum discussions.

- Admin approving requests to join forums.

### Tools
1. Reactjs
2. Nodejs
3. Mongodb
4. Expressjs
5. Git & Github
6. Github actions

### Environment
Ubuntu 22.04

### [Postman documentation](https://documenter.getpostman.com/view/14678284/2s8YzZQzWe)

**4. System Architecture**
**![](https://lh4.googleusercontent.com/D_73F5r5kSgnxux1nAL7bEyMzYmldCG5YLjLbvPDmnPsufZX0Kfbq-edxlFqIDjfwtn6dj1l3l57U5lRvxuHvPhdtqld4kaQZ65TsXRhlJbM_8SYtnLW6ywZAx9kUGB5-RxhGuqZvDzC6L2bFwESKurQPmzw2QZg1_b4Fpb1jMPoFc_M0XyBRWhYtw)**

## Diagraming

### DFDs
![sw-lab-2022-UML drawio](https://user-images.githubusercontent.com/45181428/206160233-98b8fa20-cfbe-415b-bbc0-13e8311191a4.png)

### Flow chart
![sw-dev-lab-flow chart drawio](https://user-images.githubusercontent.com/45181428/206159370-082c6197-e49b-42db-8194-789b1c89eeae.png)

### Site map
![image](https://user-images.githubusercontent.com/45181428/192973524-8253ea5a-4782-49f3-8f0b-8d6fdbbf9dc1.png)

## Figma Designs
![home page](https://user-images.githubusercontent.com/45181428/206154290-4cd5da50-00a7-4cff-96af-ce404cb3a712.png)
![login user](https://user-images.githubusercontent.com/45181428/206154409-5e5eb4a2-09b8-4cf8-aa82-97913784c91d.png)
![register user](https://user-images.githubusercontent.com/45181428/206154469-49ca2746-2da4-4f87-839e-a0c62d34a4b5.png)
![library page](https://user-images.githubusercontent.com/45181428/206154571-46c803a0-fa42-4ef2-9513-c8bbb9d0fb13.png)
![read blog](https://user-images.githubusercontent.com/45181428/206154699-e6e03e2b-d8ec-4f5c-a066-384883d4da63.png)
![Create post page](https://user-images.githubusercontent.com/45181428/206153968-f6d1ca2d-9b0a-4639-ae9d-937bc64d99dd.png)
![message form](https://user-images.githubusercontent.com/45181428/206154986-3b03d7b3-151d-4ce8-bcba-67aa82edbf21.png)
![dropdown menu](https://user-images.githubusercontent.com/45181428/206155049-72ce97f9-fcb6-4446-81be-0ae24d99aa81.png)