API CORE
API CORE documentation
Setup
Install the module
yarn add @ax2/api-core
Necessary Env variables
Option | Description |
---|---|
NODE_ENV |
local , prod or dev
|
LANG_FALLBACK |
default lang to use (default ='en') |
LANG_KEYS |
multilang keys (example 'fr,en') |
MEDIA_DIRECTORY |
Directory on gcp in bucket |
GCP_PROJECT_ID |
Project ID from gcp |
STORAGE_BUCKET |
Name of the bucket in on gcp storage |
MEDIA_RESIZING |
Set to 1 to use resize media |
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) |
REDIS_HOST |
Redis Host (default: 127.0.0.1) |
REDIS_PORT |
Redis Port (default: 6379) |
REDIS_PASSWORD |
Redis Password (default: '') |
REDIS_PREFIX |
Redis prefix for cache key (default: '') |
REDIS_ENABLE |
Set to 1 to enable Redis (default: disabled) |
SENTRY |
Sentry DSN |
API_VERSION |
API version return in response |
SITE_URL |
SITE url for referer to allow cms preview |
Load the module into the core
import * as CORE from '@ax2/api-core';
class Article extends CORE.Citadelle {}
import { Citadelle } from '@ax2/api-core';
class Article extends Citadelle implements ModelItem {}
Available class
// Config connection
import { db, language, storage } from '@ax2/api-core';
// Controller core
import { MotherBase } from '@ax2/api-core';
// Helpers function
import { ApiResponse, redis, Sentry, Validator } from '@ax2/api-core';
// Model function
import { Citadelle } from '@ax2/api-core';