1
0
mirror of https://github.com/sasjs/server.git synced 2025-12-10 19:34:34 +00:00
Files
server/.github/CONTRIBUTING.md
2022-02-11 12:05:05 +01:00

3.1 KiB

CONTRIBUTING

Contributions are very welcome! Feel free to raise an issue or start a discussion, for help in getting started.

Configuration

Configuration is made in the configuration section of package.json:

  • Provide path to SAS9 executable.

Using dockers:

There is .env.example file present at root of the project. [for Production]

There is .env.example file present at ./api of the project. [for Development]

There is .env.example file present at ./web of the project. [for Development]

Remember to provide enviornment variables.

Development

Command to run docker for development:

docker-compose up -d

It uses default docker compose file i.e. docker-compose.yml present at root. It will build following images if running first time:

  • sasjs_server_api - image for sasjs api server app based on ExpressJS
  • sasjs_server_web - image for sasjs web component app based on ReactJS
  • mongodb - image for mongo database
  • mongo-seed-users - will be populating user data specified in ./mongo-seed/users/user.json
  • mongo-seed-clients - will be populating client data specified in ./mongo-seed/clients/client.json

Production

Command to run docker for production:

docker-compose -f docker-compose.prod.yml up -d

It uses specified docker compose file i.e. docker-compose.prod.yml present at root. It will build following images if running first time:

  • sasjs_server_prod - image for sasjs server app containing api and web component's build served at route /
  • mongodb - image for mongo database
  • mongo-seed-users - will be populating user data specified in ./mongo-seed/users/user.json
  • mongo-seed-clients - will be populating client data specified in ./mongo-seed/clients/client.json

Using node:

Development (running api and web seperately):

API

Navigate to ./api There is .env.example file present at ./api directory. Remember to provide enviornment variables else default values will be used mentioned in .env.example files Command to install and run api server.

npm install
npm start
Web

Navigate to ./web There is .env.example file present at ./web directory. Remember to provide enviornment variables else default values will be used mentioned in .env.example files Command to install and run api server.

npm install
npm start

Development (running only api server and have web build served):

API server also serving Web build files

There is .env.example file present at ./api directory. Remember to provide enviornment variables else default values will be used mentioned in .env.example files Command to install and run api server.

cd ./web && npm i && npm build && cd ../
cd ./api && npm i && npm start

Production

API & WEB
npm run server

This will install/build web and install api, then start prod server.

Executables

Command to generate executables

cd ./web && npm i && npm build && cd ../
cd ./api && npm i && npm run exe

This will install/build web app and install/create executables of sasjs server at root ./executables