Frontend & Node.js micro-project ideas that challenge specific skills.
Each project should meet the following criteria:
- Focus on a small collection of features that will almost certainly be required in a quality, production web application.
- Identify two or three skills targeted in the challenge
- Refrence any prerequisites or skills needed to complete the challenge and learn the targeted skills
- All prerequisites must be attainable through projects listed as a project in this repo. If it doesn't exist, then make it.
- Relevant, free materials & resources should be listed with each project.
(These are not yet ordered or linked together according to the above standards. )
- Find a javascript (or jQuery) pluggin that doesn't have tests. Fork the repo and write tests with Jasmine. Bonus: Send a pull request to the source repo once a few tests are complete.
- Find an API at http://www.programmableweb.com/ and use AJAX to display content in your own archive. Bonus: Use a templating language like handle bars to display data
- Refactor a jQuey plugin to eliminate the jQuery depenency.
- Use Google Maps API and HTML5 Geo Location to show a client's current location. Bonus: Use web sockets to track and update the map in real time.
- Write a utility that generates a randomized, decorative background for any block level element.
- HTML5 Form that saves progress to locaal storage as the user fills it out. Bonus: Post data to NoSQL database when the user submits the form.
- Refactor a terrible script. Bonus: Use coffeescript.
- Given two divs, write CSS to arrange as columns in as many ways as you can think of. Bonus: Descibe pros and cons of each method in paragraphs within each implimentation.
- Build a simple, responsive dropdown-menu.
- Build a readable, responsive blog post. Focus on redability and responsive content. Bonus: Determine best practice for responsive images and include a featured image.
- Style a custom Google Map with Google Maps API. Examples at snazzymaps.com
- Refactor a terrible stylesheet. Bonus: Use Sass and write a mixin to reduce repetition.
- Create project templates according to archive values.
- Add dificulty tags to each project.