This is a Workshops-on-Demand registration portal application. It provides an open API 3.0 based api used to manage the Workshops-on-Demand project. it also provides a Database hosting the different status of participants, workshops, students.
To run the backend server API, follow the steps below:
You need to have node.js and a package manager; both npm (npm is installed with node.js) and yarn package manager.
- Node Download Page - The latest LTS version will have node.js, npm, and npx.
- Yarn Package Manager - Required.
- Install NPM modules
$ npm install or yarn install
- Configure environment
- Server:
- create a .env file using .env_example file
$ cd server
WODSENDER='' //hackshack email address to send email to registered customers
WODSENDGRIDAPIKEY="" //sendgrid api key to send emails
PORT= // run the backed server at port
WODPGDB= // postgreSQL db database name - you can set as you wish
WODPGUSER= // postgreSQL db user - you can set as you wish
WODPGPASSWD= // postgreSQL db password - you can set as you wish
JUPYTER_EMAIL='' // email of JupyterHub server to prepare notebooks
WODPOSTPORT= // Port of Postfix server to send email
FEEDBACK_URL= // Feedback URL
PRODUCTION_API_SERVER= // Production API Server hostname to access swagger doc
WODDENYLIST=example1.org,example2.org // mandatory list for the time being to blacklist these issuers
- Run the PostgreSQL database using docker compose
$ docker compose up
- In a new terminal run the api-db server:
$ npm start
- Seed the database
$ cd server
$ npm run seed-data
- Reset the database
$ cd server
$ npm run reset-data