Skip to content

JackieBinya/free-mentors-challenge-final

Repository files navigation

Free Mentors

Free Mentors is a social initiative where accomplished professionals become role models to young people to provide free mentorship sessions.

Build Status Coverage Status Maintainability

Table of Contents

  1. Prerequisites
  2. Tools
  3. Getting Started
  4. Installing the Api
  5. Running Tests
  6. API Endpoints
  7. External Links
  8. Author

Prerequisites

Before you clone this repo ensure that you have the following already installed on your machine

  • Visual Studio Code: get it here, OR any text editor OR IDE of your choice
  • git: get it here.
  • Node.js: get it here.
  • PostgreSQL: get it here.

Tools

  • Postman is the only complete API development environment, and flexibly integrates with the software development cycle.
  • Testing ..* Mocha A javascript testing framework. ..* Chai A test assertion library for Javascript.
  • Swagger is an open-source software framework backed by a large ecosystem of tools that helps developers design, build, document, and consume RESTful Web services
  • Pivotal Tracker is the agile project management tool of choice for developers around the world for real-time collaboration around a shared, prioritized backlog.
  • Heroku is a platform as a service (PaaS) that enables developers to build, run, and operate applications entirely in the cloud.
  • Travis CI is a hosted, distributed continuous integration service used to build and test software projects hosted at GitHub.
  • Coveralls consolidates the results from a suite of static analysis tools into a single, real-time report, giving your team the information it needs to identify hotspots, evaluate new approaches, and improve code quality(from crunch base).

Getting Started

To clone this repo run the following command

git@github.com:JackieBinya/free-mentors-challenge-final.git

Set up the server

  • Run the following command on your terminal run to install all dependencies listed in the package.json file npm install
  • Then proceed to create a .env file, then set up all the environmental variables listed in the .env.sample file.
  • To start your server, run the following command on the terminal npm dev:start

Running the tests

To run the test for the api

npm test

API Endpoints

These are the endpoints for this api :

HTTP Method Endpoint Functionality
POST /api/v1/auth/signup Creates a new user account
POST /api/v1/auth/signin Allows an existing user to sign in
PATCH /api/v1/user/:userId Change a user to a mentor.
GET /api/v1/mentors Get all mentors
GET api/v1/mentors/:mentorId Get a specific mentor
POST api/v1/sessions Create a mentorship session request
PATCH api/v1/sessions/:sessionId/accept A mentor can accept a mentorship session request
PATCH api/v1/sessions/:sessionId/reject A mentor can reject a mentorship session request
GET api/v1/sessions Get all mentorship session requests

External Links

Author

About

Andela Developers Challenge Kigali Cycle 10

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published