fullcards is an web application for creating single-page, consisted of fullsize card contents. This application is written with Next.js and TypeScript. This application needs MySQL-compatible database such as MariaDB.
- Node.js >=16.13.0
- MariaDB
yarn
yarn build
# Create required configuration files here
yarn migrate-and-startFULLCARDS_USE_PASSWORD_AUTH: (Optional) Uses password authentication when set toyesinstead of oidc authentication, useful for debuggingFULLCARDS_AUTH_PASSWORD: (Required whenFULLCARDS_USE_PASSWORD_AUTHis set toyes) Password used for authentication
Uploaded image files are located in data/images directory. Renaming files without database operation would be result in an error.
Several configuration files are located in configs directory. All config files are required.
jwks.json: Asynmentric JSON Web Key set file. Automatically created if not found.oidcConfig.json: Authorization configuration for OpenID Connect 1.0. Note that issuer MUST support Section 4 of OpenID Connect Discovery 1.0 incorporating errata set 1- required properties
issuerUrl: string type, url to issuerclient_id,client_secret,redirect_uri: Client configuration. all of them is string type.
- optional properties
scopes: array of string type, scopes which would be automatically added on request. Note thatopenid profilescope is automatically requested.additionalCheckFunction: string type, function string that getsuserinfovariable and returns boolean value whether authenticate him/her or not. For example,return userinfo.sub === 'admin';. With this example, Authentication would be failed if oidc userinfo sub property is notadmin.
- required properties
ormConfig.json: Information used for connecting to database and initializing ORM. See TypeORM DataSourceOptions reference for more details