Hello 👋
This is our challenge for potential new team members. The code is for a simple real-time TODO app. The challenge here is to fix some bugs, add some features and make some improvements.
When you're finished, you should have a real-time TODO app that two or more people could use to share TODO's with one another. Imagine a TODO list our team could use for office chores, for example.
- When a TODO is made, completed or deleted, it should show up the same way on all clients. To test this, we recommend having two browser windows open (one incognito and one not)
- We're evaluating you on the quality and completion of the quest list below. Do you commit often? ? Did you write team friendly code? Is the UI that you've built easy to use and easy on the eyes? 👀
- The challenge should take 3-6 hours
- It should be fun! If you're stuck on a bug or something needs clarification you can [email me](mailto:[email protected]?subject=Hiring Challenge) for help
- If you prefer a functional style (or some other style of programming) feel free to switch things up to suit how you write best. The codebase is intentionally small to support different styles/complete rewrites. Don't let how we've set things up get in the way of showing us your best work
- Create a repo (ideally on github) and make a
init
commit - Commit often, with high quality comments
- Write readable, performant code
- Fix all the bugs
- Add a feature that allows users to complete tasks
- Add a feature that allows users to delete tasks
- Add a feature that allows the completion of all tasks
- Add a feature that allows the deletion of all tasks
- Add caching to the client app so that when we lose our connection we can still see our TODO's
- Give it some UX/UI ❤️, our approach is make it easy to use- then make it beautiful
This is a Node app so you'll need Node and NPM to get it up on its feet.
npm install
npm start
Now open index.html
in your browser. Things won't work at first, but once the server is running, you should see your TODO's under the input.
Great job! When you're all finished, send me an email with a link to the repo and I will check it out! 🙌