Skip to content

josh-keller/rekwest-bin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

69aea04 · May 11, 2022

History

36 Commits
May 5, 2022
May 5, 2022
Feb 1, 2022
Jan 31, 2022
Feb 1, 2022
May 5, 2022
May 4, 2022
May 4, 2022
May 5, 2022
Feb 7, 2022
May 4, 2022
Feb 7, 2022
May 5, 2022
May 5, 2022
Feb 6, 2022
May 5, 2022
Feb 4, 2022
May 4, 2022
Feb 2, 2022

Repository files navigation

Request Bin Clone

Features:

  • Create a bin (gives you an end point)
  • Log requests made to the bin
  • Display the last 20 requests made to the bin

Other Requirements:

  • Bins are automatically deleted after 48 hours
  • Each bin has a limit of 20 requests (FIFO)

ERD

  • Database in MongoDB
    • 1 collection
    • each bin is a document
    • each bin has a list of requests

Schema:

bin: {
  binId: string,
  created_at: timestamp,
  requests: [
    {
      method: string,
      host: string,
      path: string,
      created: timestamp,
      parameters: {},
      headers: {},
      body: string,
    },
    {
      ...
    }
  ]
}

Todos

  1. Testing
    • Tests for the backend
  2. MongoDB
    • One collection for all bins
    • Each bin is a document
    • Each document has an array of requests
    • Figure out how to add and slice at the same time
  3. Integrate Mongo with what's working already
    • API: Abtract out the data storage part first into its own package
    • Then swap mongo in for that
  4. Frontend
    • Look at templating in Go
    • Create template for the various pages
  5. Deployment
  6. Automatic deletion (cron job)