Skip to content

nraufu/portofolio

Repository files navigation

Build Status Coverage Status Maintainability

portfolio

This is my portfolio website 🎉

features ✨

  • An admin can login into his account.
  • An admin can create a blog post.
  • An admin can edit a blog post.
  • An admin can delete a blog post.
  • A user can view all blog post.
  • A user can view a specific blog post.
  • An admin can view all queries.
  • An admin can view a specific query.
  • An admin can delete a specific query.
  • A user can add a comment on a specific blog post.
  • A user can like a specific blog post.

UI Template 💄

To view the UI click here

API Host 🌐

API endpoints are hosted Here

API Documentation 📝

API endpoints Documentation are hosted Here

Technologies && Tools

  • NodeJS - JavaScript Runtime Environment
  • ExpressJs - A Minimal Web Application Framework
  • MongoDb - A document database, which means it stores data in JSON-like documents.
  • Mocha - A JavaScript test framework for Node.js programs, asynchronous testing, test coverage reports, and use of any assertion library

Getting Started

Prerequisites

Ensure you have NodeJS installed on your computer by entering node -v on your terminal. If you don't have NodeJS installed go to the NodeJS Website, and follow the download instructions

Installation

Clone the app

  • https://github.com/nraufu/portofolio.git

Install all the packages

  • npm install

Run the server

  • npm start

Testing

Run Test case

  • npm run test

Working Routes

Endpoint Functionality
POST /auth/login admin log into his account
POST /posts/ Admin create a blog post
GET /posts/ retrieve all blog posts
GET /posts/:id retrieve a specific blog post
PATCH /posts/:id Admin modify a specific blog post
DELETE /posts/:id delete a specific blog post
POST /queries/ create a query
GET /queries/ Admin retrieve all queries
GET /queries/:id Admin retrieve a specific query
DELETE /queries/:id Admin delete a specific query
POST /posts/comment/:id add a comment on a specific blog post
POST /posts/like/:id add a like on a specific blog post

ScreenShot

portfolio about

License

  • MIT

Author

NIYONZI Raufu ✌😎