Skip to content

Latest commit

 

History

History
399 lines (309 loc) · 11 KB

README.md

File metadata and controls

399 lines (309 loc) · 11 KB

GitHub issues GitHub forks GitHub stars GitHub license

devOgraphy Api

devOgraphy_mobile

Project Description

devOgraphy API is a Node, Express, and Mongoose API that stores programming language data. Create, Read, Update, and Destroy functionality are built throughout the app.

Project Link: devOgraphy

Project API: devOgraphy-Api

Programs/Applications Used:

Backend (Framework)

  • Express
  • NodeJS

Database

  • MongoDB

Deployment

  • Heroku

Dependencies

"cors": "^2.8.5", "dotenv": "^10.0.0", "express": "^4.17.1", "mongoose": "^5.13.2"

Libraries

  • Mongoose

Package Manager

  • Yarn

Installation

devOgraphy api requires nodemon and yarn to run.

  1. Download the repo using git.
    git clone [email protected]:Devography/devography-api.git
    
  2. Install yarn dependencies
    yarn add cors dotenv express mongoose
    
  3. Start the Server
    yarn run dev
    

Learning Experience

This was our first project as a team and so we relied heavily upon each other to debug our own problems. We learned a lot about division of labor, project planning, project management, and how to utilize each of our individual strengths. Read documentation!!! Most of the answers are available if you know where and how to search.

Component Tree

component-tree.pngcomponent-tree

Dynamic API Calls

By creating our own API, the App is able to make dynamic request. For this app, the programming languages endpoint was used. So different props variables were created to make multiple calls.

APIs

GET: /languages

  • Description: responds with a list of all programming languages

GET: /languages/:id

  • Description: responds with a specified languages
  • Query Parameters:
    Parameter Type Description
    id string a string value representing the language id. (required value)

GET: /comments/

  • Description: response with a list of all comments

POST: /languages

  • Description: creates a new language in the database excluding the comments
  • Body Parameters:
    Parameter Type Description
    Name string a string of the programming language name
    Author string a string of the programming language name
    Year number a number of the year the programming language was founded
    Logo string a string of a url of the programming language logo

POST: /comments/:id

  • Description: creates a new comment in the database
  • Body Parameters:
    Parameter Type Description
    id string a string value representing the language id. (required value)
    Name string a string of the comment creator
    Body string a string of a comment

PUT: /language/:id

  • Description: updates a specific language based on the provided language id.
  • Body Parameters:
    Parameter Type Description
    id string a string value representing the language id. (required value)
    Name string a string of the programming language name
    Author string a string of the programming language name
    Year number a number of the year the programming language was founded
    Logo string a string of a url of the programming language logo

PUT: /comments/:id

  • Description: updates a specific comment based on the provided comment id.
  • Body Parameters:
    Parameter Type Description
    id string a string value representing the comment id. (required value)
    Name string a string of the comment creator
    Body string a string of a comment

DELETE: /languages/:id

  • Description: responds with a specified languages
  • Query Parameters:
    Parameter Type Description
    id string a string value representing the language id. (required value)

DELETE: /comments/:id

  • Description: responds with a specified languages
  • Query Parameters:
    Parameter Type Description
    id string a string value representing the language id. (required value)

Future Directions

  • [] Create a search feature that allows me to search either programing languages or paradigm.
  • [] Create a filter
  • [] Edit Schema to include different usage.
  • [] Create a user model

Accomplishments

This application uses a Node, Express, and Mongoose API. There is Create, Read, Update, and Destroy functionality built throughout the app.

Support

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request.

Steps:

  1. Fork the Project
  2. Create your Feature Branch
    • Ex. git checkout -b <your_branch_name>
  3. Add your Changes
    • Ex. git add .
  4. Commit your Changes
    • Ex. git commit -m "Description of your Changes"
  5. Push to the Branch
    • Ex. git push origin <your_branch_name>
  6. Open a Pull Request

License

  • License - Not Specified

Contact


@trieule50

Trieu Le - Full Stack Web Developer
GitHubLinkedIn

@CrowdedAstronaut

Ross Phillips - Full Stack Web Developer
GitHubLinkedIn

@abrarmohammed109

Mohammed Abrar - Full Stack Web Developer
GitHubLinkedIn

@turekjesse

Jesse Turek - Full Stack Web Developer
GitHubLinkedIn

@income3000

Lou Thomas - Full Stack Web Developer
GitHubLinkedIn