Skip to content
This repository has been archived by the owner on Jul 30, 2024. It is now read-only.

Latest commit

 

History

History
59 lines (45 loc) · 2.14 KB

DEVELOPERS.MD

File metadata and controls

59 lines (45 loc) · 2.14 KB

Developers

About the setup

This project uses the symfony framework for its php backend, and minimal JavaScript dependencies for the frontend.

backend:

  • symfony/sceleton, orm, translations, logging, dotenv, mailer, form, requirements-checker and templates.
  • dev dependencies include encore, orm-fixtures, cs-fixer, security-checker, debug, simple-phpunit, brainmaestro/composer-git-hooks.
  • for deployment, famoser/agnes is used.

frontend:

  • bootrap as UI framework
  • fontawesome for the icons (you will need a license key)

Developing

setup:

  • composer install to install backend dependencies
  • yarn install to install frontend dependencies

developing:

  • symfony server:start to start the symfony server
  • yarn run dev-server to start the frontend server
  • visit localhost:8000 and login with [email protected], asdf
  • test error templates inside TwigBundle/views by accessing /_error/404 and /_error/500

clean up:

  • vendor/bin/php-cs-fixer fix to autoformat code
  • bin/phpunit to execute tests

database commands:

  • doctrine:migrations:diff to generate a new migration class
  • doctrine:migrations:migrate to execute all migrations
  • doctrine:fixtures:load to load fixtures

deployment:

  • vendor/bin/agnes release to create a new release
  • vendor/bin/agnes deploy to deploy a release or commitish

Troubleshooting

fortawesome

to be able to execute yarn install, you need to download the fortawesome pro fonts. For this, you need to setup its registry. You can do so by executing
npm config set "@fortawesome:registry" https://npm.fontawesome.com/
npm config set "//npm.fontawesome.com/:_authToken" AUTH_TOKEN
You can find the auth token on the fontawesome account page

You need to add this auth token to all CI services too.
scrutinizer

build:
    dependencies:
        before:
            - npm config set "@fortawesome:registry" https://npm.fontawesome.com/
            - npm config set "//npm.fontawesome.com/:_authToken" FONTAWESOME_AUTH_TOKEN