3.6 KiB
Home
- Route:
/home - API: GET /v1/article/
- Visual reference:
source/RenewCMS Screens Back-office.dc.html, group "Home" (open it in a browser; each state is drawn at desktop and mobile, with a light/dark toggle).
The greeting reads "Good morning, {name}", where the name is the display name when the user has saved one and the username otherwise. The counts come from the list, so there's no separate endpoint. The five most recently updated articles link to the editor.
States
Default
Trigger: The articles loaded.
- Breadcrumbs: Home (mobile title "Home")
- Subtitle: "Here's where things stand on your site."
- Stats: 6 articles, 4 online, 2 drafts
- Recent: the 5 most recently updated articles, with status
Loading
Trigger: The list request is in flight. Skeletons appear after 150 ms.
- Breadcrumbs: Home (mobile title "Home")
- Subtitle: "Here's where things stand on your site."
- Stats and recent list: skeletons
Empty, first run
Trigger: Zero articles: a single call to action, and no stats.
- Breadcrumbs: Home (mobile title "Home")
- Subtitle: "Welcome to RenewCMS."
- First-run empty state instead of stats and recent list
Error
Trigger: A 500 or network failure on the list request.
- Breadcrumbs: Home (mobile title "Home")
- Subtitle: "Here's where things stand on your site."
- Error state for the list request
Update available (owner)
Trigger: The owner only. A quiet banner above the content, and an "Update" pill on the Settings sidebar item (a dot on the menu icon on mobile, read as "Update available"). Dismissing hides the banner until the next version; the pill stays. Admins see neither.
- Breadcrumbs: Home (mobile title "Home")
- Subtitle: "Here's where things stand on your site."
- Banner:
role="region"labelled "Update available", info tone,circle-arrow-upicon, title "Version 2.3.0 is available", text "Update it from Settings. It takes about 2 minutes and the site stays online.", button "Go to Settings", and a dismiss button
Update ready to install (owner)
Trigger: The download is checked. The same banner changes its copy, and a dismiss comes back on the next visit because the update is waiting.
- Banner: success tone,
circle-checkicon, title "Version 2.3.0 is ready to install", text "Restart from Settings to finish. The site is unavailable for about 10 seconds.", button "Go to Settings"
Recent activity card
API: GET /v1/activity?size=5. Visual reference: source/RenewCMS Screens Activity.dc.html, group "Home card". The board draws the rest of Home as a dashed "Existing Home cards" placeholder, so this card is not pixel-checked against it.
A card with the last five events. Header "Recent activity" (regular users: "Your recent activity") and a "View all" link with arrow-right to /activity. Each row: a 24 px avatar, the sentence clamped to two lines with the target in semibold, then "Marta Alves · 2 min ago" (own events: only the time). A failed event gets a "Failed" badge; a successful security event a small shield.
- Placement as drawn: a 420 px column to the right of the existing cards on desktop; stacked on mobile, drawn above the existing cards. Confirm against the real Home layout before coding.
- States: Owner or admin, Regular user, Loading (five skeleton rows after 150 ms), Error ("Couldn't load recent activity" with "Try again"), Empty ("No activity yet", "Actions on your site will appear here." / own: "Your actions will appear here.").
- The card never blocks the page: an error or empty card leaves the stats and the article list as they are.