This project uses the following technologies:
- Blackfire
- Elasticsearch with elastica.io + kibana
- MySQL
- Symfony
- ReactJS (hooks) + react-dropzone/react-dropzone
- RabbitMQ with jakubkulhan/bunny + claviska/SimpleImage
- Redis
- Install Docker
- Clone this project:
git clone https://github.com/iamandresdiaz/www.photos.io.git
- Move to the project folder:
cd www.photos.io
- Create a custom host inside
/etc/hosts
usingsudo vim /etc/hosts
and add127.0.0.1 local-www.photos.io
- Install the App dependencies and bring up the Docker containers with the command
make build
- Run
make migration
to create a migration - Run
make migrate
to apply database migration - Open 2 or more terminal tabs inside the same project folder (local-www.photos.io)
- Bring up the rabbitMQ consumers inside each terminal tab opened before and use the command
make consumer
inside each terminal tab - Go to local-www.photos.io on your browser
- Use the images provided inside the folder
./images
- In order to see the original images and their filters you will need to use the search bar to show the results
- Change the blackfire environment values inside
docker-compose.yml
to your own blackfire Client and Server keys - Run
make down
to turn down docker containers - Run
make build
if you haven't done it before, otherwise usemake start
to turn up the docker containers without an optimized project build - Run
make profile
to make a profiling of the application with blackfire
โ
The last Lighthose report can be consulted here
but you need to run make build
first in order to see the report