Build an address book application that allows a user to
- Create a contact group
- Edit a contact group
- Delete a contact group
- Add a contact
- Edit a contact
- Delete a contact
- See a list of contacts separated by groups
- When adding/editing/deleting something, the UI should respond.
- Basic inputs should validate
- Anything else you think would be worthwhile
The application should be written as a single page style application that relies on the backend mostly as an api, and should remember its state via the database when the page is reloaded. There are no requirements on design, it should simply be fairly clean and responsive.
You don't need to worry about API authentication or rate limiting. Assume that the user is allowed to access the API an unlimited number of times.
- Contact Group: Has a name and contains many contacts.
- Contact: Should contain basic information i.e. (First Name, Last Name, Email, Address, Phone Number, etc)
Aside from the following requirements, you can make use of any tools that you want. At the end, push the code up to a repository on Github and share with me the link.
- Use PHP 5.3+
- Use a framework such as Symfony2 or Silex.
- Use MySQL as a database
- Provide some method to build out database schema for testing
- Use Bootstrap, Foundation or some sort of other CSS framework (mostly to save time)
- Bonus points for using a frontend framework such as Angular. :)