Skip to content

PHP app used to evaluate potential front-end candidates.

License

Notifications You must be signed in to change notification settings

Kotomi-Ichinose/frontend-test

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AskNicely PHP front-end skill test

Application

The TODO App allows a user to add reminders of thing he needs to do. Here are the requirement for the app.

  • Users can add, delete and see their todos.
  • All the todos are private, users can't see other user's todos.
  • Users must be logged in order to add/delete/see their todos.

Credentials:

  • username: user1
  • password: user1

Homepage:

Homepage

Login page:

Login page

Todos:

Todos

Requirements

  • php 5.3+
  • mysql
  • A github account

Installation

/!\ You need to fork this repository. See How to submit your work?

php composer.phar install
cp config/config.yml.dist config/config.yml
mysql -u root <database> < resources/database.sql
mysql -u root <database> < resources/fixtures.sql
php -S localhost:1337 -t web/ web/index.php

You can change the database connection from the file config/config.yml.

Instructions

You will be asked to improve the code of this app with the following tasks.

You can complete the tasks in any order.

What we are looking for?

  1. Separate your commits by task and use the following format for your commit messages: TASK-{task number}: {meaningful message}
  2. We care about UI/UX, any attention to detail in the UI will be noticed. Please dont hack in UI changes.
  3. Simple clear code comments are helpful.

Tasks

  • TASK 1: As a user I can mark a todo as completed.
  • TASK 2: Using JQuery, Vue.js, or React render the todo list dynamically and allow the delete and completed buttons to work via Ajax
    We care about the user experience here, this might be animation?

Extra tasks:

  • Fix any bugs you may find.
  • Fix any security issues you may find.
    • Not fixed, but SQL injection is a major security issue
    • As well as no authentication checks for delete/edit apis (you can edit/delete other user's todos)
  • Adding a few unit tests to show us that you understand how they work is a bonus.

Documentation

This app use Silex, a micro-framework based on the Symfony2 Components. Documentation can be found here: http://silex.sensiolabs.org/documentation

How to submit your work?

  1. First you need to fork this repository.

Forking a repo

  1. Then clone your fork locally.

Cloning a repo

  1. Install the app locally. See the [Installation Guide] (#Installation).
  2. Once you've completed your work, you can submit a pull-request to the remote repository.

 a Pull Request

  1. Review your changes and validate.

Validating a Pull Request

And you're done!

More documentation on Github:

About

PHP app used to evaluate potential front-end candidates.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published