labthings / labthings/labthings-fastapi
Conformance to W3C WoT Profile for HTTP
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 9
- Forks
- 4
- PR merge metrics
- No merged PRs in 30d
Description
There is a new W3C document defining the protocol binding for HTTP in more useful detail:
https://w3c.github.io/wot-profile/
It would be good to read and digest this and make sure we're compliant. I think we are close, though we might need to update the response code for setting properties.
I note that the profile defines how asynchronous actions should work, which aligns very well with what we do already. There are possibly a few differences that we should consider changing.
It is possible that this profile defines how SSE should work. That might be really helpful if we are to avoid polling actions, which I'd love. Unfortunately, SSE is only defined for properties and events. That's annoying - I'd love to start an action, then subscribe with SSE.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the W3C WoT Profile document linked in the issue, focusing on the HTTP protocol binding, property-setting response codes, asynchronous actions, and SSE. Compare those requirements with the existing LabThings FastAPI implementation; done means identifying and addressing the relevant compliance differences.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- fastapi, python
- Domain
- api, backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100