---
# System prepended metadata

title: Backend Task

---

# Backend Task

# Your task if you choose to accept
The skills' assessment process is very important to understand an applicants’ level of expertise and knowledge needed to work as backend developer.
You should have an essential knowledge in:
- Programming language and software framework (Django, NodeJS)
- Integrated development environment (IDE)
- Databases 
- Version control (Git)


## Pay attention
- Work with your prefer language NodeJS or Python(Django)
- System requirements must be in README.md 
- Documentation (installation & related detail) file ``` README.md```


## Task Info

#### Section 1: Database & Model
- A migration file that will create a DB table named ```posts```. This table will include the columns as shown below:
```db
  | id | title | text |
  |----|-------|------|
  |    |       |      |
  |    |       |      |
  |    |       |      |
```
- Create a model for the previous DB table


#### Section 2: REST API
Create an end-points to the project with following URLs:
- ```/posts -> GET``` show all posts that save within ```posts``` table.
- ```/posts -> POST```  add new post to ```posts``` table.


#### Section 3: Auth
Add an authentication layer for the section 2 URLs, so no one can access them without user and password.

# Verify That Everything Is Set Up Correctly

You can use a tool like [Postman](https://www.postman.com/) to test the API.