Skip to content

Epic: Dashboard, widgets and utility endpoints (no longer cookie-blocked) #116

Description

@Adron

Summary

The web product has a configurable dashboard and front wall, plus a set of sidebar widgets. The app has none, and CLAUDE.md records the layout endpoints as cookie-session-only.

Status correction — both layout endpoints now answer the bearer token

CLAUDE.md states: "GET /api/user/engagement and GET/PUT /api/user/dashboard-layout return 401 with a valid bearer token". Re-probed live 2026-09-15:

GET /api/user/dashboard-layout   -> 200 {"layout":null}
GET /api/user/front-wall-layout  -> 200 {"layout":null}
GET /api/user/engagement         -> 200 {"totalDigs":24,"totalPushes":6,"recent":[...]}

GET /api/user also returns dashboardLayout and frontWallLayout inline. This constraint in CLAUDE.md is stale and must be corrected.

Endpoints

Method Path Live result
GET/PUT /api/user/dashboard-layout 200 {"layout":null}
GET/PUT /api/user/front-wall-layout 200 {"layout":null}
GET /api/widgets/news 200 (Hacker News headlines)
GET /api/widgets/markets crypto watchlist quotes
GET /api/widgets/transit · /transit/stops transit + nearby stops
GET /api/widgets/bike-share bike-share availability
GET /api/weather · /api/location 400 until lat/long supplied

Priority note

This is genuinely lower value for a desktop client than the social and data pillars — it is filed for completeness and because the blocking claim turned out to be wrong.

Repo conventions to follow

  • Service: one partial class InterlinedApiClient file per domain in InterlinedList/Services/.
  • Wire types in InterlinedList/Models/ matching real API JSON.
  • ViewModel per view in InterlinedList/ViewModels/ (CommunityToolkit.Mvvm ObservableObject + [RelayCommand]).
  • View is a self-contained UserControl in InterlinedList/Views/ that news up its own VM from AppServices.Session.
  • Strata tokens only — no colors/fonts/radii outside Resources/Palette.xaml + Theme.*.xaml.
  • Read-after-write for any mutating endpoint whose response envelope has not been live-verified.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3Nice to have / low desktop valuearea:widgetsArea: widgetsepicFeature-area parent issue with sub-issuesparityWeb/API feature-parity work

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions