Coder Social home page Coder Social logo

backend-developer-task's Introduction

Notes API

API documentation is avalible on /api-docs.

Create REST API that allows users to manage their notes.
Notes can be organized into folders for easier management.
API should allow user authentication through basic HTTP authentication (username and password).
The goal is to build a simple but secure and easily scalable service.

Entities

  • Basic user info (name, username, password) should be stored in the database
  • Users own multiple folders that can be named
  • Folders contain multiple notes that can be named
  • Notes can be shared (visible to all users and unauthenticated viewers) or private (visible only to the creator)
  • Notes can be of 2 different types
    • Text note - has text body
    • List note - has list items that contain text body

API

  • API for users is not needed, data can be seeded into the database
  • Should support CRUD actions for folders
  • Should support CRUD actions for notes
  • Implement at least 2 out of 3
    • Pagination
    • Sorting
      • By note shared option (public/private)
      • By note heading
    • Filtering
      • By note folder
      • By note shared option (public/private)
      • By note text

Directions

  • You can use any programming language/framework for REST API
  • All data should be saved in database of your choice
  • No frontend is needed, only API
  • Users are authenticated via username and password. Users authentication data (usernames/passwords) can be generated and seeded in the provided database since API for users is not required.

Submission

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.