Meteor Todo Example App
Brian Chu
Hackers@Berkeley
Meteor only runs on Unix OSes (OSX, Linux, etc.)
Make sure to install Meteor with: curl https://install.meteor.com/ | sh
.
Go to briantodo.meteor.com to view the finished app.
Documentation:
- Meteor docs
- Handlebars (template language)
- Meteor extensions to Handlebars
- MongoDB modifiers
- Mongo selectors
Things you can add:
- Add downvoting
- You will need to modify the template. The HTML code for a down arrow is
↓
- You will need to add an event listener to clicks on the downvote arrow
- You will need to modify the template. The HTML code for a down arrow is
- Prevent tasks from being downvoted below 0
- You will need to expand on the server update code
- Add a timestamp to tasks
- This is a bit hard, feel free to skip.
- You will need to modify the template
- Look up the JavaScript Date class. (create Date objects with new Date())
- Let users set their name
- This is a bit complicated. You will need to add a text input or some kind of prompt for users to add their names.
- Then you need to associate that with todo objects
- You also need to change the template
Advanced things you can add:
- Being able to edit tasks:
- You will need to change the todo items to be text input elements
If you know git:
The master
branch starts out with the basic outline of the project. The final
branch has the finished project.
Steps:
- View empty site
- Add collection
- Add app template
- Add intial insert
- Add initial display of todos
- Add todo event, remove server initial insert
- Note need for meteor reset
- Open in another browser
- Deletion of todos - note data-id
- Upvote - need to add new fields
- Note that it doesn't sort
- Add sorting
- Show how to hack
- Insert validation
- Show how to hack update
- Update validation
- Show latency compensation / validation
- Deploy
- Next steps