[HN Gopher] Show HN: Sendune - open-source HTML email designer
___________________________________________________________________
Show HN: Sendune - open-source HTML email designer
Demo: https://designer.sendune.com/ Code:
https://github.com/SendWithSES/Drag-and-Drop-Email-Designer HTML
for email is probably the hardest code to write. Even a teeny-tiny
deviation from the rules will break the email in untold combination
of os/desktop/mobile clients. It's mid 2024. Almost 50 years since
email was invented and 35 years since HTML was born. A 'basic-open-
source-HTML-email-designer' must be a solved problem, right? We
thought so too. Sadly, that's not the case. There are a few
decent open source email designers but they carry dependencies that
make them cumbersome to embed within your app. That's why we
decided to open source our HTML Email Designer. The SENDUNE email
designer focuses on simplicity and ease of use. It is light-weight.
It does pure HTML - no intermediate code wranglers like mjml. There
is no lock-in of any kind. Save HTML output as a template and use
with ANY email service provider. Feel free to fork the repository,
make improvements, and submit pull requests. AMA: hello at sendune
dot com
Author : samdung
Score : 262 points
Date : 2024-07-19 15:22 UTC (7 hours ago)
| samdung wrote:
| Oh! I wasn't expecting this. I'll be here a couple of hours to
| answer any questions.
| brianjking wrote:
| Oh wow, nice, thanks for the MIT License!
| cheapgeek wrote:
| No malicious intent here but the post says it was submitted by
| you.
|
| What exactly were you "not expecting"?
| _kush wrote:
| not expecting to be on the front page maybe
| bogzz wrote:
| the upvotes?
| samdung wrote:
| wasn't expecting to hit the front page so soon given all the
| attention towards crowdstrike.
| mnutt wrote:
| Looks very nice. I'm curious about "no mjml" -- I've worked
| with authoring tools in related domains and found that
| separating the serialization format from the output format has
| some benefits. It manifested in needing to store editing
| concerns like "this element is locked" in the HTML when it had
| no business being in the HTML output.
| AlexDragusin wrote:
| Very nice work and very well deserved the front page #2 spot!
| Thank you!
| layer8 wrote:
| How did you reliably determine what works and what doesn't in
| "untold combination of os/desktop/mobile clients"? Is there a
| description of that somewhere?
| daliusd wrote:
| There is site for that https://www.caniemail.com/ . I don't
| use it, even if I work on email marketing software, but I
| guess it might be useful sometimes.
| rmbyrro wrote:
| I have the personal impression that it would be a net positive if
| all emails were written as text.
|
| Ok, in some cases I see why html would make some sense. In those
| cases, my opinion is: send text and invite the person to view
| markup content in their browser.
|
| The e-mail context is not suitable for markup, styling, and all
| this stuff.
| trallnag wrote:
| So plain text, not even links with <a>?
| graemep wrote:
| Yes. Links can be automatically marked up in the client.
|
| The problem is there is no practical way of getting back to
| plain text, or even to a different type of markup.
| rspoerri wrote:
| I intentionally disable html on my email programms and block
| all internet access for my mail program to the internet
| (except for the smtp, imap hosts of course)
| NoboruWataya wrote:
| I would love first class support for some limited subset of
| markdown (same for browsers actually).
| FredPret wrote:
| Talking to non-tech people means you're going to be copy-
| pasting screenshots and replying in blue text next to their
| bullet points that was written in black text.
|
| To say nothing of legitimate marketing emails (which many
| people rely on to get coupons and deals) that has to feature
| pictures and the like.
| prmoustache wrote:
| > legitimate marketing emails
|
| I don't think there is such a thing.
| FredPret wrote:
| I receive many such emails that I signed up for and am
| happy to get.
|
| The senders of those emails are happy to send them.
|
| Unless you - an unrelated third party - think you have the
| right to insert yourself into this business relationship,
| it's completely legitimate.
| eikenberry wrote:
| > Talking to non-tech people means you're going to be copy-
| pasting screenshots and replying in blue text next to their
| bullet points that was written in black text.
|
| None of that requires HTML. Using ">" to denote previous
| conversation quotes is the standard and they normally get
| highlighted different than reply text. And images just need a
| decent 'drag-to-add-attachment' flow.
|
| Marketing emails don't matter as they are an abuse of the
| platform.
| FredPret wrote:
| The entire reason email (and the internet) took off is
| because there are many ways to use it, for many purposes.
|
| Handing down diktats about the correct use cases and
| workflows for a flexible thing that is currently being used
| by billions of people in billions of ways - like email -
| will either reduce your personal relevance to them, or, if
| you succeed in pushing your vision onto the popular thing,
| drive people away from it.
| Ringz wrote:
| That's why I am using aerc so that even HTML mails are
| presented as text in my terminal.
|
| Another problem are mails that don't have the TXT part and
| *only* HTML.
| gamegod wrote:
| Looks awesome. Is there a way to load saved templates?
| samdung wrote:
| there's an export HTML functionality. you can use this to save
| templates once you embed this in your project.
| gamegod wrote:
| I appreciate the response, but that's not what I was asking.
| I'll rephrase as a workflow question: After I make a design
| in your editor, I'll want to reuse that for future emails. Is
| there a way to load a saved design back in (that I previously
| made in your editor) so I don't have to redesign every email
| from scratch?
| philmo1 wrote:
| Absolutely amazing. Really makes so much sense to have a solid
| mail editor as OSS!
| ibdf wrote:
| I was writing them email templates 15 years ago... oh... look we
| are still using tables. How has email markup not evolved?
| samdung wrote:
| it has not evolved much. and i believe that's a good thing.
| this is the reason why emails from 20 years ago look the same
| even if you open them today. given the short life of everything
| on the internet, email is a wonderful thing.
| NoboruWataya wrote:
| Yes, I have no idea why UI practices need to constantly
| "evolve". As far as I am concerned a lot of UI is getting
| worse over time so the less evolution the better.
| johannes1234321 wrote:
| There is some need to evolve as contexts change. Screen
| sizes and capabilities, computing speed, available
| bandwitdth etc.
|
| Also humans seem to need fashion as a mechanism to show
| belonging and distinction. (Differentiate form parents
| generation, show affiliation to some sub culture, ...)
|
| And then there is the hope to make the production more
| efficient. (Which may not work out)
| conradolandia wrote:
| Email clients and servers have not evolved
| Avamander wrote:
| I've long wished for something like Markdown for email, but
| something that can actually be standardised and doesn't suffer
| so much under HTML's influence.
|
| I guess Google tries/tried with AMP but it's not that and I
| doubt they have the resilience to keep the effort up for
| decades for it to catch on.
| gav wrote:
| You can use MJML - https://mjml.io/ - which abstracts away a
| lot of the ugliness and Outlook hacks.
| dogas wrote:
| We _still_ have to use outdated layout / css techniques
| because some email clients ( _cough outlook_ ) only support a
| limited set of HTML/CSS features, and they seem to have no
| plans to want to make things easier for those who send html
| emails.
|
| See https://www.caniemail.com/scoreboard/ and take note of
| what's at the bottom of that list.
| Avamander wrote:
| > and they seem to have no plans to want to make things
| easier for those who send html emails.
|
| We just need so called "Kobold letters" to catch on so that
| all the inconsistencies become an actual threat. I'm only
| partially joking.
| bilater wrote:
| The argument for this I always get is security. Since email is
| so critical reducing the surface area of html/css supported
| somehow makes it secure. I...don't really buy it.
| blowski wrote:
| It's hard to imagine "full CSS support" being a selling point
| for an email client. Even for a free email client, funded by
| advertising, compatibility with other email clients is
| necessary for the advertisers.
| rd wrote:
| How does this compare to something like resend?
| Turboblack wrote:
| This is a very useful thing, I will definitely test it
| nik736 wrote:
| The drag and drop part is not working for me, Firefox, macOS. I
| can click on the elements on the left and they will pop up, but I
| am not able to drag them onto the email.
| PodgieTar wrote:
| Gosh, my first job was writing HTML emails. Those heady days of
| lamenting the fact that some companies STILL use Lotus Notes not
| dead, I see.
| ramathornn wrote:
| Wow love it, great work on this! I think you've tapped into a
| nice market, trying to reproduce marketing dept. designs into
| HTML templates are always a pain.
|
| I'm looking forward to seeing the product grow!
| jessyco wrote:
| Love it see it, I think most "designers" like this tools are
| behind paywalls and subscription email platforms. This looks
| great thank you for sharing.
| orra wrote:
| Cool that you open sourced this. As you say there's nothing open
| quite like this.
|
| Not using MJML as a design decision. Foes that simplify
| deployment a lot, or just keep things lighter? In turn, do you
| have to strangle a lot of compatibility issues yourself? etc.
| Thanks.
| carlosjobim wrote:
| I think it's distinctly uncool that this was published as open
| source. OP should charge money from all the swines that will
| use the software, including people like me.
| ashok_m wrote:
| Looking for a simple email designer which will give us
| compatibility in all email clients. Surely will test this in this
| weekend.
| _ache_ wrote:
| Did there is any history about the name ? Keep reading "Send
| nude". Sorry.
| 2Gkashmiri wrote:
| wow. this should help to design invoices, what do you think? html
| to pdf is not a problem anyway so....
| shortformblog wrote:
| No MJML feels like a mistake. I design emails and that is
| literally the most important feature to me.
| shortformblog wrote:
| Because someone keeps commenting and immediately deleting their
| comments in reply to this: MJML is a tool to essentially "fix"
| email, which essentially has to work around out-of-date clients
| and incomplete HTML specs.
|
| If it feels out of date, it's because HTML email itself is out
| of date.
| tejtm wrote:
| View -> Message Body As -> Plain Text
|
| Not your fault, but please always provide fall back text.
| steviedotboston wrote:
| I really like this idea!
| RamiAwar wrote:
| Anyone who has touched HTML emails knows the devilry involved.
| Kudos for developing and open sourcing this! Excited to try it
| out for my newsletter.
| adeptima wrote:
| This work looks very promising. "HTML for email" is indeed hard
| to design and hard to implement. Especially editing on mobile,
| tablet devices, or asian (two+ bytes japanese, chinese) languages
| input nightmare.
|
| I do lot of email templating for B2B CRM use cases and decided to
| opt out for a bit different approach based on slatejs/platejs
| editor
|
| https://docs.slatejs.org/
|
| https://github.com/ianstormtaylor/slate
|
| https://github.com/udecode/plate
|
| The internal representation of email template with variables in
| slatejs/platejs json format can look like:
|
| { "type": "h1", "children": [ { "text": " Blocks
| {{template_value}} {{$timenow}}}" } ], "id": "1" }
|
| Can be easily stored in Postgres jsonb. Very easy to add Reacjs
| base widgets like mentioning, media, diagrams, etc inside of
| slatejs/platejs editor.
|
| The drawback is that you can't design the exactly the same pixel
| perfect template.
|
| The better abstraction is probably MJML - https://mjml.io/ ...
| and yet with slatejs/platejs json format you can copy&paste your
| editings across various assets in CRM, knowledge base, etc
|
| Storing data in MJML is not a great choise for me
|
| <mj-text align="left" color="#55575d" font-family="Arial, sans-
| serif" font-size="13px" line-height="22px" padding-bottom="0px"
| padding-top="0px" padding="10px 25px"> ...
|
| Was thinking about using something similar to /SendWithSES/Drag-
| and-Drop-Email-Designer as the last final step ... but couldn't
| settle it my brain and most end-users dont care anyway.
|
| Any thoughts on data representations and "Postgres <> Editor >
| Email HTML > Send button" dataflow is greatly appreciated. Very
| few people have serious thoughts on the subject.
| shortformblog wrote:
| You can set an <mj-class> at the top of the file for a given
| design format to simplify your code. So in your example, if you
| did:
|
| <mj-class name="typebox" padding-bottom="0px" padding-top="0px"
| padding="10px 25px">
|
| <mj-class name="paragraph" color="#55575d" align="left" font-
| family="Arial, sans-serif" font-size="13px" line-height="22px">
|
| That would allow you to simplify your callbacks to
|
| <mj-text mj-class="paragraph typebox">
|
| You can also set CSS classes as well if you need something
| outside the MJML spec for some reason (which would potentially
| cover some of your cross-platform concerns).
|
| MJML also integrates well with other languages. For example, I
| use a Craft CMS integration to pull data in via Twig to build
| complete templates directly from my CMS; there's also an
| integration with Eleventy.
| SoftTalker wrote:
| The entire premise is absurd.
|
| I will grant that many people want rich text, formatted emails
| with images and logos. I don't want that but understand the wants
| and needs are different for others.
|
| For gods sake why HTML? A fairly simple markup language
| (Markdown, orgmode, etc) would have sufficed, would have
| eliminated the need for separate plain and html versions of every
| email, been far more accessible to screen-readers and other
| assistive devices, been far less privacy-invading, and been far
| less vulerable to security problems.
|
| But no, the answer was "let's put a full-blown web browser in
| every email client"
|
| I know the horses have left the gate.
| grepfru_it wrote:
| Because at the time web browsers were taking off and web based
| mail services (Hotmail yahoo etc) were taking off. Back in that
| time the alternative to html was Tex.
|
| Why do we still boot to 16-bit protected mode to launch any OS
| on x64? _shrug_ but you are welcome to move that mountain :)
| mska wrote:
| Really great thanks! Is it possible to add responsive styles?
| Such as converting columns into rows on smaller device screens?
| Cyphase wrote:
| I was just briefly searching for something like this the other
| day; will check it out. Thanks!
___________________________________________________________________
(page generated 2024-07-19 23:02 UTC)