Design and implement a RESTful web service to facilitate a user authentication system. The authentication mechanism should be token based. Requests and responses should be in JSON.
Models
The User model should have the following properties (at minimum):
- name
- password
You should determine what, if any, additional models you will need.
Endpoints
All of these endpoints should be written from a user's perspective.
- User Registration
- Login (token based) - should return a token, given valid credentials
- Logout - logs a user out
- Update a User's Information
- Delete a User
README
Please include:
- a readme file that explains your thinking
- how to setup and run the project
- if you chose to use a database, include instructions on how to set that up
- if you have tests, include instructions on how to run them
- a description of what enhancements you might make if you had more time.
- Know issues if any
Additional Info
- We expect this project to take a few hours to complete (but no rush, take your time and do your best!)
- You can use Rails/Sinatra, Python, Go, node.js or shiny-new-framework X, as long as you tell us why you chose it and how it was a good fit for the challenge.
- Feel free to use whichever database you'd like; we suggest Postgres or DynamoDB for noSql db.
- Bonus points for security, specs, lambda, dynamodb and set up any free CI to test it.
- Do as little or as much as you like.
Please fork this repo and commit your code into that fork. Show your work and process through those commits.