@lmpgweb/document-generation-core
v0.4.4
Published
[![Build Status](https://lmpgweb.semaphoreci.com/badges/document-api-generation/branches/master.svg?style=shields&key=ca83d7db-7fcb-4456-b04f-8202abef80d6)](https://lmpgweb.semaphoreci.com/projects/document-api-generation)
Downloads
16
Readme
document GENERATION API CORE
document GENERATION API CORE documentation
Setup
Install the module
Installation
Create a new project and import @lmpgweb/document-generation-core
yarn add @lmpgweb/document-generation-core
Create a the file in src/server.ts
:
import * as dotenv from 'dotenv';
import { createApp } from '@lmpgweb/document-generation-core';
dotenv.config();
const app = createApp()
.listen(process.env.API_PORT || 3013);
// eslint-disable-next-line no-console
console.info(`Document generation api server started on port: ${process.env.API_PORT}`);
export default app;
Be sure you have nodemon installed (if no run: yarn add nodemon
)
Nodemon config:
{
"watch": ["./src"],
"ext": "ts",
"exec": "NODE_PATH=src ts-node -r ./src/server.ts"
}
Add the following scripts to your package.json:
"dev": "nodemon",
"dev-consumer": "yarn lmpgweb-document-generation consumer --dev",
Verify you have all the minimum env variables requires:
NODE_ENV=local
SENTRY_DSN=
API_PORT=
JWT_SECRET=
RABBITMQ_HOST=
RABBITMQ_PORT=
PDF_URL=
CLOUD_STORAGE_PROJECT_ID=
CLOUD_STORAGE_BUCKET_NAME_LUMENPULSE=
CLOUD_STORAGE_BUCKET_NAME_STERNBERG=
STORAGE_ENV=local
DEFAULT_PROJECT_IDENTIFIER=
MYSQL_DB_HOST=
MYSQL_DB_PORT=
MYSQL_DB_NAME=
MYSQL_DB_USER=
MYSQL_DB_PASSWORD=
You are ready to go!
run in 2 terminals:
yarn dev
and yarn dev-consumer document
Necessary Env variables
| Option | Description |
|------------------------------|---------------------------------------------------------------------------------------------|
| NODE_ENV
| local
, prod
or dev
|
| SENTRY_DSN
| Sentry DSN |
| API_PORT
| API port |
| JWT_SECRET
| JWT secret |
| CLOUD_STORAGE_PROJECT_ID
| Project ID from gcp |
| CLOUD_STORAGE_BUCKET_NAME_LUMENPULSE
| Name of the bucket to upload on gcp storage for the lumenpulse project |
| CLOUD_STORAGE_BUCKET_NAME_STERNBERG
| Name of the bucket to upload on gcp storage for the sternberg project |
| DEFAULT_PROJECT_IDENTIFIER
| Default project when you use multiple DB connection |
| STORAGE_ENV
| local or gcp, use gcp to upload to cloud, use local to upload only to tmp folder |
| RABBITMQ_HOST
| RabbitMQ host |
| RABBITMQ_PORT
| RabbitMQ port |
| RABBITMQ_USER
| RabbitMQ user |
| RABBITMQ_PASSWORD
| RabbitMQ password |
| RABBITMQ_PREFIX
| RabbitMQ queue prefix |
| MYSQL_DB_NAME
| MySQL database name |
| MYSQL_DB_USER
| MySQL user |
| MYSQL_DB_PASSWORD
| MySQL password |
| MYSQL_DB_HOST
| MySQL host (default: 127.0.0.1) |
| MYSQL_DB_PORT
| Mysql Port (default: 3306) |
| PDF_URL
| Api url to use to print pdf (Puppeteer) |
| SENTRY
| Sentry DSN |