This is a small web app for demonstration purposes. It's a reload-based and fully responsive web application. The localization of the whole app is kept in German. Momentary, there is no possibility to switch to English.
- Install and configure DDEV
- Clone this repo
- Fire up project in DDEV. This may take a while. ☕
- Install composer dependencies, node modules and create database in DDEVs PHP-container
Shell Script:
# install and configure
git clone https://github.com/christian-kreplin/case-study
cd case-study
# fire up ddev
ddev start
# install dependencides
ddev ssh
composer install
npm install
# build project and create database
npm run build
php bin/console doctrine:migrations:migrateExecute Fixtures to generate demo data
ddev ssh
php bin/console doctrine:fixtures:loadLaunch Application
ddev launchGet info and links, e. g. for PhpMyAdmin and MailPit
ddev describeNon-exhaustive list:
This app was designed to fulfill the following purposes:
- Account handling: Let a User create a new account, log in/log out and reset it`s password.
- Role Management: Basic management of actions that require a logged-in user. Guest users (not logged-in) can only view some parts of the application.
- BREAD operations: All Entities can be handled via BREAD operations. Some are limited to logged-in users.
- Redakteur: This is the users entity and only accessible when logged in.
- Kunden: Customers which can be related to Case Studies. Not logged-in users can only see active customers.
- Case Studies: The actual case studies with relation to a customer. Not logged-in users can only see case studies of active customers.
It's possible to upload images to customers and case studies. If there is no image, the app generates an avatar.