-
Notifications
You must be signed in to change notification settings - Fork 0
Home
- Retired the legacy mentor approval backend by deleting the unused routes plus the
mentor_approvalstable from the bootstrap helper and schema so registrations remain instant after verification. - Added
docs/theme.htmlas a standalone token showcase, updated the README and AGENT notes to reference it, and confirmed the frontend still leans on the shared Tailwind wrappers.
- Retired the README reference to email reminders now that the cadence controls remain out of scope, and removed the dormant
backlog entry from
docs/features.mdto keep the feature review aligned with the current product story.
- Reintroduced share-aware mentor email notifications that trigger after journal entry creation by wiring
dispatchEntryNotificationsthrough the newbackend/services/mentorNotifications.jshelper. - Added the mentor digest email job (
backend/jobs/sendMentorDigest.js), refreshed the email templates to cover single-entry and digest layouts, and documented the feature and guardrails inbackend/AGENTS.mdanddocs/features.md.
- Documented the implemented and missing README features in
docs/features.md, noting reminder and mentor notification gaps plus the broken panic alert flow. - Added
docs/AGENTS.mdto guide future documentation updates within the knowledge base.
- Let the mentor and journaler admin directories honor a shared
mentorIdfocus filter, wiring the new select inputs throughuseSearchParamsso deep links from Journals surface the intended guide and theView journalersshortcut lands on their linked mentees instantly. - Updated mentor cards to pass both
mentorIdand human labels when jumping to Forms or Journalers, and taught the Forms admin table to hydrate from a newcreatorIdquery parameter so creator filters stick even when a mentor lacks a display name. - Noted the ID-based linking guidance in
frontend/AGENTS.mdto keep future dashboard navigation consistent across the admin stewardship pages.
- Unified the admin stewardship pages by refactoring journaler and mentor directories into the shared table layout, wiring their
filters through
useSearchParams, and adding quick jumps into the new Journals index. - Added
frontend/src/pages/JournalAdminPage.jsplus matching backend/admin/journalsendpoints so admins can search, filter, and delete journal entries while tracing mentor ties directly from the dashboard. - Extended the admin forms view to hydrate filters from the query string, letting cross-page "View forms" links land on the intended creator or visibility selection.
- Reworked the admin form library table to drive its column layout through a shared
--table-gridCSS variable so headers and rows stay aligned with the mentor directory pattern. - Updated
frontend/src/index.cssto read the column template from the custom property and documented the override flow infrontend/AGENTS.mdfor future dashboard table tweaks.
- Shifted the admin form catalogue on
FormBuilderPageinto the shared table layout so titles, visibilities, mentee chips, and delete controls align with the Mentor Directory styling across breakpoints. - Captured the four-column table guidance in
frontend/AGENTS.mdto keep future tweaks anchored to the dashboard table pattern.
- Refined the admin dashboard form library into responsive cards that surface friendly visibility and assignment labels, and documented the
table-header/table-rowtoken pattern infrontend/AGENTS.mdso future tables keep the stacked mobile layout.
- Introduced
backend/utils/emailTemplates.jsas the shared theme wrapper for transactional emails, ensuring subjects include the[Aleya]prefix, a consistent preheader, and the grove-inspired styling. - Updated the registration verification email flow in
backend/routes/auth.jsto render through the new template so the verification button, copy, and fallback link all inherit the Aleya theme.
- Dropped the
notification_preferencescolumn fromusers, removed the default constant inbackend/utils/bootstrap.js, and pruned all backend references so the notification system is fully retired end-to-end. - Updated the README to mark the notification system as retired and clarified that mentors now rely on dashboards plus transactional emails for updates.
- Retired the in-app notification system entirely by deleting the bell UI, NotificationContext, and mentor notification cards so
the frontend no longer references
/api/notifications. - Removed all backend notification routes, helpers, and database tables, simplifying mentor/admin flows to operate without
dispatching
user_notificationsrecords or bell alerts. - Trimmed Settings to profile essentials across every role by removing the reminder and notification preference controls.
- Let mentor registrations follow the mentee workflow by removing the
mentor_approvalsgate inbackend/routes/auth.js, allowing accounts to be created immediately and email verification links to be dispatched without waiting for admin review. - Replaced the mentor application notifications with the new
mentor_registered_adminandmentor_registered_mentormessages so admins still receive a heads-up while mentors get a welcome focused on verifying their email rather than awaiting approval.
- Wrapped the authenticated shell with a new
GlobalErrorBoundarycomponent that renders a gentle fallback, offers retry and reload affordances, and records window errors plus unhandled promise rejections so runtime exceptions no longer splash raw traces across the UI. - Added
frontend/AGENTS.mdguidance describing how to extend the boundary while keeping technical diagnostics tucked behind the existing disclosure toggle.
-
Ensured mentor registrations send acknowledgement emails by introducing the
mentor_application_submitted_mentornotification so new mentors know their application is awaiting admin review while admins still receive their bell alert and email summary. -
Updated the registration flow to capture the inserted user's notification preferences and dispatch the mentor acknowledgement alongside the existing admin email so both sides stay informed during approval.
-
Introduced a public
/api/auth/expertiseendpoint that aggregates mentor profile keywords, returning the most common tags in popularity order so registration flows can suggest existing expertise. The splitter mirrorsparseExpertiseto keep frontend and backend normalization aligned. -
Refined the shared
TagInputcomponent to surface matching suggestions and the top ten popular expertise tags beneath the field, preventing duplicates and preferring the canonical casing when mentors add items. -
Wired mentor registration and settings forms to fetch the expertise suggestions via the new hook so mentors can click to add existing areas of wisdom while still creating bespoke entries when needed.
-
Let journalers open assigned forms inline on
JournalHistoryPageby renderingJournalEntryFormwhen they press the "Bloom" button instead of redirecting through the dashboard. This keeps the CTA styling withprimaryButtonClassesand allows reflections to begin without leaving the history view. -
Guided journalers to the inline Bloom form by auto-scrolling the newly revealed
SectionCard, focusing its heading, and whispering a status message so the chosen prompts feel nearby. Documented the supportingSectionCardrefs infrontend/AGENTS.md. -
Updated
frontend/AGENTS.mdto capture the inline Bloom guidance so future contributors preserve the on-page experience. -
Added a live password confirmation check on
RegisterPageso the retype field highlights mismatches, shares a gentle reminder, and keeps the submit action disabled until both entries match. Noted the guidance infrontend/AGENTS.mdfor future frontend contributors. -
Fixed the
RegisterPagepassword confirmation helper sopasswordsMismatchis defined via state and synced on every edit, preventing runtime reference errors while keeping the inline reminder and disabled submit flow intact. Documented the helper infrontend/AGENTS.md. -
Added an admin-only Journaler navigation entry that links to the new
/journalersroute where the entire journaler management experience now lives. The mentorship view for admins focuses solely on mentor stewardship while the new page handles search, unlinking mentors, and deleting journaler accounts with the existing admin endpoints.
- Gave each journaler form card on
JournalHistoryPagea poetic CTA that links to/dashboard?formId=...so mentees can open a specific template directly, and taughtJournalerDashboardto read and sync theformIdquery parameter while preserving the primary button styling documented infrontend/AGENTS.md. - Shortened the journaler form CTA label to the single-word "Bloom" so the primary button keeps its theme styling without stretching taller than neighboring actions.
- Renamed the admin forms catalogue header to "Form Management" on
frontend/src/pages/FormBuilderPage.jsand added accessible labels plus journaler-focused search copy to the admin-only filters so screen readers describe each control clearly. - Hid the journal reminder controls on the admin settings page so administrators no longer see the daily reflection or weekly summary toggles.
- Extended the admin mentorship hub with a new Journaler management panel that lets admins search by name/email, review linked
mentors, unlink relationships, and delete journaler accounts. Backed the UI with enriched
/admin/journalersdata and a newDELETE /admin/journalers/:idroute so cascades clean up reflections, assignments, and links automatically.
-
Added admin mentor management endpoints:
/admin/mentor-linksto link journalers,/admin/mentor-links/:mentorId/:journalerIdto sever connections,/admin/journalersfor quick journaler lookups, and/admin/mentors/:idfor removing mentor accounts while returning/admin/mentorswith detailed mentee listings. -
Refreshed the admin mentorship page to focus on mentor stewardship by letting admins link mentees by email, review existing relationships, and delete mentors directly from the cards.
-
Restricted
/formscreation to mentors, enriched the admin/formslisting with creator names and mentee associations, and refreshed the Forms page so admins manage existing templates with filters, assignment removal, and delete controls instead of crafting new forms.
- Added an admin-only DELETE
/admin/forms/:idroute that blocks removal of default templates while allowing admins to prune mentee-created forms and automatically clear their assignments. - Noted in
backend/AGENTS.mdthat default templates should remain protected when adjusting admin form management logic.
- Added a secondary cancel action to the SOS modal in
frontend/src/components/PanicButton.jsusing the sharedbtn-secondarytoken so people can close the dialog without reaching the header button. - Adjusted the SOS overlay container spacing to keep the panel vertically centered instead of hugging the top edge of the viewport.
- Removed unused typography utility classes (
text-body-strong,text-body-muted,text-body-sm-muted) from the Tailwind component layer and pruned their exports infrontend/src/styles/ui.jsso the design tokens only track active usage. - Refreshed
frontend/AGENTS.mdto list the remaining typography helpers and to note that obsolete Tailwind wrappers should be retired promptly.
- Centered the SOS modal in
frontend/src/components/PanicButton.jsand constrained its height so it no longer renders off the top of the viewport on smaller screens. - Documented the modal layout guidance in
frontend/AGENTS.mdto keep future overlays aligned and scrollable.
- Fixed the mentor panic alert route definition in
backend/routes/mentors.jsby restoring the missing closing);so Docker n odemon no longer crashes on startup. - Updated
backend/AGENTS.mdto remind contributors to confirm route endings while runningnode --checkon touched files.
- Adjusted the mentor panic alert route to list each validator middleware individually instead of wrapping them in an array. This resolves a syntax parsing error observed when Docker booted the backend and keeps Express middleware handling straightforward.
- Confirmed the route still requires mentors to be authenticated before sending panic alerts, aligning with the README description of the feature.
- Added
backend/AGENTS.mdto capture backend-specific contributing notes and remind developers to update this wiki when changes are made.
- Rewrote major frontend copy (landing, authentication, dashboards, notifications, SOS modal) with Aleya’s poetic grove tone so the experience feels consistently luminous and nature-infused.
- Updated
frontend/AGENTS.mdto note the new copy voice guidance for future contributors.
- Removed the landing page administrator feature card and tightened the feature grid to two columns so only journalers and mentors are highlighted.
- Extended
frontend/AGENTS.mdwith a note about keeping the landing feature cards balanced across breakpoints. - Restored the SOS modal header structure in
frontend/src/components/PanicButton.jsso the close button sits inside the header flex row, preventing mismatched JSX tags, refreshedfrontend/src/styles/ui.jswith abodySmallMutedTextClassesalias for the muted small text token, and updatedfrontend/AGENTS.mdwith the guidance to keep header content wrapped together.
- Hid mentor notification controls, the weekly summary toggle, the save action, and the data export/delete options when
user.role === "admin"insidefrontend/src/pages/SettingsPage.jsso administrators see only relevant settings. - Documented the pared-back admin settings experience in
frontend/AGENTS.md.