We appreciate you taking the time to participate and submit a coding challenge. In the next step we would like you to create/extend a backend REST API for a simple note-taking app. Below you will find a list of tasks and limitations required for completing the challenge.
- Users can add, delete and modify their notes
- Users can see a list of all their notes
- Users can filter their notes via tags
- Users must be logged in, in order to view/add/delete/etc. their notes
- Title
- Body
- Tags
- Search contents of notes with keywords
- Notes can be either public or private
- Public notes can be viewed without authentication, however they cannot be modified
- User management API to create new users
- use Kotlin
- use Ktor
- test accordingly
Try to produce something that is at least minimally functional. Part of the exercise is to see what you prioritize first
when you have a limited amount of time. For any unfinished tasks, please do add TODO
comments to your code with a
short explanation. You will be given an opportunity later to go into more detail and explain how you would go about
finishing those tasks.