Philipp 🐘 keila.io
pentacent.bsky.social
Philipp 🐘 keila.io
@pentacent.bsky.social
Building keila.io, an easy-to-use and reliable Open Source email newsletter tool. #elixirlang #opensource #buildinpublic
#ElixirLang people: Which option do you prefer?

🟣 if not is_nil(entity)
🟢 if entity
🔴 I don't use if

#myelixirstatus
November 8, 2025 at 7:31 PM
Here is a neat little trick when you need to test a verification flow in #PhoenixFramework: gist.github.com/wmnnd/cb80d4...

It's a common pattern to pass a URL generator to a context function. But you can pass a function that captures the token with an Agent instead.

#elixirlang #myelixirstatus
November 7, 2025 at 10:36 AM
Currently working on making life easier for people who don't have their own domain. Does this messaging seem clear and helpful?
#buildinpublic #ux #uxdesign
November 6, 2025 at 8:26 AM
Available now on Keila Cloud: Segments based on campaign interactions. This allows you to target contacts who have (or have not) interacted with your previous campaigns.
#buildinpublic #emailmarketing #newsletter #opensource

www.keila.io/updates/inte...
Interaction-based Segmentation - Keila
Create segments based on message interactions - target contacts who have received, opened, or clicked specific campaigns.
www.keila.io
November 4, 2025 at 12:27 PM
Coming soon to Keila: Filtering contacts by whether they have been sent, have opened or clicked a campaign. #buildinpublic #emailmarketing
November 2, 2025 at 9:24 AM
If you've just hit "Send" on an email newsletter, what would you expect a "Cancel" button to do? What would you expect to happen if some emails have already gone out? Any feedback is appreciated 😊

github.com/pentacent/ke...

#buildinpublic #opensource #ux
Need ability to CANCEL sending a campaign while it is under way · Issue #467 · pentacent/keila
I'm using the docker version of Keila, v0.17.1, and a campaign I just made is not sending at all. However the same sender was able to send me samples of the campaign, so this isn't a sender configu...
github.com
October 31, 2025 at 9:29 AM
In #ElixirLang you can simply write :timer.hours(2) instead of 2 * 60 * 60 * 1000

#til #myelixirstatus
October 30, 2025 at 9:10 PM
Who else keeps getting fake vulnerability reports paired with extortion attempts in their inbox?

This is really annoying because obviously I would be very interested if there was an actual vulnerability in one of my projects.
#spam #security #buildinpublic #indiehackers
October 23, 2025 at 11:53 AM
Reposted by Philipp 🐘 keila.io
If you want to get the same report for your GA4 and GSC properties, WebTrafficWatch is free and setting it up takes only a few seconds.

www.producthunt.com/products/web...
WebTrafficWatch: Weekly insights from Google Analytics 4 & Search Console | Product Hunt
Analyzes Google Analytics 4 & Google Search Console to generate weekly reports that flag significant shifts you should know about.
www.producthunt.com
September 28, 2025 at 1:57 PM
Do things that don't scale: A Keila customer called me while I was at the gym.
Normally, I wouldn't have been back at work for at least 1.5 hours.
Instead, I ran home, activated their account, and then returned to the gym. Extra workout, happy customer. Win-win. #buildinpublic #indiehackers 💪
September 24, 2025 at 8:52 AM
Does anyone have experience in reporting fraud to banks? I tried to report an account being used for a scam to Santander Portugal but their phone support said only customers can report fraud and their online chat is broken.
September 10, 2025 at 2:41 PM
www.thepinknews.com/2025/08/14/m... I shared this article from @pinknews.bsky.social on Hacker News and it reached the front page within a few minutes. A few minutes later, it was "flagged" and hidden from the front page without explanation. #hackernews #ai #lgbtq #meta #zuckerberg
August 14, 2025 at 6:03 PM
Here's a cool new little feature for Keila: The success redirect URL from signup forms can now include Liquid tags. This means you could now redirect to example.com/$contact_email to show a personalized message! #emailmarketing #buildinpublic
August 8, 2025 at 9:45 AM
Currency devaluation in action: Back in January, 8 USD was worth about 8 EUR.

The Dollar has since fallen so far that $8 now equals only €6.90. Unfortunately this means I have to raise the USD prices for new Keila XS subscriptions from $8 to $9.50.

#buildinpublic #inflation #currency
August 5, 2025 at 8:24 AM
TIL: Safari hides SVGs in Flexbox containers if they don't have an explicit width attribute. This seems like a bug to me.

svg {width: 100%} should fix the issue and hopefully not cause unexpectedly large images elsewhere🤞. #webdev #css #buildinpublic #webkit

github.com/pentacent/ke...
Set SVG width to 100% to fix missing icons in Safari · pentacent/keila@09254cb
github.com
August 1, 2025 at 2:40 PM
Another small bugfix: When an existing contact submits a form with double opt-in, they actually receive the confirmation email now: github.com/pentacent/ke... #buildinpublic #opensource #bug
Fix handling of DOI/FormParams when contact exists already · Issue #441 · pentacent/keila
Right now, a FormParams entry is created but without the email address, resulting the email not being sent and in a confusing user experience. What should happen instead? Instead, the FormParams en...
github.com
August 1, 2025 at 7:42 AM
Small but powerful quality of life improvement suggested by @lislegaard.bsky.social and now live on Keila Cloud: When you create a new campaign, the settings from your latest previous campaign are automatically used as the default. github.com/pentacent/ke... #buildinpublic #opensource
Let user set defaults or have settings latch · Issue #452 · pentacent/keila
I think it would be great if these things could be either have their defaults choosen by the user, or simply stay on previously selected value until manually changed. Choose Your Editor (I now have...
github.com
July 31, 2025 at 1:19 PM
Don't forget: Once you get an @letsencrypt.bsky.social cert for your domain, it's public. This is mere seconds after I deployed an app for the first time on a previously unused domain. #selfhosting #security
July 18, 2025 at 8:25 PM
Hey #elixirlang people, how do you usually structure code with Oban workers for async processing? ⚙️ #myelixirstatus
July 6, 2025 at 7:36 AM
Sometimes, a UI doesn't feel right because it's too fast. The solution: Just slow it down a bit. #uxdesign #ui #screenshotsaturday #buildinpublic #indiedev
July 5, 2025 at 2:18 PM
Everything up and running again 😅
July 3, 2025 at 9:56 AM
Looking at the bright side: At least as an #indiehacker I'm sufficiently agile so that I can add a banner like this when it suddenly becomes necessary. #buildinpublic 😑
July 3, 2025 at 9:39 AM
There's currently an interruption in the Send with Keila service on Keila Cloud. You can also follow this issue on our status page: status.keila.io
Keila Status Page
status.keila.io
July 2, 2025 at 11:04 PM
Working on simplifying the Sender form (while also working on a big update for Send with Keila on Keila Cloud).

I found that a lot of users filled out the reply-to fields even though they aren't really necessary. So I think I'll hide them in an expandable element now. #buildinpublic #uxdesign
June 30, 2025 at 6:25 PM
Hey fellow #ElixirLang people: Are you using Dev Containers for working with Elixir? Are you all using the elixir image as the base?

#vscode #buildinpublic
June 27, 2025 at 3:54 PM