This is the source code for https://improv.ee, a website dedicated to listing information and events about improvised theatre.
Configuration instructions are provided for a Linux (Ubuntu) based development environment.
- Docker (latest)
- Docker Compose (latest)
openssl(apt-get install openssl)- Composer
- npm
Install vendor packages:
cd src
composer install
npm installRun the setup script:
./setup.shThis will generate a new self-signed CA and certificates for local development. You need to
install your new Certificate Authority into your web browser. Here is how
to do it for Firefox (Settings -> Certificate Authorities -> Add). The CA file for importing
is docker/lb/certs/ca.crt. If done correctly, this will make https:// "green" for our dev domains:
web.local.improv.ee will be the frontend webserver
api.local.improv.ee will be the API
DNS entries are already configured in global DNS to point to 127.0.0.1.
Review settings in src/.env - this will be your local conf.
Bring up services:
docker-compose upYou need to bootstrap the database (once) and set up Laravel.
docker-compose run webserver bash
php artisan key:generate
php artisan migrate
php artisan db:seed
php artisan passport:installIf all goes well you should have Docker containers running, database bootstrapped and webpages
(with green HTTPS) opening on web.local.improv.ee and api.local.improv.ee.
API documentation is generated from API source code using apidoc-generator.
To change it, change PHP code comments on API controllers (src/app/Http/Controllers/Api/).
Run:
$ php artisan apidoc:generateOpen public/doc/index.html with a local webbrowser.
S3 buckets are used for data storage (ex: uploaded images). See config/filesystems.php for more.
Google Translate is used for translating text - see config/googletranslate.php for more.
Google Places is used for fetching Place information.
Want to help? Great - submit a pull request or an issue.
Licensed under Apache-2.0 license.