My Ichtus is a web application based on GraphQL for the API and Angular for the client.
The recommended way to get a working copy is the following:
- Set up a nginx virtual host to point to
htdocs/
directory and to includeconfiguration/nginx.conf
- Create a database in MariaDB named "my-ichtus"
- Configure database in
config/autoload/local.php
(see exampleconfig/autoload/local.php.dist
) - Finally, build the app:
./bin/build.sh
To switch the API to development (to enable logging), run:
composer development-enable
Logs will be available in logs/all.log
.
When in development mode, the configuration cache is disabled, and switching in and out of development mode will remove the configuration cache.
You may need to clear the configuration cache in production when deploying if you deploy to the same directory. You may do so using the following:
$ composer clear-config-cache
Run yarn dev
for a dev server. Navigate to http://my-ichtus.lan:4200/
. The app will
automatically reload if you change any of the source files.
PHPUnit tests require a reference database dump. When the dump is loaded it will destroy existing database. This must be done once before running tests. Then each test is ran within a transaction which is rolled back, so the database state is always predictable.
To run PHPunit test:
./bin/load-test-data.php
./vendor/bin/phpunit # as many times as necessary
Run ng test
to execute the unit tests via Karma.