Skip to content

Commit f1a753d

Browse files
committed
feat: added last issue and fixed numbering
1 parent 1274106 commit f1a753d

10 files changed

Lines changed: 80 additions & 6 deletions

File tree

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<p>Hello, </p>
2+
<p>You might have noticed that we have been unusually quiet for the past couple of weeks. That is not really like us.</p>
3+
<p>This time, though, things are different. Andrea and I took a little time to reflect, talk honestly, and prepare what will be the very final issue of FullStack Bulletin.</p>
4+
<p>This has not been an easy decision. There are quite a few reasons behind it, and they deserve more space and honesty than I could ever fit into a short editorial. So I wrote a dedicated blog post to tell the story properly: <a href="https://loige.co/farewell-fullstack-bulletin/" target="_blank"><strong>Farewell FullStack Bulletin</strong></a>.</p>
5+
<p>If you think you will miss FullStack Bulletin, please do check out the <a href="https://fullstackbulletin.com/" target="_blank"><em>new</em> website</a> too. We wanted to leave behind something genuinely useful: the full searchable archive, structured data exports, the open source code that powered the newsletter, the live streams where we built and refactored parts of the automation, and a curated feed of websites and creators that inspired so many of the issues over the years.</p>
6+
<p>So yes, this is the end of the newsletter. But it is not the end of everything that came out of it.</p>
7+
<p>It has been an absolute blast, and a real privilege, to share this little corner of the web with so many of you over the years. Thank you for reading, replying, sharing, sponsoring, encouraging us, and giving this project a reason to exist week after week.</p>
8+
<p>I am not going anywhere. I will still be around building things, writing, speaking, and getting excited about the web and software engineering. So do not be a stranger. Let's keep the conversation going.</p>
9+
<p>Even if not through FullStack Bulletin, I hope we can still keep learning from one another, and keep inspiring each other.</p>
10+
<p>Thank you, truly.<br/>
11+
<a href="https://loige.co" target="_blank">Luciano</a></p>
12+
<hr/>
13+
<blockquote>
14+
<p>"There is no real ending. It's just the place where you stop the story."<br/>
15+
― Frank Herbert</p>
16+
</blockquote>
17+
<hr/>
18+
<p><img alt="Painterly illustration of a warm, softly lit desk scene with a laptop open to the FullStack Bulletin farewell page, surrounded by a coffee mug, notebooks, books, sticky notes, and scattered papers, evoking a reflective final-send moment" class="newsletter-image" src="./7ba426a596712a2189189b15c32e053f83fa92453d25fec2f68c1935057a2f85.png"/></p>
19+
<p><a href="https://loige.co/farewell-fullstack-bulletin/" target="_blank"><strong>Farewell FullStack Bulletin</strong></a> — After 458 issues, 3,073+ curated links, and almost a decade of showing up in your inbox, it felt only right to make the final featured article the story behind this goodbye. In this post I share why Andrea and I decided to stop, what FullStack Bulletin meant to us, what we learned from it, and what still lives on beyond the newsletter itself. If this project ever gave you a useful rabbit hole, a fresh perspective, or just a little Monday energy, I think this piece will resonate with you. It is not really an obituary. It is more of a love letter to a project that meant a lot to us, and that shaped a big part of our lives for almost nine years. I hope you will give it a read. <a href="https://loige.co/farewell-fullstack-bulletin/" target="_blank"><strong>Read Article</strong></a></p>
20+
<hr/>
21+
<h2>Show's over, folks! 🎭</h2>
22+
<p>This time for good! Thanks for sticking with us and see you somewhere else 👋</p>
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"issueNumber": 459,
3+
"title": "The Last Issue",
4+
"slug": "2026-03-29-459-the-last-issue",
5+
"date": "2026-03-29",
6+
"templateType": "buttondown-markdown",
7+
"intro": "Hello,\n\nYou might have noticed that we have been unusually quiet for the past couple of weeks. That is not really like us.\n\nThis time, though, things are different. Andrea and I took a little time to reflect, talk honestly, and prepare what will be the very final issue of FullStack Bulletin.\n\nThis has not been an easy decision. There are quite a few reasons behind it, and they deserve more space and honesty than I could ever fit into a short editorial. So I wrote a dedicated blog post to tell the story properly: [**Farewell FullStack Bulletin**](https://loige.co/farewell-fullstack-bulletin/).\n\nIf you think you will miss FullStack Bulletin, please do check out the [*new* website](https://fullstackbulletin.com/) too. We wanted to leave behind something genuinely useful: the full searchable archive, structured data exports, the open source code that powered the newsletter, the live streams where we built and refactored parts of the automation, and a curated feed of websites and creators that inspired so many of the issues over the years.\n\nSo yes, this is the end of the newsletter. But it is not the end of everything that came out of it.\n\nIt has been an absolute blast, and a real privilege, to share this little corner of the web with so many of you over the years. Thank you for reading, replying, sharing, sponsoring, encouraging us, and giving this project a reason to exist week after week.\n\nI am not going anywhere. I will still be around building things, writing, speaking, and getting excited about the web and software engineering. So do not be a stranger. Let's keep the conversation going.\n\nEven if not through FullStack Bulletin, I hope we can still keep learning from one another, and keep inspiring each other.\n\nThank you, truly.\n\n— [Luciano](https://loige.co/)",
8+
"quote": {
9+
"text": "There is no real ending. It's just the place where you stop the story.",
10+
"author": "Frank Herbert",
11+
"authorTitle": null,
12+
"authorUrl": null
13+
},
14+
"links": [
15+
{
16+
"title": "Farewell FullStack Bulletin",
17+
"url": "https://loige.co/farewell-fullstack-bulletin/",
18+
"description": "After 458 issues, 3,073+ curated links, and almost a decade of showing up in your inbox, it felt only right to make the final featured article the story behind this goodbye. In this post I share why Andrea and I decided to stop, what FullStack Bulletin meant to us, what we learned from it, and what still lives on beyond the newsletter itself. If this project ever gave you a useful rabbit hole, a fresh perspective, or just a little Monday energy, I think this piece will resonate with you. It is not really an obituary. It is more of a love letter to a project that meant a lot to us, and that shaped a big part of our lives for almost nine years. I hope you will give it a read.",
19+
"imageUrl": "./7ba426a596712a2189189b15c32e053f83fa92453d25fec2f68c1935057a2f85.png",
20+
"featured": true
21+
}
22+
],
23+
"book": null,
24+
"additionalLinks": null,
25+
"sponsor": null
26+
}
189 KB
Loading

public/fullstackbulletin-archive.json

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,30 @@
11
[
2+
{
3+
"issueNumber": 459,
4+
"title": "The Last Issue",
5+
"slug": "2026-03-29-459-the-last-issue",
6+
"date": "2026-03-29",
7+
"templateType": "buttondown-markdown",
8+
"intro": "Hello,\n\nYou might have noticed that we have been unusually quiet for the past couple of weeks. That is not really like us.\n\nThis time, though, things are different. Andrea and I took a little time to reflect, talk honestly, and prepare what will be the very final issue of FullStack Bulletin.\n\nThis has not been an easy decision. There are quite a few reasons behind it, and they deserve more space and honesty than I could ever fit into a short editorial. So I wrote a dedicated blog post to tell the story properly: [**Farewell FullStack Bulletin**](https://loige.co/farewell-fullstack-bulletin/).\n\nIf you think you will miss FullStack Bulletin, please do check out the [*new* website](https://fullstackbulletin.com/) too. We wanted to leave behind something genuinely useful: the full searchable archive, structured data exports, the open source code that powered the newsletter, the live streams where we built and refactored parts of the automation, and a curated feed of websites and creators that inspired so many of the issues over the years.\n\nSo yes, this is the end of the newsletter. But it is not the end of everything that came out of it.\n\nIt has been an absolute blast, and a real privilege, to share this little corner of the web with so many of you over the years. Thank you for reading, replying, sharing, sponsoring, encouraging us, and giving this project a reason to exist week after week.\n\nI am not going anywhere. I will still be around building things, writing, speaking, and getting excited about the web and software engineering. So do not be a stranger. Let's keep the conversation going.\n\nEven if not through FullStack Bulletin, I hope we can still keep learning from one another, and keep inspiring each other.\n\nThank you, truly.\n\n— [Luciano](https://loige.co/)",
9+
"quote": {
10+
"text": "There is no real ending. It's just the place where you stop the story.",
11+
"author": "Frank Herbert",
12+
"authorTitle": null,
13+
"authorUrl": null
14+
},
15+
"links": [
16+
{
17+
"title": "Farewell FullStack Bulletin",
18+
"url": "https://loige.co/farewell-fullstack-bulletin/",
19+
"description": "After 458 issues, 3,073+ curated links, and almost a decade of showing up in your inbox, it felt only right to make the final featured article the story behind this goodbye. In this post I share why Andrea and I decided to stop, what FullStack Bulletin meant to us, what we learned from it, and what still lives on beyond the newsletter itself. If this project ever gave you a useful rabbit hole, a fresh perspective, or just a little Monday energy, I think this piece will resonate with you. It is not really an obituary. It is more of a love letter to a project that meant a lot to us, and that shaped a big part of our lives for almost nine years. I hope you will give it a read.",
20+
"imageUrl": "./7ba426a596712a2189189b15c32e053f83fa92453d25fec2f68c1935057a2f85.png",
21+
"featured": true
22+
}
23+
],
24+
"book": null,
25+
"additionalLinks": null,
26+
"sponsor": null
27+
},
228
{
329
"issueNumber": 458,
430
"title": "An Interactive Intro to CRDTs",

public/fullstackbulletin-recommended-feeds.opml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<opml version="2.0">
33
<head>
44
<title>FullStack Bulletin - Recommended Feeds</title>
5-
<dateCreated>Sun, 29 Mar 2026 11:15:13 GMT</dateCreated>
5+
<dateCreated>Sun, 29 Mar 2026 14:32:40 GMT</dateCreated>
66
<docs>https://fullstackbulletin.com</docs>
77
</head>
88
<body>

src/components/ArchiveHighlight.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import Button from './Button.astro';
44
import Icon from './Icon.astro';
55
66
const issues = await getCollection('issues');
7-
const totalIssues = issues.length;
7+
const totalIssues = 459;
88
---
99

1010
<section class="bg-white py-16 md:py-24 px-4 md:px-10 bg-pattern-grid">

src/components/FarewellHero.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { getCollection } from 'astro:content';
33
import Icon from './Icon.astro';
44
55
const issues = await getCollection('issues');
6-
const totalIssues = issues.length;
6+
const totalIssues = 459;
77
const dates = issues.map((i) => i.data.date).sort();
88
const firstYear = dates[0]?.slice(0, 4) ?? '2017';
99
const lastYear = dates[dates.length - 1]?.slice(0, 4) ?? '2026';

src/data/site.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ export const meta = {
33
locale: 'en_US',
44
title: 'FullStack Bulletin',
55
description:
6-
'FullStack Bulletin (2017-2026). A farewell to our weekly newsletter for fullstack developers. Browse the full archive of 438 issues.',
6+
'FullStack Bulletin (2017-2026). A farewell to our weekly newsletter for fullstack developers. Browse the full archive of 459 issues.',
77
canonicalUrl: 'https://fullstackbulletin.com',
88
twitterProfile: 'fstackbulletin',
99
};

src/layouts/BaseLayout.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ interface Props {
1010
1111
const {
1212
title = meta.title,
13-
description = 'FullStack Bulletin (2017-2026). A farewell to our weekly newsletter for fullstack developers. Browse the full archive of 438 issues.',
13+
description = 'FullStack Bulletin (2017-2026). A farewell to our weekly newsletter for fullstack developers. Browse the full archive of 459 issues.',
1414
ogImage = '/images/share-banner-facebook.jpg',
1515
} = Astro.props;
1616

src/pages/archive/index.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ const years = [...byYear.keys()];
2424
<div class="max-w-5xl mx-auto px-4">
2525
<h1 class="font-heading text-3xl md:text-4xl font-semibold mb-2">Archive</h1>
2626
<p class="text-base text-neutral-dark mb-12">
27-
All {sorted.length} issues of FullStack Bulletin, from 2017 to 2026.
27+
All 459 issues of FullStack Bulletin, from 2017 to 2026.
2828
</p>
2929

3030
<!-- Mobile horizontal year bar -->

0 commit comments

Comments
 (0)