You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add event reminder functionality with associated tests and mailer
- Implement EventReminderNotifier to handle sending event reminder emails and creating notification records.
- Create EventReminderJob to enqueue notifications for event attendees.
- Develop EventReminderSchedulerJob to schedule reminders at specified intervals.
- Add EventMailer for sending reminder and update emails with appropriate content.
- Enhance Event model with validations, scopes, and callbacks for reminder scheduling.
- Introduce tests for Event, EventReminderNotifier, EventReminderJob, EventReminderSchedulerJob, and EventMailer.
- Implement validations and methods in LocatableLocation for handling location data.
-**Hotwire everywhere**: Turbo for navigation/updates; Stimulus controllers for interactivity.
6
-
-**Keep controllers thin**; move business logic to POROs/service objects or concerns.
7
-
-**Prefer explicit join models** over polymorphic associations when validation matters.
8
-
-**Avoid the term "STI"** in code/comments; use "single-table inheritance" or alternate designs.
9
-
-**Use `ENV.fetch`** rather than `ENV[]`.
10
-
-**Always add policy/authorization checks** on links/buttons to controller actions.
11
-
-**i18n & Mobility**: every user-facing string must be translatable; include missing keys.
12
-
- Provide translations for all available locales (e.g., en, es, fr) when adding new strings.er Community Engine – Rails App & Engine Guidelines
1
+
# Better Together Community Engine – Rails App & Engine Guidelines
13
2
14
3
This repository contains the **Better Together Community Engine** (an isolated Rails engine under the `BetterTogether` namespace) and/or a host Rails app that mounts it. Use these instructions for all code generation.
15
4
16
5
## Core Principles
17
6
7
+
-**Security first**: Run `bundle exec brakeman --quiet --no-pager` before generating code; fix high-confidence vulnerabilities
0 commit comments