Skip to content
No description, website, or topics provided.
PHP Vue HTML JavaScript CSS Shell Dockerfile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
api Adding PHPDoc Missing Feb 11, 2020
front
mysql
.env.travis
.gitignore
.travis.yml
README.md
deploy.sh
deploy_rsa.enc
docker-compose.yml

README.md

Foleon Assessment

Travis Build Status

REST API using laravel - https://api.foleon.jezao.dev

React App - https://foleon.jezao.dev

Api Doc - Postman Documentation

Getting Started

These instructions give you a copy of the project up and running on your local machine for development and testing purposes.
See deployment for notes on how to deploy the project on a live system.

Prerequisites

PHP ^7.3

Mysql ^5.4

Redis

NodeJS

Composer

X-Debug

Running locally - Installing

Starting from the principle that your local environment already has all the prerequisites installed, follow the steps below:

Clone the repository and move to target directory

git clone https://github.com/jezao/foleon-assessment.git foleon

Go to the API folder and install the project dependencies

cd foleon/api && composer install

Create a .env file and set your environment vars

cp .env.example .env

Setup the project

php artisan key:generate \
&& php artisan migrate --force \
&& php artisan passport:install

Seeding with Fake Data

This command generate users, events, groups and connections data for development and testing purposes

php artisan db:seed

Building User authentication views

npm install && npm run dev

Serving API application for development

php artisan serve --port=8084

Go to the "front" directory. Install and run npm

cd ../front && npm install && npm start

Now our API is running at port 8084, and our Frontend app is running at port 3000 for development purposes.

http://localhost:8084 - API

http://localhost:3000 - FRONTEND

Running with Docker Compose - Installing

Make sure you are at the project root folder and run:

docker-compose up 

@todo - add Redis to Docker Container @todo - Automate frontend setup at Docker Container

Running the tests

Unit and Feature Tests configured in the api/phpunit.xml file.

./vendor/bin/phpunit

@todo - End to end test examples

And coding style tests

We are following the PSR-12 standard

./vendor/bin/phpcs app --standard=PSR12

Deployment

Production it's being deployed using Travis CI. Unit tests, code lints are made, and if successful, the application deployment starts.

See : https://travis-ci.com/jezao/foleon-assessment

@todo - Describe manual deployment

Authors

  • Jefferson Silva - Initial work - Jezao

Acknowledgments

  • Foleon for opportunity and patience.

TODO'S

  • Setup Redis as Cache Storage
  • Frontend - Develop Users List
  • Frontend - Develop User Details
  • Frontend - Develop Event Details
  • Frontend - Login with facebook
  • Generate PHPDOC & API Doc on deployment
  • Setup pagination and filter parameters to all Entities
You can’t perform that action at this time.