/doctors-registration

RESTful API for doctors registration.

Primary LanguageTypeScript

doctors-registration

About The Project

It is a RESTful API for doctors registrations. This API supports all CRUD operations. This project is also meant to be the answer for gcb group's tech interview.

Tech Stack

How To Contribute

# Clone the repository
$ git clone https://github.com/iranbrg/doctors-registration.git
$ cd doctors-registration

# Create a new branch from the `staging` and name it following
# semantic branch names (see https://gist.github.com/seunggabi/87f8c722d35cd07deb3f649d45a31082)
$ git checkout staging
$ git checkout -b feat/new-feature

# Commit your changes with semantic commit messages (see https://gist.github.com/joshbuchea/6f47e86d2510bce28f8e7f42ae84c716)
$ git add .
$ git commit -m "feat: implement new feature"

# Push your changes to GitHub, open a pull request to `staging` branch and wait for CI.
# Luckly your pull request will be merged.
$ git push origin feat/new-feature

How To Run The Project

# Clone the repository
$ git clone https://github.com/iranbrg/doctors-registration.git
$ cd doctors-registration

# Install dependencies
$ npm install

# Set enviroment variables. Create a `.env` file in the project's root
# Check `.env.example` to see what needs to be set.
$ cp .env.example .env
$ vim .env

# Run containers with `docker-compose`
$ docker-compose --profile dev up -d

# Run migrations
$ npx prisma migrate dev

# Run the server for development
$ npm run dev

Project Progress

In the main branch, one can use the stable version of this API whereas in the staging branch are the latest and more updated features.

The main is deployed on Digital Ocean and the staging branch is deployed on Heroku. Any client can consume this API.

Documentation

The documentation for this API's endpoints can be found here.

A Potman Collection is also available at docs directory