{post.title}
++ {post.excerpt && + (post.excerpt.length > 120 + ? post.excerpt.slice(0, 120) + "…" + : post.excerpt)} +
- ·{" "}
- {formatReadingTime(post.readingTime)}
+
{post.tags && (
+ {post.visibility === "url"
+ ? "DRAFT"
+ : }
+
{" "}
+ · {formatReadingTime(post.readingTime)}
diff --git a/routes/reports/index.tsx b/routes/reports/index.tsx
index d754faa..9e6529c 100644
--- a/routes/reports/index.tsx
+++ b/routes/reports/index.tsx
@@ -53,7 +53,9 @@ export default function Page() {
/>
-
+ r.visibility === "author")}
+ />
>
);
}
diff --git a/scripts/copyright.ts b/scripts/copyright.ts
index 9754c98..3feb6ad 100755
--- a/scripts/copyright.ts
+++ b/scripts/copyright.ts
@@ -18,7 +18,7 @@ for await (
const entry of walk(dir, {
exts: [".ts", ".tsx"],
includeDirs: false,
- skip: [/node_modules/, /_fresh/, /copyright\.ts$/],
+ skip: [/node_modules/, /_fresh/, /copyright\.ts$/, /generate-rss\.ts$/],
})
) {
const filePath = entry.path;
diff --git a/scripts/generate-rss.ts b/scripts/generate-rss.ts
index 70829b7..da441e4 100755
--- a/scripts/generate-rss.ts
+++ b/scripts/generate-rss.ts
@@ -1,8 +1,3 @@
-/**
- * Copyright (c) 2025 miwa
- * SPDX-License-Identifier: AGPL-3.0-or-later
- */
-
#!/usr/bin/env -S deno run --allow-net --allow-write
/**
* Copyright (c) 2025 miwa
diff --git a/static/fonts/iosevka-custom/TTF/IosevkaCustom-Bold.ttf b/static/fonts/iosevka-custom/TTF/IosevkaCustom-Bold.ttf
index 27ba584..10798a5 100644
Binary files a/static/fonts/iosevka-custom/TTF/IosevkaCustom-Bold.ttf and b/static/fonts/iosevka-custom/TTF/IosevkaCustom-Bold.ttf differ
diff --git a/static/fonts/iosevka-custom/TTF/IosevkaCustom-BoldItalic.ttf b/static/fonts/iosevka-custom/TTF/IosevkaCustom-BoldItalic.ttf
index 82ac3cc..e384954 100644
Binary files a/static/fonts/iosevka-custom/TTF/IosevkaCustom-BoldItalic.ttf and b/static/fonts/iosevka-custom/TTF/IosevkaCustom-BoldItalic.ttf differ
diff --git a/static/fonts/iosevka-custom/TTF/IosevkaCustom-Italic.ttf b/static/fonts/iosevka-custom/TTF/IosevkaCustom-Italic.ttf
index 49804e4..7c8cc39 100644
Binary files a/static/fonts/iosevka-custom/TTF/IosevkaCustom-Italic.ttf and b/static/fonts/iosevka-custom/TTF/IosevkaCustom-Italic.ttf differ
diff --git a/static/fonts/iosevka-custom/TTF/IosevkaCustom-Regular.ttf b/static/fonts/iosevka-custom/TTF/IosevkaCustom-Regular.ttf
index 67e1743..8fe1e44 100644
Binary files a/static/fonts/iosevka-custom/TTF/IosevkaCustom-Regular.ttf and b/static/fonts/iosevka-custom/TTF/IosevkaCustom-Regular.ttf differ
diff --git a/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-Bold.woff2 b/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-Bold.woff2
index 9897208..fd5840d 100644
Binary files a/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-Bold.woff2 and b/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-Bold.woff2 differ
diff --git a/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-BoldItalic.woff2 b/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-BoldItalic.woff2
index 9a78840..824be6b 100644
Binary files a/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-BoldItalic.woff2 and b/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-BoldItalic.woff2 differ
diff --git a/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-Italic.woff2 b/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-Italic.woff2
index 6a755d4..6d7fd83 100644
Binary files a/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-Italic.woff2 and b/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-Italic.woff2 differ
diff --git a/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-Regular.woff2 b/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-Regular.woff2
index d23176a..332dc47 100644
Binary files a/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-Regular.woff2 and b/static/fonts/iosevka-custom/WOFF2/IosevkaCustom-Regular.woff2 differ
diff --git a/static/icons/brazil.png b/static/icons/brazil.png
new file mode 100644
index 0000000..5c3fdb3
Binary files /dev/null and b/static/icons/brazil.png differ
diff --git a/static/icons/spain.png b/static/icons/spain.png
new file mode 100644
index 0000000..85ce240
Binary files /dev/null and b/static/icons/spain.png differ
diff --git a/static/icons/uk.png b/static/icons/uk.png
new file mode 100644
index 0000000..298b891
Binary files /dev/null and b/static/icons/uk.png differ
diff --git a/static/rss.xml b/static/rss.xml
index 7a26d3e..341ad4a 100644
--- a/static/rss.xml
+++ b/static/rss.xml
@@ -1,29 +1,33 @@
-
- $reports - acpi.at
- https://acpi.at/reports
- thoughts, ramblings, and occasional coherence
- -
-
When awareness feels like a burden
- https://acpi.at/reports/3m4yhdcgqr425
- https://acpi.at/reports/3m4yhdcgqr425
- Thu, 06 Nov 2025 23:54:23 GMT
- The worst days of my life happen to be the ones where I am overly aware about my surroundings and problems.
-
- -
-
Why Brazilian Portuguese speakers struggle to understand European Portuguese
- https://acpi.at/reports/3m4yszxlivv25
- https://acpi.at/reports/3m4yszxlivv25
- Sat, 16 Aug 2025 00:38:02 GMT
- EP speakers lowkey be like: 'ixtou a apnhr murangjs pah'
-
- -
-
Echoes of thought in a world wired to produce
- https://acpi.at/reports/3m4yrn7md2k25
- https://acpi.at/reports/3m4yrn7md2k25
- Tue, 20 May 2025 00:02:53 GMT
- For the first time in a few months, I had some time alone to process my thoughts.
-
-
-
\ No newline at end of file
+
+ $reports - acpi.at
+ https://acpi.at/reports
+ thoughts, ramblings, and occasional coherence
+ -
+
When awareness feels like a burden
+ https://acpi.at/reports/3m4yhdcgqr425
+ https://acpi.at/reports/3m4yhdcgqr425
+ Thu, 06 Nov 2025 23:54:23 GMT
+ The worst days of my life happen to be the ones where I am overly aware about my surroundings and problems.
+
+ -
+
Why Brazilian Portuguese speakers struggle to understand European Portuguese
+ https://acpi.at/reports/3m4yszxlivv25
+ https://acpi.at/reports/3m4yszxlivv25
+ Sat, 16 Aug 2025 00:38:02 GMT
+ EP speakers lowkey be like: 'ixtou a apnhr murangjs pah'
+
+ -
+
Echoes of thought in a world wired to produce
+ https://acpi.at/reports/3m4yrn7md2k25
+ https://acpi.at/reports/3m4yrn7md2k25
+ Tue, 20 May 2025 00:02:53 GMT
+ For the first time in a few months, I had some time alone to process my thoughts.
+
+
+
diff --git a/utils/atproto.ts b/utils/atproto.ts
index f1fec2c..8bd4668 100644
--- a/utils/atproto.ts
+++ b/utils/atproto.ts
@@ -67,28 +67,7 @@ export async function getPosts(cursor?: string): Promise {
".",
),
cid,
- } as Report)).filter((r) => r.visibility === "author").sort((a, b) =>
- b.date as any - (a.date as any)
- );
+ } as Report)).sort((a, b) => b.date as any - (a.date as any));
return reports;
}
-
-export async function retrieveReport(rkey: string): Promise {
- const response = await xrpc("com.atproto.repo.getRecord", {
- collection: "com.whtwnd.blog.entry",
- repo: "acpi.at",
- rkey,
- });
-
- if (!response) return null;
-
- return {
- ...response.value,
- readingTime: response.value.content
- ? calculateReadingTime(response.value.content)
- : 1,
- cid: response.cid,
- rkey,
- } as Report;
-}
diff --git a/utils/fm.ts b/utils/fm.ts
index 722ef10..eef11a6 100644
--- a/utils/fm.ts
+++ b/utils/fm.ts
@@ -15,6 +15,8 @@ interface Track {
url: string;
}
+export const FM_USER = "satisfeita";
+
const secret = Deno.env.get("FM_SECRET");
export let tracks: (() => Track[]) | undefined;
@@ -22,7 +24,7 @@ if (secret) {
const client = new LastClient(secret);
tracks = await withInterval(async () => {
- const { tracks: raw } = await client.user.getRecentTracks("favewa", {
+ const { tracks: raw } = await client.user.getRecentTracks(FM_USER, {
limit: 5,
extended: true,
});
+
+
+