App template repository to scaffold a new gcgov/framework
- Use this template to generate a new repository for your app
- Replace app variables across configuration files:
- Variables to replace:
{app_guid}
-> unique guid (generate from https://www.guidgenerator.com/){app_title}
-> human-readable title of app{app_root_url}
-> root url of app (ex: https://signatures.garrettcounty.local){app_base_path}
-> base url of app (ex: /api/, Or: / if site is at url root){app_relative_url}
-> if your app will not run at the root of the domain, add the relative url to the app: ie: if your site will serve from http://example.com/api, replace with "/api"{app_redirect_after_login}
-> if appConfig.enableAuthRoutes==true, user will be redirected to this url after successful login{app_redirect_after_logout}
-> if appConfig.enableAuthRoutes==true, user will be redirected to this url after successful login{app_absolute_path}
-> absolute path to app root directory{app_php_path}
-> absolute path to the PHP executable root directory{app_smtp_server}
-> smtp server address{app_smtp_sendmail_from_address}
-> default email address to send emails from{app_smtp_sendmail_from_name}
-> default human-readable name that will appear as the sender of emails{app_ssl_path}
-> absolute path to a current cacert.pem file for CURL and OpenSSL extensions- Global cacert.pem is available from Mozilla at https://curl.se/docs/caextract.html
- Use behind a firewall with SSL decryption will require appending private
- Microsoft Services
{app_microsoft_client_id}
-> Microsoft Azure App client id{app_microsoft_client_secret}
-> Microsoft Azure App client secret{app_microsoft_tenant}
-> Microsoft App tenant{app_microsoft_drive_id}
-> Sharepoint Drive Id (if using files integration){app_microsoft_default_from_address}
-> Default from email address (if using Graph API Mail.Send)
- Payjunction Services
{app_payjunction_username}
-> PayJunction API Username{app_payjunction_password}
-> PayJunction API Password{app_payjunction_api_key}
-> PayJunction API Key{app_payjunction_terminal_id}
-> PayJunction Smart Terminal Id - optional{app_payjunction_merchant_id}
-> PayJunction Smart Terminal Merchant Id - optional but required if using smart terminal
- Production Variables:
{prod_app_root_url}
{prod_app_base_path}
{prod_app_redirect_after_login}
{prod_app_redirect_after_logout}
{prod_app_absolute_path}
{prod_app_php_path}
{prod_app_ssl_path}
- Microsoft Services
{prod_app_microsoft_client_id}
{prod_app_microsoft_client_secret}
{prod_app_microsoft_tenant}
{prod_app_microsoft_drive_id}
{prod_app_microsoft_default_from_address}
- Payjunction Services
{prod_app_payjunction_username}
{prod_app_payjunction_password}
{prod_app_payjunction_api_key}
{prod_app_payjunction_terminal_id}
{prod_app_payjunction_merchant_id}
- Files to replace variables in:
/srv/app.local/php.ini
/srv/app.local-cli/php.ini
/srv/app.prod/php.ini
/srv/app.prod-cli/php.ini
/app/config/app.json
/app/config/environment.json
/app/cli/local.bat
/app/cli/local-debug.bat
/app/cli/prod.bat
- Variables to replace:
- Move
/composer-local.json
to/composer.json
- Move
/app/config/environment-local.json
to/app/config/environment.json
- Move
/www/web-local.config
to/www/web.config
- Configure web server
- Root directory must map to
/www/
- PHP instance must use
/srv/app.local/php.ini
for configuration
- Root directory must map to
- Test widget module.
- Create your models, controllers, and services!