-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtasks.todo
31 lines (31 loc) · 2.57 KB
/
tasks.todo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
StoredIn:
Backend:
Setup:
✔ Initialize NodeJS LTS (latest v12.18.3) project. @done(20-08-05 11:47)
✔ Install required packages @done(20-08-05 11:47)
✔ Express @done(20-08-05 11:44)
✔ Body-parser @done(20-08-05 11:44)
✔ UUID @done(20-08-05 11:44)
✘ Promises? (or use async-await) @cancelled(20-08-05 11:47)
✔ Create and set-up required directories if they don't exist. @critical @today @done(20-08-07 14:05)
✔ Create a paste directory. @high @done(20-08-07 14:05)
Functionality:
REST API:
✔ Implement rate limiting, noticing some spams (Use - express-rate-limit). @critical @today @done(20-08-09 13:19)
✔ Routes: @done(20-08-09 12:43)
✔ Receive POST request (PUT), receive, label, and store the data securely. @high @done(20-08-06 06:38)
✔ Check if the content (data) is provided & meets the minimum requirement for storage. @done(20-08-05 14:35)
✔ Generate paste id, delete key, timestamp, and gather user's ip for security. @low @done(20-08-05 15:08)
✔ Format the links for ease of use. @done(20-08-05 15:13)
✘ Allow file input using 'curl'. @high @cancelled(20-08-06 06:37)
✔ Limit allowed content size < ~3Mb. @critical @done(20-08-05 23:08)
✔ GET request, fetch, parse, and return the stored data. @done(20-08-05 17:16)
✔ Check and verify the existance of the file before moving forward with the request. @done(20-08-05 17:16)
✔ Return formatted data. @done(20-08-05 17:16)
✔ DELETE request, find and remove the data from the storage. @low @done(20-08-05 17:16)
✔ Remove directory if no other sibling files exists. @high @today @done(20-08-06 15:00)
✔ Respond with appropriate status codes. @critical @done(20-08-06 06:37)
✔ If request parameters/data are missing, return proper error & status code. @done(20-08-07 10:15)
✔ Return 400 Bad Request on GET /:id/:deleteKey (if deleteKey is invalid) @done(20-08-07 10:15)
✔ Return 400 Bad Request on GET /:id (if id is missing or invalid) @done(20-08-07 10:15)
✔ Return 400 Bad Request on POST / (if required parameters - data, is missing) @done(20-08-07 10:15)