Skip to content

Email Design - #117

Merged
chrisgoggins merged 7 commits into
mainfrom
cindy/email-design
Sep 30, 2026
Merged

chrisgoggins merged 7 commits into
mainfrom
cindy/email-design

Conversation

@cindyz0

@cindyz0 cindyz0 commented Sep 22, 2026 •

Copy link
Copy Markdown
Contributor

Description

Resolves #109
Implemented designs for student notifications including ride confirmed, ride delayed, and new message from driver. Added more notifications to User schema.

Checklist

  • Title is the same as the ticket title
  • Ticket is mentioned above
  • Changes fulfill the ticket's acceptance criteria
  • Relevant developers have been assigned
  • Relevant reviewers (EM, Designers, etc.) have been requested

@netlify

netlify Bot commented Sep 22, 2026 •

Copy link
Copy Markdown

❌ Deploy Preview for able-alliance failed. Why did it fail? →

Name Link
🔨 Latest commit 0053360
🔍 Latest deploy log https://app.netlify.com/projects/able-alliance/deploys/6abd7d7a735e81000877efba

@cindyz0 cindyz0 self-assigned this Sep 29, 2026
@cindyz0
cindyz0 marked this pull request as ready for review September 29, 2026 03:57
@greptile-apps

greptile-apps Bot commented Sep 29, 2026 •

Copy link
Copy Markdown
Contributor

Disclaimer: This comment was AI-generated and is not necessarily completely accurate. Please take code comments with a grain of salt.

RetriggerConfidence Score: 2/5

[Medium risk] Adds email templates and notification settings for ride events.

The PR should not merge until the notifications are connected to events, the new preferences persist, and the email actions lead somewhere.

Findings

  1. P1 New notifications never send ▶
  2. P1 New preferences do not persist ▶
  3. P1 Email action links are empty ▶
  4. P2 Map image has no source ▶
  5. P2 Email styles hardcode design values ▶
  6. P2 Email subject misspells service name ▶

Summary

Review score: 65/100. This PR adds three student email designs, rendering and sending helpers, and two notification preferences.

  • Backend checklist needs improvement: connect the new emails to events and persist the new preferences.
  • Email-design checklist needs improvement: give action buttons working URLs, supply or remove the map image, correct the subject, and replace hardcoded design values where applicable.
Diagram
%%{init: {'theme': 'neutral'}}%%
flowchart LR
  A[Ride or chat event] -. no new notification call .-> B[New email methods]
  B --> C[Render email template]
  C --> D[Send via Juno]
  P[PATCH notification preferences] --> M[Mongoose user save]
  M -. new fields absent from schema .-> X[Preferences not persisted]
Loading

Reviews (1) · Last reviewed commit: "fix: file paths"

Comment thread src/server/email/EmailAction.ts Outdated
});
},

rideConfirmed: async (

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 New notifications never send

When a ride is scheduled or a driver sends a message, the ride and chat flows never call these new email methods. The scheduling flow still sends only the existing assignment notifications, so students do not receive the new confirmation, delay, or message emails. Connect each method to its event and check the recipient’s notification preference.

Comment thread src/server/db/actions/UserAction.ts
Comment thread emails/RideConfirmed.tsx Outdated
Comment thread emails/RideConfirmed.tsx
Comment thread emails/RideConfirmed.tsx
<Row>
<td align="center" className="w-1/2 pr-[16px]" colSpan={1}>
<Button
className="box-border w-full rounded-[4px] bg-[#183777] px-[20px] py-[12px] text-center font-semibold text-white"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Email styles hardcode design values

This button hardcodes its color and sizes, and the other two templates repeat those values. That makes coordinated design changes harder and does not meet the repository owner’s checklist to use configured design values. Use the project’s design tokens where they can be applied to the email templates.

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Comment thread src/server/email/EmailAction.ts Outdated

@chrisgoggins chrisgoggins left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good work! I did some minor changes to clean up the overall email flow

@chrisgoggins
chrisgoggins merged commit 4f0e8c7 into main Sep 30, 2026
1 of 5 checks passed
@chrisgoggins
chrisgoggins deleted the cindy/email-design branch September 30, 2026 21:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Email Design

2 participants