Skip to content

RyanSKang/NoSQL-API

Repository files navigation

NoSQL-API

Description:

This application is a built API for a social network web application where users can share their thoughts, react to friends' thoughts, and create a friend list. This application utilizes Express.js and Mongoose packages.

User Story

AS A social media startup
I WANT an API for my social network that uses a NoSQL database
SO THAT my website can handle large amounts of unstructured data

Table of Contents:

Overview

Acceptance Criteria

GIVEN a social network API
WHEN I enter the command to invoke the application
THEN my server is started and the Mongoose models are synced to the MongoDB database
WHEN I open API GET routes in Insomnia for users and thoughts
THEN the data for each of these routes is displayed in a formatted JSON
WHEN I test API POST, PUT, and DELETE routes in Insomnia
THEN I am able to successfully create, update, and delete users and thoughts in my database
WHEN I test API POST and DELETE routes in Insomnia
THEN I am able to successfully create and delete reactions to thoughts and add and remove friends to a user’s friend list

Installation

Git clone Repository: NoSQL-API
Following Installation Needed:
-Express v4.17.1
-Mongoose v7.4.1 -Moment v2.29.4
-Validator v13.9.0
-Nodemon [v3.0.1] (https://www.npmjs.com/package/nodemon)

Usage Instructions

  1. Using a source code editor, open the cloned repository
  2. Open integrated terminal in the root folder and execute an "npm i"
  3. On integrated terminal execute "npm run seed" and then "npm start"
  4. Use Insomnia in order to navigate API routes (POST/GET/DELETE)

Screenshots

Figure 1. Get All User

Screenshot 2023-08-04 at 10 13 52 PM

Figure 2. Get All Thoughts

Screenshot 2023-08-05 at 1 24 44 AM

Figure 3. Create a Reaction

Screenshot 2023-08-05 at 1 25 06 AM

Figure 4. Add a Friend

Screenshot 2023-08-05 at 1 26 11 AM

Walkthrough Video

Walkthrough Video Link

Credits

-DU-Virt-FSF-PT-02-2023-U-LOLC | NoSQL 28-Stu_Mini-Project
-AskBCS learning assistant
-DU Dashboard Module 18 "Getting Started" Guidelines
Stackoverflow Email Validation
Schema Types

About

Module 18 Challenge

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published