Dries Augustyns
ba23a1c6fa
fix: replace font loading method with utility function for improved performance
2026-05-04 12:45:15 +02:00
Dries Augustyns
4b5815c1d6
ui: update Open Graph and Twitter card images for various pages to enhance social sharing
2026-05-04 12:32:51 +02:00
Dries Augustyns
29883ffc71
fix: enhance project name validation to exclude invisible and decorative characters
2026-05-03 08:14:18 +02:00
Dries Augustyns
5724ab9536
feat: add project switching functionality to command palette
2026-05-02 16:28:25 +02:00
Dries Augustyns
0c15cc84df
seo: update descriptions for Brevo, Customer.io, and other email alternatives to enhance clarity and appeal
2026-05-02 15:02:23 +02:00
Dries Augustyns
a729789922
seo: add spam checker tool with analysis for email content and subject lines
2026-05-02 14:03:58 +02:00
Dries Augustyns
26ec5864ae
Merge branch 'next' of https://github.com/useplunk/plunk into next
2026-05-01 21:55:45 +02:00
Dries Augustyns
48425d1df1
feat: implement early fraud warning handling in webhooks
2026-05-01 21:55:32 +02:00
Dries Augustyns and GitHub
a5e8d239ee
Merge pull request #356 from useplunk/release-please--branches--next--components--plunk
v0.10.0
2026-05-01 20:13:21 +02:00
Dries Augustyns
532293e52a
Resolve linting errors
2026-05-01 19:55:58 +02:00
github-actions[bot] and GitHub
fd066a6991
chore(next): release 0.10.0
2026-05-01 17:45:19 +00:00
Dries Augustyns
bb72911fa2
feat: enhance contact addition with bulk email lookup and subscription options
2026-05-01 19:44:48 +02:00
Dries Augustyns
9fafeb7d4b
ui: adjust spacing for customer logos section
2026-05-01 10:57:37 +02:00
Dries Augustyns
11ea9d5e12
ui: define type for customers array
2026-05-01 10:43:54 +02:00
Dries Augustyns
b73927067f
ui: add customer logos for SnowSEO and Viral
2026-05-01 10:39:42 +02:00
Dries Augustyns
4b65e718ad
ui: add customer logos for Dodo Payments, Krumzi, and Waidwissen
2026-04-30 17:50:25 +02:00
Dries Augustyns and GitHub
f6f291966f
Merge pull request #359 from mre/fix/list-unsubscribe-header
2026-04-30 15:31:50 +02:00
Matthias Endler
11c428d4ff
fix(ses): emit List-Unsubscribe inside the header section, not the body
...
The raw MIME template in sendRawEmail produced a blank line between Content-Type and List-Unsubscribe whenever no custom headers were passed, because the ternary for custom headers expanded to an empty string surrounded by newlines.
Per RFC 5322 §2.1 a blank line terminates the header section, so List-Unsubscribe ended up as the first line of the body. Lenient clients (Gmail, Outlook) recover; strict clients (Thunderbird) do not, breaking one-click unsubscribe and degrading Gmail/Yahoo bulk-sender deliverability signals.
Collect optional headers (custom + List-Unsubscribe) into an array, filter empties, and append them to the Content-Type line with a single newline separator. No codepath can now produce a blank line inside the header block.
2026-04-30 15:20:06 +02:00
Dries Augustyns
2eb407993b
feat: add configurable attachment limits for email service
...
Closes #358
2026-04-29 08:48:03 +02:00
Dries Augustyns
10946511b0
feat: enhance contact data handling by filtering empty strings and allowing null to delete fields
2026-04-27 16:59:18 +02:00
Dries Augustyns
5f741c66c7
fix: update project icon colors for improved visibility and consistency
2026-04-24 19:23:33 +02:00
Dries Augustyns
d7eb85ffdd
fix: update project disabled messages for clarity and consistency
2026-04-24 19:21:07 +02:00
Dries Augustyns
1c89ed083e
feat: implement CommandPalette for enhanced navigation and recent pages tracking
2026-04-24 18:42:04 +02:00
Dries Augustyns
f40cc86cec
fix: Harmonize rings and hover states
2026-04-24 16:01:18 +02:00
Dries Augustyns
6f31fa2503
feat: add updateActiveProject function for in-place project updates
2026-04-24 14:58:06 +02:00
Dries Augustyns
98f1e80fca
fix: prevent unnecessary state updates in search input effect
2026-04-24 13:49:16 +02:00
Dries Augustyns
c1bcd358cc
fix: Consistency across buttons and labels
2026-04-24 13:35:25 +02:00
Dries Augustyns
517753c420
fix: Consistency across cards
2026-04-24 12:54:43 +02:00
Dries Augustyns
ab3edd7dc9
fix: improve layout and accessibility of workflow header and buttons
2026-04-24 12:09:54 +02:00
Dries Augustyns
c910d20bb7
feat: Enhance ease of use of workflow editor
2026-04-24 11:56:43 +02:00
Dries Augustyns
bdc9b30ef2
fix: standardize step type labels and update visual styles in workflow components
2026-04-24 10:17:10 +02:00
Dries Augustyns
c8190b953f
fix: Content negotiation for xml and txt
2026-04-23 08:04:39 +02:00
Dries Augustyns
1637d54e1b
fix: add project name and sender email parameters to phishing content check
2026-04-22 22:03:57 +02:00
Dries Augustyns
15294a40d8
fix: add project name and sender email parameters to phishing content check
2026-04-22 22:03:53 +02:00
Dries Augustyns
bb78c86c40
fix: update phishing confidence threshold to 95%
2026-04-22 21:59:34 +02:00
Dries Augustyns
c0e0ad8bc6
fix: add new configuration options for phishing detection thresholds
2026-04-22 13:59:41 +02:00
Dries Augustyns
208c809a90
fix: Add in-memory cache for lower-confidence phishing checks
2026-04-22 07:40:23 +02:00
Dries Augustyns
b7eb2549d4
fix: turn warning into success log
2026-04-21 22:08:07 +02:00
Dries Augustyns
91d0d2d297
fix: update response format for phishing analysis and improve JSON parsing comment
2026-04-21 21:53:16 +02:00
Dries Augustyns
862875428d
fix: log message for projects passing phishing checks
2026-04-21 21:49:57 +02:00
Dries Augustyns
2da8b065d0
feat: implement phishing detection using OpenRouter API with configurable sampling rate
2026-04-21 21:28:31 +02:00
Dries Augustyns
60146fcc10
ui: replace custom loading spinners with IconSpinner component across multiple files
2026-04-21 16:28:03 +02:00
Dries Augustyns
c278a0fd94
feat: add className prop to EmptyState component for custom styling
2026-04-21 10:31:17 +02:00
Dries Augustyns
0b3aa28101
feat: add middleware support for .md file rewrites
2026-04-21 10:29:15 +02:00
Dries Augustyns
ecaf99665a
ui: Update empty states
2026-04-21 10:24:35 +02:00
Dries Augustyns
3d9b4e4eb3
ui: Update empty states
2026-04-21 10:22:05 +02:00
Dries Augustyns
e048fc1570
feat: implement meter event processing with queue for Stripe billing
2026-04-20 21:30:52 +02:00
Dries Augustyns
4322de929a
fix: reconcile totalRecipients in CampaignService to prevent stuck campaigns
...
closes #348
2026-04-20 20:15:56 +02:00
Dries Augustyns and GitHub
bfdfde68fb
Merge pull request #352 from wcatbb/next
2026-04-20 19:48:04 +02:00
Dries Augustyns
3649392b47
fix: Sync display name in TemplateSearchPicker when initialName changes
2026-04-20 19:47:39 +02:00