Hospital-Management-System/server/README.md

117 lines
2 KiB
Markdown

# HMS server-side code
## Get Started
Get started developing...
```shell
# install deps
npm install
# run in development mode
npm run dev
# run tests
npm run test
```
## PLEASE READ THIS WHEN ADDING YOUR PART TO SERVER
There are two key files that enable you to customize and describe your API:
1. `server/routes.js` - This references the implementation of all of your routes. Add as many routes as you like and point each route your express handler functions.
2. `server/common/api.yaml` - This file contains your [OpenAPI spec](https://swagger.io/specification/). Describe your API here. It's recommended that you to declare any and all validation logic in this YAML. `express-no-stress-typescript` uses [express-openapi-validator](https://github.com/cdimascio/express-openapi-validator) to automatically handle all API validation based on what you've defined in the spec.
## Install Dependencies
Install all package dependencies (one time operation)
```shell
npm install
```
## Run It
#### Run in *development* mode:
Runs the application is development mode. Should not be used in production
```shell
npm run dev
```
or debug it
```shell
npm run dev:debug
```
#### Run in *production* mode:
Compiles the application and starts it in production production mode.
```shell
npm run compile
npm start
```
## Test It
Run the Mocha unit tests
```shell
npm test
```
or debug them
```shell
npm run test:debug
```
## Try It
* Open your browser to [http://localhost:3001](http://localhost:3001)
* Invoke the `/examples` endpoint
```shell
curl http://localhost:3001/api/v1/examples
```
## Debug It
#### Debug the server:
```
npm run dev:debug
```
#### Debug Tests
```
npm run test:debug
```
#### Debug with VSCode
Add these [contents](https://github.com/cdimascio/generator-express-no-stress/blob/next/assets/.vscode/launch.json) to your `.vscode/launch.json` file
## Lint It
View prettier linter output
```
npm run lint
```
Fix all prettier linter errors
```
npm run lint
```
## Deploy It
Deploy to CloudFoundry
```shell
cf push server
```