Using Express and Mongoose, create an application that organizes code snippets that you save for later use.
At a minimum, snippets should have:
a title a body (the code) optional notes a language tags -- that is, user-defined words or phrases that classify the code, like "authentication", "front-end", "middleware", or "database". Your application must:
- have a comprehensive set of tests for all controllers and models
- have registration and login
- allow you to create a snippet
- allow you to see a list of all your snippets
- allow you to see a list of all your snippets for a specific language
- allow you to see a list of all your snippets for a specific tag
- allow you to look at an individual snippet
- have an API to allow for creating and viewing of snippets as listed above
Advanced activities
Optimally, your snippet organizer should let people not only look at their own snippets, but also look at others' snippets. If you get to this part, your application should:
- allow you to view just your own snippets or others'
- allow you to view all snippets for another person
- allow you to view all snippets site-wide for a specific language
- allow you to view all snippets site-wide for a specific tag
- allow you to "star" or favorite other people's snippets
- allow you to sort snippets by date created or updated, and by number of stars