Dandelion is a fair source project. View the code on Github
Commits on Aug 29, 2025
| 1ef907d |
🚚 rename recommendations/accounts route to recommendations/people
|
Commits on Aug 28, 2025
| 01b5caa |
🔥 Remove unused Substack newsletter invite code and fields
|
| d9e66e0 |
💬 Update first-event email copy with celebratory emoji |
| 3ee0026 |
🚚 Move send_first_event_email from EventNotifications to AccountNotifications The congratulatory email should be triggered when an account creates its first event, not when any event is created. This prevents duplicate emails and aligns the responsibility with the Account model. |
| 21e605c |
✨ Send welcome email when user lists their first event
|
| 708735f |
🔧 Add test Stripe keys to CI environment |
| 32509f5 |
🔐 Replace hard-coded secrets with dynamic SESSION_SECRET in CI |
| c3b3cde |
👷 (ruby.yml): split CI tests into parallel matrix jobs by test file
|
| 7cf885d |
💄 (events/_locked.erb): add warning styling to edit link for better UX |
| 7317d3f |
💄 (events/_locked.erb): add link to unlock event when locked
|
| f97f495 |
✨ (event_duplication): copy new profit-share fields when duplicating events |
| 92c77be |
🐛 Fix pagelet loading spinner in table rows
|
| a6cb473 |
🐛 Lock event when Stripe payment fails to prevent further purchase attempts
|
| cba8643 |
💄 Remove bottom margin from events page header row |
| 301f300 |
🐛 Fix map display when Google Maps fails to load
|
| 12afbd4 |
♻️ (map.js): convert mapOptions from static object to lazy-loaded getter This prevents a runtime error when google.maps is not yet loaded |
| 51d44f3 |
✨ Filter homepage events to only show those with images |
| 94d7949 |
💄 Add visual feedback for hidden events on homepage
|
| 8b0806a |
✨ Add AJAX toggle for hiding events from homepage
|
Commits on Aug 27, 2025
| 0c33361 |
💄 Remove extra padding class from pagelet loading icon
|