Giter Site home page Giter Site logo

blog-api's Introduction

Blog API ๐Ÿ“š

Write and read articles!

Deployed at: https://young-hamlet-80803.herokuapp.com/api/v1

Features

  1. User can create an account and have a profile.
  2. User can view other users profile.
  3. User can create articles.
  4. User can read articles from other authors.
  5. User can follow and unfollow other users.
  6. User can favourite and unfavourite an article.
  7. User can comment and delete comment from an article.
  8. Users have a feed of the articles written by other users they follow.

Technologies Used

  1. Node.js
  2. Express.js
  3. MongoDB

Installation

  • Make sure you have nodejs and mongodb installed.

  • Clone repo

      - git clone https://github.com/femicodes/blog-api.git
      - cd blog-api
      - yarn install

API ENDPOINTS

Authentication

URI HTTP Method Description
/api/v1/auth/signup POST Create an account.
/api/v1/auth/login POST Log in to an account.

API Routes

URI HTTP Method Description
/api/v1/feed GET List of articles written by authors a user follows.
/api/v1/profile/:username GET Get a user's profile by username.
/api/v1/profile/:username PATCH Edit user profile.
/api/v1/:username/follow POST Follow another user by username.
/api/v1/:username/unfollow POST Unfollow another user by username.
/api/v1/articles GET Fetch all articles
/api/v1/articles POST Create an article.
/api/v1/articles/:slug GET Get article by slug.
/api/v1/articles/:id DELETE Delete article by id.
/api/v1/articles/:article/comments POST Add comment by article id.
/api/v1/articles/comments/:comment DELETE Delete article comment by comment id.
/api/v1/:article/favourite POST Favourite an article by article id.
/api/v1/:article/unfavourite POST Unfavourite an article by article id.

blog-api's People

Contributors

femicodes avatar

Stargazers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.