I've finished the MVP version of Lightfront. This includes:
- Dashboard in React + Antd.
- API in Go + Postgres + Redis.
- Key verification on the edge via Cloudflare.
- First version of the landing page.
Users who have a beta access code can now register on the dashboard and create a project. They can then:
- Create users. Users are just a unique identifier of a user in your system.
- Create scopes. Scopes can be used to define: endpoint paths (e.g. /resource), HTTP method restrictions (e.g. only allow GET requests), IP whitelisting, header restrictions (e.g. only allow requests with a specific header), etc. Optionally, you can group scopes into a scope group.
- Create keys. Keys are tied to a specific user. Keys can either be a Secret Key which is allowed to proceed assuming it is valid, or Scoped Key which is only allowed to proceed if the requirements for the given scopes match.
Next up: spruce up basic landing page and prepare for closed beta.