Commit graph

36 commits

Author SHA1 Message Date
61d33f5db3 feat(board): replace profile board section with posts list 2026-04-14 17:17:09 +01:00
cdef868256 Rename communityEcology → board across frontend, add Board nav, update redirects
- Add Board to exploreItems in AppNavigation
- Update ecology.vue + connections.vue redirects to /board
- Rename all communityEcology refs to board in member profiles, dashboard, admin, onboarding
- Update API path /api/members/me/community-ecology → /api/members/me/board
2026-04-14 12:15:51 +01:00
59d6e97787 Member/Ecology revamp.
Some checks failed
Test / vitest (push) Failing after 7m23s
Test / playwright (push) Has been skipped
Test / visual (push) Has been skipped
Test / Notify on failure (push) Successful in 2s
2026-04-14 09:25:09 +01:00
c6b970a621 Design token updates.
Some checks failed
Test / vitest (push) Successful in 10m47s
Test / playwright (push) Failing after 9m11s
Test / visual (push) Failing after 9m11s
Test / Notify on failure (push) Successful in 2s
2026-04-11 23:24:38 +01:00
f585fabf21 Merge branch 'worktree-agent-a975576d' 2026-04-09 22:46:52 +01:00
7c3a10232d feat(onboarding): add tracking calls to event, ecology, and wiki pages 2026-04-09 22:46:41 +01:00
3ce559a24c feat(onboarding): integrate widget into dashboard and sidebar indicator 2026-04-09 22:46:39 +01:00
b234b8483f refactor(peer-support): update remaining UI references (Phase 2)
Dashboard: replace "Peer Support" card and "Book a peer session"
quick action with community ecology links.

Welcome: replace "Peer Support" resource card with "Community
Ecology" heading and link to /ecology.

Members index: rename active filter tag from "Offering Peer
Support" to "Offering Support". The underlying filter still works
correctly (queries communityEcology.offerPeerSupport).
2026-04-09 09:16:40 +01:00
0b3896d984 refactor(community): rename Community Connections → Community Ecology
Some checks failed
Test / vitest (push) Successful in 11m42s
Test / playwright (push) Failing after 9m27s
Test / visual (push) Failing after 9m53s
Test / Notify on failure (push) Successful in 2s
Simplify the feature to pure discovery (filter by topic, see matching
members, copy Slack handle). Drop the connection request/confirm flow
entirely — Connection model, 7 API endpoints, useConnections composable,
and TagInput component deleted.

- Rename communityConnections → communityEcology in schema, API, pages
- Delete legacy fields: offering, lookingFor, peerSupport
- New /ecology page, /api/ecology/suggestions, community-ecology.patch
- Nav: "Connections" → "Ecology", remove pending-count badge
- Fix auth/member.get.js missing craftTags + communityEcology
- Add community_ecology_updated activity log type
- Expose slackHandle conditionally when offerPeerSupport is true
- Add migration script at scripts/migrate-to-ecology.js (run before deploy)
2026-04-09 09:07:15 +01:00
3b5b0d831d refactor: phase 4 cleanup — delete SidebarLayout, drop dashboard-body
Now that all member-area pages have migrated to PageShell +
ColumnsLayout, SidebarLayout has no consumers and can be deleted.
PageShell owns the flex chain, so the .dashboard-body wrapper on
member/dashboard.vue (flex: 1; display: flex; flex-direction: column;
min-height: 0) is redundant. Update stale SidebarLayout comments on
members/[id].vue to reference ColumnsLayout.
2026-04-08 17:58:01 +01:00
4a5b129eeb fix(profile,account): wrap auth-conditional UI in ClientOnly
Vue hydration silently drops class attribute updates when SSR and client
render different branches of a v-if chain — per the project's Auth SSR
Pattern, useAuth is client-only and server always renders unauthenticated,
so PageHeader (v-else branch) was rendering inside a leftover .loading /
.loading-state div from the v-else-if branch. On mobile that div was
being masked by the visual-test commonMasks (.loading-state), producing
a large fuchsia block in the snapshot.

Wrapping the v-if/v-else-if/v-else chain in <ClientOnly> ensures the
server renders nothing for the auth-gated content and the client performs
a clean first render, matching the pattern already used in dashboard.vue.

Also update admin-dashboard-desktop for minor anti-aliasing drift.
2026-04-08 17:41:01 +01:00
8365feb970 refactor(profile): migrate member/profile to PageShell vocabulary
- Replace .profile-page wrapper + nested form with <PageShell as=form @submit.prevent>
- Replace .profile-columns grid with <ColumnsLayout cols=2> + named slots
- Replace all 5 .profile-col-inset wrappers with <PageSection> components
- Replace <hr class=section-divider> separators with <PageSection divider=top>
- Add type=button to Sign In CTA (prevent accidental form submit)
- Delete .profile-page, .profile-authenticated, .page-content, .profile-main, .profile-columns, .profile-col-left/right, .profile-col-inset asymmetric padding, and collapse rules
2026-04-08 17:10:21 +01:00
37fceac3fd refactor(account): migrate member/account to PageShell vocabulary
- Replace .member-account-page + .account-authenticated flex chains with <PageShell>
- Replace <SidebarLayout> with <ColumnsLayout cols=events-sidebar>
- Replace .account-columns grid with nested <ColumnsLayout cols=2> + named slots
- Replace all 5 .account-col-inset wrappers with <PageSection> components
- Rename .account-section--danger → .danger-section
- Delete ~75 lines of layout CSS (flex chains, grid, asymmetric paddings, collapse rules)
2026-04-08 17:07:30 +01:00
b93c8c7b2f refactor(dashboard): migrate member/dashboard to PageShell + ColumnsLayout
- Replace outer .dashboard wrapper with <PageShell>
- Replace <SidebarLayout> with <ColumnsLayout cols=events-sidebar :limit=5>
- Replace bespoke <div class=welcome> with <PageHeader> containing slotted meta
- Drop .dashboard and .welcome scoped CSS (flex chain + bespoke header)
- Update visual snapshots (welcome header now uses canonical PageHeader padding)
2026-04-08 16:59:26 +01:00
eb2544a42d refactor(activity): migrate to PageShell + ColumnsLayout
Replace .activity-page wrapper + SidebarLayout with PageShell +
ColumnsLayout cols="events-sidebar". Delete the now-redundant
flex-chain CSS that PageShell owns. Adds .loading-state to the
visual mask list to handle the connections-mobile race between
the loading and loaded states.
2026-04-08 16:45:12 +01:00
4271ed0c6f fix: add auth middleware to profile page and update visual snapshots
- Add `middleware: 'auth'` to member/profile.vue (was missing)
- Harden loginAsAdmin helper to wait for networkidle after redirect so
  auth-init plugin and admin middleware finish before tests navigate
- Regenerate visual baselines to reflect updated profile page UI

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 15:00:23 +01:00
689548e389 Merge feature/community-connections into main
Adds Community Connections system: predefined tags with engagement states,
suggested connections page, and member discovery based on shared interests.
2026-04-05 17:05:58 +01:00
bd07172093 fix: add connectionRequests to notification schema, remove dead notifyPeerRequests 2026-04-05 16:31:49 +01:00
2aa29ba64b feat: restructure profile page for community connections
Replace Skills Exchange section with CraftTagSelector in About You.
Replace Peer Support section with Community Connections using
CooperativeTagSelector. Update form data, load/save logic, and
notifications to use new field names with backward-compatible
fallbacks to old peerSupport data.
2026-04-05 16:28:34 +01:00
88c94aaaf4 Accessibility fixes.
Some checks are pending
Test / vitest (push) Waiting to run
Test / playwright (push) Blocked by required conditions
Test / visual (push) Blocked by required conditions
2026-04-05 16:03:10 +01:00
0ae18f495e Tests, UX improvements. 2026-04-05 14:25:29 +01:00
418d3cc402 UI/UX tweaks and improvements. 2026-04-05 12:28:41 +01:00
d31b5b4dac fix: use private helcimApiToken for all server-side Helcim API calls 2026-04-04 13:37:34 +01:00
fcd6f4cdf4 feat: reskin admin pages to zine design system
Migrate the entire admin section from the dark guild-* Tailwind theme
to the zine design system (dashed borders, CSS custom properties,
Brygada 1918 + Commit Mono, cream/dark mode palette).

- Replace admin top-nav layout with sidebar matching default layout
- Reskin dashboard, members, events, series management pages
- Reskin events/create and series/create form pages
- Add dev-only test login endpoint (GET /api/dev/test-login)
- Redirect duplicate admin/dashboard.vue to /admin
- Update CLAUDE.md design system docs
2026-04-03 10:56:01 +01:00
1ac21d6a98 feat: reskin member pages to zine direction 2026-04-02 21:35:32 +01:00
fadf473dde Readying for design 2026-03-04 18:24:20 +00:00
a62e167876 Migrate design system from ethereal/cool to warm/craft/guild theme
Replace ghost/whisper/sparkle color palettes with guild/candlelight/parchment/ember/earth tokens.
Switch typography from NB Television Pro to Quietism serif. Update all 25 Vue components,
layouts, and pages to new design system. Add circle color tokens, typography scale, prose-guild
class, and warm texture effects. Clean up stale documentation files.
2026-02-24 20:01:11 +00:00
d588c49946 Many an update! 2025-12-01 15:26:42 +00:00
896ad0336c Redesign interface across member dashboard and events pages
The changes involve a comprehensive interface redesign across multiple
pages, including:

- Updated peer support badge with shield design
- Switched privacy toggle to use USwitch component
- Added light/dark mode support throughout
- Enhanced layout and spacing in default template
- Added series details page with timeline view
- Improved event cards and status indicators
- Refreshed member profile styles for better readability
- Introduced global cursor styling for interactive elements
2025-10-09 16:25:57 +01:00
e8e3b84276 Lots of UI fixes 2025-10-08 19:02:24 +01:00
1f7a0f40c0 Add Markdown support and update member features
The commit adds Markdown rendering capabilities and makes several UI/UX
improvements across member-related features including profile display,
peer support badges, and navigation structure.

Includes:
- Added @tailwindcss/typography plugin
- New Markdown rendering composable
- Simplified member navigation links
- Enhanced member profile layout and styling
- Added peer support badge component
- Improved mobile responsiveness
- Removed redundant icons and simplified UI
2025-10-07 15:07:27 +01:00
fb02688166 Add light/dark mode support with CSS variables 2025-10-06 19:54:20 +01:00
970b185151 Updates to profile 2025-10-06 14:52:03 +01:00
1b8dacf92a Add peer support functionality and UI 2025-10-06 11:29:47 +01:00
2b55ca4104 Adding features 2025-10-05 16:15:09 +01:00
600fef2b7c Enhance authentication flow: Add authentication-based buttons in AppNavigation for logged-in users, improve member status checks in useAuth, and update join page to automatically redirect to the dashboard after registration. Adjust cookie settings for better development experience. 2025-09-03 16:55:01 +01:00