AngleSharp / AngleSharp/AngleSharp.Io
Introduce Minimal Service Worker Registration Surface
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 37
- Forks
- 13
- PR merge metrics
- No merged PRs in 30d
Description
Proposal
Provide a practical subset of Service Worker APIs to support registration and fetch interception workflows.
Scope:
- Add navigator.serviceWorker getter.
- Support register, getRegistration, and getRegistrations.
- Model registration state transitions at a minimal level.
- Provide integration hook for request/fetch interception.
Technical Notes: - Use in-memory registration store keyed by origin and scope.
- Keep execution/runtime behavior abstracted behind platform adapters.
Acceptance Criteria: - Registering a worker creates retrievable registrations by scope.
- Scope matching behaves consistently.
- Fetch pipeline can be wired to registration hooks.
- Tests verify lifecycle and scope behavior.
Out of Scope: - Full event loop/task semantics of production browsers.
- Full worker script runtime.
Description
Introduce a minimal Service Worker registration surface on navigator.serviceWorker, including register, getRegistration, and getRegistrations, plus basic scope handling and lifecycle state tracking.
Background
Service Worker registration is foundational for modern offline/network interception flows. Even without a full worker runtime, registration-level support unlocks realistic app bootstrapping and controlled fetch routing scenarios.
Specification
- Service Workers specification: https://w3c.github.io/ServiceWorker/
- Focus area: ServiceWorkerContainer and registration lifecycle primitives
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 ServiceWorkerContainer and registration lifecycle portions of the linked Service Workers specification, then locate the navigator and request/fetch integration entry points. Define the in-memory origin-and-scope registration behavior and verify lifecycle and scope matching with tests, including that fetch interception hooks can be wired without a full worker runtime.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- web-dev
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100