You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: DownloadableCodeProjects/standalone-lab-projects/sdd-get-started-rss-feed/App Features.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -64,3 +64,4 @@ Notifications can be added later for high-priority feeds or keyword matches.
64
64
Integrations and sharing features can come later as well. This includes sharing items to email and chat tools (for example Slack/Teams), sending items to read-later services (for example Pocket/Instapaper/OneNote), and offering quick actions like copying a clean link. It can also include opening links in the system browser or in an in-app browser view. For some workflows, RSS-to-email could be added so selected feeds (or filtered items) are forwarded to an email inbox.
65
65
66
66
Finally, as privacy and data ownership features mature, we can explicitly focus on minimal tracking and clear data ownership/export (for example, ensuring users can always export their data in a usable form).
Copy file name to clipboardExpand all lines: DownloadableCodeProjects/standalone-lab-projects/sdd-get-started-rss-feed/Project Goals.md
+15-1Lines changed: 15 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -30,12 +30,26 @@ Next, we will iterate toward a solid “v1” by improving usability and reliabi
30
30
31
31
Finally, we will add optional enhancements over time (search/filtering, integrations, sync, offline improvements) once the core experience is dependable.
32
32
33
-
## Quality goals
33
+
## Quality goals for this project
34
34
35
35
Even in an MVP, the reader should be reliable and safe. It should tolerate real-world feed problems (redirects, timeouts, malformed XML) without crashing, avoid duplicating items unnecessarily, and render content safely.
36
36
37
37
Local data should remain the user’s data. The design should make it easy to keep and export information as the project grows.
-**Testing**: Unit and integration tests for critical paths; CI gates must run tests; target meaningful coverage on core modules (≈80%) and validate parsing/rendering edge cases.
43
+
-**Security**: Sanitize all rendered HTML; validate and normalize inputs; keep secrets out of the repo; run SAST and dependency vulnerability scanning; fix high/critical issues promptly; adopt OWASP ASVS baseline controls.
44
+
-**Privacy**: Minimize data collected; keep all user data local by default; make export/delete straightforward; exclude PII from logs.
45
+
-**Accessibility**: Meet WCAG 2.2 AA (keyboard navigation, contrast, semantics); avoid motion that impairs readability.
46
+
-**Performance**: Non-blocking UI during fetch/parse; cache feed metadata; use retry with backoff on timeouts; avoid excessive memory use on large feeds.
-**Observability**: Use structured logs with levels; surface actionable error messages; collect minimal opt-in telemetry only.
49
+
-**Release Management**: Use semantic versioning; maintain a changelog; ensure reproducible builds; enable quick rollback.
50
+
-**Documentation & Process**: Keep README/user guide and architecture overview current; write brief specs with acceptance criteria via Spec Kit; definition of done includes tests, docs, and QA checklist.
51
+
-**Dependency Management**: Pin versions; update regularly; track licenses; generate an SBOM (e.g., CycloneDX) and verify compliance.
52
+
39
53
## How this document fits with the others
40
54
41
55
This document describes the project at a high level and sets constraints, methodology, and rollout expectations.
0 commit comments