[DEPRECATED] CSR & frameworkless based web application
 
 
 
 
Go to file
sundowndev 783deaf460 [Fix:bug] composer install not working 2018-07-12 18:04:11 +02:00
client Initial commit 2018-07-08 20:17:19 +02:00
docker Initial commit 2018-07-08 20:17:19 +02:00
server WTFPL license in composer.json 2018-07-10 11:46:31 +02:00
.dockerignore Initial commit 2018-07-08 20:17:19 +02:00
.gitignore Initial commit 2018-07-08 20:17:19 +02:00
.travis.yml Fix typo in scripts 2018-07-10 10:59:04 +02:00
Dockerfile [Fix:bug] composer install not working 2018-07-12 18:04:11 +02:00
Dockerfile.client Initial commit 2018-07-08 20:17:19 +02:00
Dockerfile.h2-proxy Initial commit 2018-07-08 20:17:19 +02:00
Dockerfile.nginx Initial commit 2018-07-08 20:17:19 +02:00
LICENSE WTFPL license 2018-07-10 11:12:44 +02:00
README.md Architecture and API endpoints 2018-07-10 12:31:57 +02:00
docker-compose.yaml Initial commit 2018-07-08 20:17:19 +02:00

README.md

interview-v1

Description

1/ Développer en PHP une mini API REST avec output en json

Cette api doit:

  • Gérer 2 types d'objets: User (id, name, email) Task (id, user_id, title, description, creation_date, status)

  • Mettre à disposition des endpoints permettant de récupérer les données d'un user et d'une task. (ex: /user/$id)

  • L'api doit être capable de manipuler la liste des taches associées à un utilisateur en offrant la possibilité de: Récupérer cette liste de taches Créer et ajouter une nouvelle tache Supprimer une tache

En développant cette API, vous devez garder en tête qu'elle est susceptible d'évoluer (nouveaux retours, nouveaux attributs dans les objets)

2/ Développer un front en HtML/JS/CSS (pas de design nécessaire)

Ce front doit communiquer avec l'api en ajax. On doit pouvoir ajouter/supprimer un utilisateur Gérer la liste des tâches d'un utilisateur (liste / ajout / suppression)

(pas de framework)

Installation and usage

$ git clone git@github.com:Sundowndev/interview-v1.git
$ cd interview-v1/
$ docker-compose up -d

You can now browse the front app at localhost:3000 and the API at localhost:8000.

Architecture

The architecture is made of a simple client -> server communication using Docker containers.

Database

Security

API endpoints

Method / Route Resource Description
POST /auth Authentification Connect and get an api key
GET /tasks Task Get latest taks
GET /tasks/{id} Task Get a task by given id
POST /tasks Task Create a task
PUT /tasks/{id} Task Update a task by given id
DELETE /tasks/{id} Task Delete a task by given id
GET /me Users Get your own account data
GET /users/{id}/tasks Users,Tasks Get tasks from a given user id