Video summary
Phil Yews from Secura presents a new automated newsletter feature designed to help the rapidly growing nf-core community stay updated without overwhelming individual volunteers with manual tasks. As the nf-core ecosystem has expanded to over 14,000 Slack members and hundreds of pipelines, keeping track of new releases, blog posts, events, and proposals has become increasingly difficult. To solve this, Phil built a system that aggregates content from various sources into a single hub on the nf-core website, allowing users to view historical newsletters dating back to 2018 or access upcoming issues for specific months like June 2026. This approach ensures that significant updates are highlighted while lesser-known activities, such as new pipeline proposals and RFCs, are also captured in a comprehensive monthly wrap-up.
The newsletter is engineered to be accessible across multiple platforms with careful attention to technical compatibility. While the primary content is hosted as a rich web page, the system automatically generates a simplified HTML version for email clients that strips away complex CSS to ensure proper rendering in various apps like Gmail. Additionally, the solution supports RSS feeds for aggregators, a plain markdown version for terminal or LLM consumption, and a basic XML format specifically tailored for manual copying into LinkedIn newsletters. Phil also notes that while LinkedIn newsletters are highly popular, they cannot be fully automated via API due to platform limitations, necessitating a manual workflow for that specific channel which is supported by the generated XML content.
Behind the scenes, the entire infrastructure relies on Amazon Web Services, specifically using Simple Email Service (SES) to handle sending and subscriber management with full GDPR compliance in a European region. The architecture is maintained through a dedicated GitHub repository containing infrastructure-as-code scripts that manage AWS Lambda functions and other services to automate the scraping and distribution process. This setup allows for easy subscription confirmation via email and includes standard unsubscribe links, ensuring a robust and compliant user experience. Phil emphasizes that while advanced features like customizable content filters or detailed statistics on new modules are interesting ideas, the current focus remains on providing a reliable, low-maintenance way for the community to effortlessly stay informed about nf-core developments.
Read the full video transcript
Hi, Maxim here. I'm the senior bite
size. So today Phil
working at Secura will be presenting us
a new feature in NF core which is the
newsletter. So as usual you'll be able
to unmute yourself at the end if of the
talk if you have like any question.
Or you can also ask them on Slack later
later on. So now
to you Phil.
>> Thank you very much. Thank you for the
intro Maxim.
For anyone who doesn't know me, my name
is Phil Yews. I work at Secura as
project manager for Nextflow and
helped
co-found NF core back back in the early
days.
This is a bit of a
excuse me, a surprise bite size talk. I
think Maxim suggested it about 40
minutes ago.
So I haven't prepared a great deal but
it is all fresh in my mind on the topic.
So hopefully I can just talk you through
a little bit about what I built, why,
how you can use it and then a little bit
on the background of how it works under
the hood for those who are interested.
So basically the core problem I'm trying
to solve here is that the NF core
community has grown a lot in recent
years. We are I think over 14,000 people
in Slack now. We have hundreds of
pipelines and anyone who monitors the
new pipelines channel for example will
see that we're getting new pipelines
added every week almost. New RFCs,
proposals to asking for comments on
changing standards.
There's a lot of like these bite size
talks and hackathons and stuff happening
all the time and we're pushing out blog
posts with updates. It's just a lot of
stuff.
And it's really hard to keep up track
with all of these different new
pipelines, new releases of pipelines
across the whole community
even if you spend all day every day on
Slack like I do and like Maxim does.
So
for a while I've kind of been thinking
about it would be nice to have a
newsletter.
We started a a newsletter with Sakera
with kind of next layer updates and and
community updates there and it's it's
gone down really really well. So, for
the past year or more I've been thinking
about trying to do something for NFCore.
But, we're all volunteers here and um
you know, time is precious. And so, the
question really was how do we do that in
a way that doesn't require someone to
spend a bunch of time doing it every
month because it's
kind of a dull [clears throat] task and
and it's just going to fall by the
wayside eventually. So, I wanted to see
if I could automate it.
So, um basically what I did was I built
a chunk of website which is and we have
all this new content in the website
already basically. Um so, it's a new
page or section of pages in the website
which aggregates all of this
information. And then I built a new repo
which takes basically scrapes a specific
web page
on a specific day of the month and sends
it out to an email list.
And I'll talk through a little bit about
how it looks now.
Let me share my screen.
>> [clears throat]
>> Hopefully everyone can see the NFCore
website.
So, um
>> [clears throat]
>> just move that over here so I can look
at it. So, if you go up to the top now,
you'll see a couple of things there. You
can see I'm giving a bite-size talk
right now. Um
>> [laughter]
>> and then there there's a new link here
that says um newsletter underneath
community.
Uh this is kind of the hub of everything
and there's a couple of things here.
Firstly, you can go back and see
historical newsletters. Obviously, we
haven't actually been sending them since
2018, but all the content has been
building up that whole time and so we
can retrospectively build a newsletter
for all past dates. So, we figure why
why not? Um you can click through if we
look at the most recent one um which
hasn't gone out. We'll be a new one in a
week uh for June.
Um you can see it aggregates basically
all of the stuff that happened in the
previous month. So, this would have gone
out on 1st of June 2026 and there was a
new blog post that was at the end of
May. So, it gets highlighted at the top.
It also highlights all of the new
pipeline releases that happened in the
previous month. You can see that some
pipelines had multiple releases cuz of a
patch
or whatever and they're all kind of
aggregated together. So, you can see at
a glimpse all of the major pipeline
updates.
We have upcoming events. So, you can see
what to what to join in. You've got
bite-size or our newsletter.
>> [laughter]
>> Um and then at the bottom is kind of
some lesser of less obvious things.
Um there's a recap of the last 2 months
previous of blog posts and events just
in case you missed it just as a
reminder.
Um and then at the bottom we have brand
new activity for nascent pipelines which
have not yet been built. So, we have
pipeline proposals which have been
opened. Um this one's been accepted
already. This one's brand new. And then
these are the ones pipelines which have
moved on to the next step after that um
and they've got a new GitHub repository
created.
So, you can see the bleeding edge of new
pipelines and and what's happening there
which is otherwise quite difficult to
see.
Um and we also can see here new RFCs
with
request for comments about changes in
the community.
And then yeah, you can skip back through
basically any month and see see the kind
of wrap up for that month.
This one's got Maxime giving a thumbs up
to a pigeon.
Particular highlight of mine.
Um so, this works well as a web page.
Obviously, email clients are a bit
rubbish at handling HTML so, you can't
just send a whole kind of web page.
So, we have to have a special HTML
version for email clients which
basically takes away all the nice things
from web pages.
So, like all the CSS is in line.
Um images are all kind of absolute URLs
or bunch of stuff like that is done
under the hood so, that
so that it hopefully renders okay um
in your uh your email clients. It's also
mobile friendly. So if I view this on a
mobile phone it will kind of collapse
into a single column.
Hopefully it looks okay. It's email
clients are famously difficult to work
with. So I mean I've checked this in
Gmail and a couple of others and it it
looks good.
Um but obviously if you see some
horrible thing then let us know and
hopefully we can try and fix it. It
should also if I switch to light mode
we'll see if it crashes my computer.
There you go. It should also work in
light mode
and be be responsive.
Uh what else? Um
there's a couple of other flavors. If
you still
like your RSS feeds there's an RSS feed
you can subscribe to. This is useful for
dumping into I don't know Slack for
example
or other kind of like read aggregators.
Um there's a markdown version which
doesn't really kind of show up anywhere.
I'm curious if anyone finds this useful
either to again I don't know maybe you
want to read it in your terminal or give
it to your LLM agent or whatever but
there it is in markdown in case that's
useful. And then there's a super simple
stupid HTML version that has zero
styling which is basically for internal
use um with the LinkedIn
uh newsletter which I'll I'll mention in
a second.
Um
Okay.
That's it really apart from that you'll
see a couple of new bits just asking to
say you can sign up
and there's like a sign up page here
tells a little bit about how it works
and stuff. And uh I've also written a
blog post which has just gone out
describing all the same stuff in blog
post format
um and kind of describing a little bit
about what you can expect. So I'm really
on the kind of features front I'm really
hopeful that this is useful to people
um and is gives a convenient way for
people to keep up to date with what's
going on in community.
Um one more thing and the LinkedIn
um what again going on experience with
Sekira we saw that their email
newsletter is moderately popular.
Um but the LinkedIn newsletter was
massively popular. And basically, I
think a lot of people these days get so
much spam and so much stuff in their
inbox that newsletters are a bit kind of
stale and a bit old. Um but people do
spend a lot of time on LinkedIn and the
interface here is quite nice. Um and so
we're going to try that as well. So we
will mirror the same content into
LinkedIn in a in a newsletter format. So
you'll hopefully still see these pop up
as well. A big thank you to Lizzie who
works in marketing at Sekera who is
going to do this for us cuz it's a
manual process, unfortunately. I spent
several months getting my hands on a
LinkedIn API key which took ages only to
find out that newsletters cannot be
automated via API. Almost everything
else in LinkedIn can be. But um the
newsletters they have this kind of fancy
wizzy wig editor and it can't be touched
with an API. So you have to manually
type everything in here.
Uh which is why we have this uh
this um this kind of simple version.
There we've we've plain XML so that she
can easily copy and paste that into
LinkedIn for us.
So uh hopefully that works well and is
another way to subscribe.
Okay.
Um
that's basically how all the the clever
stuff for the the newsletter works. It's
just a webpage. Um the only remaining
part of of how this works is talking a
little bit about um the back end that
actually sends emails.
Um and this I've basically kind of
it's quite easy because Amazon,
thankfully, has a service which just
handles emails.
So um it's called a simple email email
service, SES.
Uh one of the very many numbers of AWS
services and it kind of handles
everything you need for a for a
newsletter.
So um we have credits provided to us
from for NF Core from AWS which help
with many things we do and they will now
also help with sending our newsletter.
So um so when you hit subscribe, in
fact, I can do it. I don't think I've
done it for my email address so early
testing. I type in my email address here
or in any of these subscribe boxes
and hit subscribe.
I've just got an email which
you'll have to take my word for
cuz it's not going to be in the screen
share.
But I get a nice kind of confirmation
email so it will be an NF-Core
newsletter. I hit confirm and then that
takes me to a web page with a really
ugly URL but you know, it works. That
confirms that my email address and now
I'm subscribed.
And that's really all there is to it.
Everything is stored on AWS. They have
their own member management service.
There's unsubscribe links in every email
and also in the email headers so you get
those nice kind of buttons at the top of
Gmail saying do you want to unsubscribe?
And we don't have to worry about
managing all of that infrastructure.
I say that there is actually a new
GitHub repo I've created called
newsletter which has all the
infrastructure.
It basically has the
has all the architecture for this so
I'm not going to go into too much
details cuz it's kind of boring.
Basically there is a few AWS services
which do these things. So here's here's
SES service in the middle which actually
maintains the contact list and and sends
the emails.
And these are the different flows.
And so it's like a lambda and a few
other things to do with making the
subscription work.
But this is just a pure infra repo that
basically just needs to sit there. Has
all the infrastructure as code scripts
in here.
And and should never really ever change.
The website has all the dynamic content.
Right. That was staggering detail for
any feature.
Sorry if I bored you all.
But I hopefully this is a useful thing.
Tell all your friends. Let's see how
many people we can get signed up and
hopefully makes everyone's lives a
little bit easier in staying up-to-date
with NF-Core.
Let me check the questions.
>> I know thank you very much. That was
like amazing. I'm super happy about like
learning more about all of the technical
side.
A quick question, do we know about how
many people have subscribed to the
newsletter?
>> It's a follow-up task for me which I
have not yet done
is to expose this information. I want to
stick this onto the end of course that's
page. Exactly. Um so I haven't done that
yet. It should be possible.
Um I haven't even thought about how to
do it yet, but the SES service basically
has these statistics about number of
people signed up and stuff. So it'd be
nice to have a little graph kind of
showing the number of subscribers.
>> And you assume that we could have that.
We don't have access to the email so we
don't know who subscribed it who
subscribed, but we know how many people.
>> Yeah, exactly. I mean technically as an
admin I can go in and I can see who
subscribed, but I don't think there's
any need for that. Um we definitely
don't want to obviously expose that
publicly. So
just a count is fine.
>> Well, that's that's perfect. Yeah, no. I
think you covered like every question I
could possibly have. Like you went very
deep into the the technical details and
so on. Uh uh
Yeah, I see
Matthias was mentioning of course like
the statistics. So I think we are good.
Does anyone else has any questions that
feel I don't covered already or are we
good to go?
>> I have a question for all of you.
Have we have I managed to cover all of
the different content types? So we have
blog posts, advisories, events,
pipelines, proposals.
I think those are the five content types
that it scrapes, but is there anything
else that we could have in an email?
>> Matthias is mentioning the components
that are missing.
And Kevin just appeared online. Kevin,
do you have any questions?
>> Uh no, just suggestion also including
the maintenance
uh [snorts]
news updates.
>> The maintainers have they published blog
posts um with notes.
>> Exactly as I included especially in the
newsletter.
>> Yeah, because all blog posts are
included in the newsletter. So, it will
it will show up as a blog post.
>> That I might have missed. Otherwise, it
would be nice. I mean, what would be
cool is if you could select what you
would actually like to get, right?
>> Uh it was it was it was looking like I
was going to finish maybe one day. But,
um there's another [clears throat] level
of complexity.
>> right? Just thinking.
Never mind.
>> [laughter]
>> That would be a fun
That would be a fun feature, but
honestly, I don't think that's going to
happen anytime soon. It would be a a
pain.
>> Yeah, we have a suggestion on on the
chat. The modules. Do you want Do you
want to make like any the new modules
because we have new modules coming like
every day.
>> I
Yeah. Sorry, I didn't mean to cut you
off.
Um
yeah, I I did think about that when I
first started. Um I think I even looked
into it. It was a few months ago now, so
I forget.
If I remember correctly, my main problem
with that is there's just a a lot of
them.
Um and so,
I wasn't sure how useful it was if you
just have a list of like 50 new modules
or 100 new modules every month.
Um
Well, I I don't know how many new
modules we have any every month, but we
have a lot.
Um so, kind of I felt like pipelines was
a manageable list. It's kind of, you
know, 10 or 15 every month. But, when
you add my modules, it was just this
kind of huge
list. So, I mean,
I could have a play around with it again
if people really really want it. Um
>> No, for me I think I would like more the
modules to be like just in the stats to
see how many new modules we have, how
often do we update the module, and so
on. Like more I think it would be more
interesting just as statistics as just
having like to know
which module are coming. Okay. Yeah,
Nicolas is
suggesting like a counter.
>> Yeah, exactly. Matthias was already
saying can have newsletter stats in the
newsletter bit.
I mean, I guess in theory we could have
all all kinds of stats
in the newsletter like current number of
pipelines, current number of modules,
maybe some plots and stuff. Um that that
would be doable. We could do that.
>> Um I think I have just one question. Why
did you choose the region in in Europe?
Or was there anything else?
>> No strong reason. Nearly all of the AWS
infrastructure we run for NF-Core is in
Europe and I'm in Europe, so
>> Yeah, that that makes sense. No, that
makes sense
for me.
>> Yeah, honestly, it was it was just a
default zone for me. So, I didn't really
think of too much about it. Also,
generally EU is slightly more privacy
conscious than non-EU.
Um so, if in doubt for because we're
storing people's email addresses with
GDPR and stuff like this, I think it's
kind of probably safer to be in Europe
by default.
>> I fully agree.
Okay. Thank Thank you very much. I think
we can stop recording for now.
>> Okay. Thanks, everyone.
>> Thank you.