Simple Realtime CRUD + Airtable & WebSocket

This was a project created for a skill assessment when I was applying to a no-code company.

The requirements:

  1. To create a page which connects to Airtable and renders its data in a table format.
  2. It should also include a form which on submission, data will be posted back to Airtable and appear in your table.
  3. The website should be able to withstand thousands of visitors at one time.

Limitation

  • Airtable limits API access by 5 requests per second

Solution

  1. Use Redis to serve a cached version of Airtable data by implementing expire-on-write
  2. Use Queue to handle Airtable data creation
  3. Additionally, I also implemented a WebSocket to broadcast submitted data to every user so that they get the effect of real-time updates