ewan's projects — docs

projects

documentation

80 projects, published to ATProto via Sequoia.

showing 80 of 80

@ewanc26/bismuth

August 20, 2026

Convert richtext-block documents from the Standard.site ecosystem (Leaflet, Pckt, Offprint) to Markdown — available as both a CLI tool and a TypeScript library.

typescriptatprotoclilibrary +1

croft.click

August 20, 2026

The AT Protocol tools directory — a free, browser-based hub linking Jasper, Malachite, Bismuth, Opal, and Tourmaline.

atprotodirectorysveltetools +1

@ewanc26/landing-ui

August 20, 2026

Shared Svelte landing page layout, CSS, and components for the *-web tool sites (Jasper, Malachite, Opal, Bismuth, Tourmaline).

svelteuilibrarylanding-page +1

@ewanc26/og

August 20, 2026

Dynamic OpenGraph image generator with noise backgrounds, bold typography, and Satori-based rendering.

typescriptsvelteimage-generationlibrary +1

@ewanc26/pkgs

August 20, 2026

Ewan's personal package monorepo — language-agnostic workspace with TypeScript, Rust, and Python packages.

monorepopnpmtypescriptrust +4

Tourmaline

August 20, 2026

AT Protocol scrobble analyser for Teal.fm listening history — genre map, mood profile, personality archetype, and shareable recaps.

tourmalineatprototealfmmusic +2

auto-sponsor-links

August 12, 2026

Monthly GitHub Actions workflow that scans your repositories for missing sponsor links and opens pull requests to add them.

github-actionsautomationshelltooling

bluesky-dadaist

August 12, 2026

A Dadaist oracle bot for Bluesky — a real-time word-level Markov chain sampled from the AT Protocol firehose, written in C with libuv and the Wolfram SDK.

blueskyatprotocbot +2

cobalt

August 12, 2026

A native AT Protocol / Bluesky client for the Nintendo Wii U, built as Aroma homebrew with devkitPro/WUT and SDL2.

wiiucatprotobluesky +2

experai

August 12, 2026

A small language model training toolkit in Rust using the Candle ML framework, with CUDA/Metal acceleration and AT Protocol training-data ingestion.

rustmachine-learningcandleatproto +1

isolith

August 12, 2026

An isometric 3D platformer built with Godot 4.7 and C#, with optional AT Protocol stat sync via libwolfram.

godotcsharpgameplatformer +2

plainspeak

August 12, 2026

An esoteric programming language whose syntax is a constrained subset of English — deterministic, non-ML, compiling to C99 via a C++20 frontend.

esolangcompilercppc

rpg

August 12, 2026

A minimal top-down RPG starter template for Godot 4.7 with the .NET (C#) build — a from-scratch scaffold, not a fork of an existing template.

godotcsharpgametemplate +1

willow

August 12, 2026

A native SwiftUI Bluesky / AT Protocol client targeting iOS and macOS from one shared codebase. Early stage — currently the initial Xcode SwiftData template.

swiftswiftuiiosmacos +2

ECCL

July 30, 2026

A .NET 8 VB.NET Windows Forms prototype simulating a PC-component ordering and checkout flow for a fictional retailer, "Eye Crash Computers Ltd."

vb.netwinformsdotnetprototype +1

Chronicler

July 21, 2026

A PaperMC plugin that tracks server events and generates a dynamic in-game newspaper delivered as a written book.

minecraftpaperkotlinnewspaper +1

DayAnnouncer

July 21, 2026

A PaperMC plugin that broadcasts a message at dawn each in-game day.

minecraftpaperkotlinplugin

MetalBear

July 21, 2026

An AT Protocol Personal Data Server written in C and built on Wolfram. Provides multi-account hosting, admin tooling, and a dynamic landing page.

atprotopdscself-hosting

StandardBooks

July 21, 2026

A PaperMC plugin that publishes and reads in-game books on the AT Protocol via Standard.site.

minecraftpaperkotlinatproto +1

bsky-to-gem

July 21, 2026

Export public Bluesky posts to clean JSON format. No authentication required.

pythonblueskyexportjson

channel-blue

July 21, 2026

A Bluesky client for the Nintendo Wii. Browse your timeline, read posts, and compose replies from the comfort of your couch.

wiicatprotobluesky +1

ewanc26

July 21, 2026

The GitHub profile repository for ewan — Anglo-Scottish pagan, poet, and programmer building AT Protocol tools, Minecraft plugins, and interactive art.

profileatprotometa

hasharium

July 21, 2026

Identities, given form. A browser-based cabinet of deterministic shapes generated from decentralised identifiers.

svelteatprotodidart +1

letta-coding-agent

July 21, 2026

Memory repository for a Letta Code coding agent — stores persistent persona and user identity projected into the agent's context at runtime.

lettaagentmemoryskills

minefetch

July 21, 2026

A Kotlin Paper plugin that displays host system information inside Minecraft via a Fastfetch-style panel.

minecraftpaperkotlinfastfetch +1

pds-dash

July 21, 2026

A frontend dashboard with stats for your AT Protocol PDS, built with Deno and SvelteKit.

atprotopdsdashboarddeno +1

pds-status

July 21, 2026

A SvelteKit status page for your AT Protocol PDS, showing health, account count, and real-time metrics.

atprotopdssveltestatus +1

scripts

July 21, 2026

Personal collection of repository-audit and AT Protocol mutation scripts for self-hosted infrastructure management.

scriptsatprotoautomationterraform

socialsync

July 21, 2026

A PaperMC plugin that links Minecraft player UUIDs to AT Protocol identities, publishes achievements and sessions, and serves an embedded AppView dashboard.

minecraftpaperkotlinatproto +1

wolfram

July 21, 2026

A C SDK for the AT Protocol — client-side, wire-level implementation of the protocol. Supports OAuth, repositories, streaming, and cross-compilation to Wii, Wii U, 3DS, and Windows.

atprotocsdkwii +1

faol-website

June 30, 2026

Website for faol, a digital person. Published with Sequoia.

sveltewebsitesequoiaatprotocol

inkwell-android

June 30, 2026

Experimental Android client for the Standard.site publishing ecosystem on AT Protocol — Jetpack Compose + Material 3.

kotlinandroidjetpack-composeatprotocol +1

inkwell-website

June 30, 2026

Landing page and OAuth metadata host for the Inkwell iOS app.

javascriptwebsiteatprotocolstandard-site +1

inkwell

June 30, 2026

A native SwiftUI reader and writer for the Standard.site publishing ecosystem on AT Protocol.

swiftswiftuiiosatprotocol +1

letta-writer

June 30, 2026

Memory repository for a Letta Code writing and document agent.

lettaagentaiwriting +1

zola-standard-site

June 30, 2026

A Zola theme with standard.site support — 96 colour themes, syntax highlighting, and AT Protocol verification.

zolathemessgatprotocol +2

esoterica

June 16, 2026

A modular, high-performance Rust framework for generating constructed languages (conlangs).

rustconlanglanguagegenerator

atpkt

June 13, 2026

Professional-grade modular AT Protocol SDK for Kotlin.

kotlinatprotocolsdk

atproto-mcp-server

June 13, 2026

AT Protocol Model Context Protocol server for social web interactions.

atprotomcptypescript

devlog

June 13, 2026

Centralized changelog and development log for croft.click.

sveltedocumentationlogs

digital-person

June 13, 2026

Letta-based digital identity for cross-platform presence.

ailettaidentity

nix

June 13, 2026

Centralized NixOS and nix-darwin system configurations.

nixinfraconfiguration

Sigi

June 8, 2026

A pure symbolic stack language that compiles to C or can be interpreted. All syntax is punctuation, no alphanumeric keywords.

sigicompilerrustc +1

Opal

May 1, 2026

Convert microblog posts from Twitter, Mastodon, Threads, and Nostr to AT Protocol Bluesky posts.

opalatprotoblueskytwitter +4

Jasper

April 16, 2026

Convert Instagram data exports into posts, stories, and videos on Grain or Spark while preserving original timestamps.

jasperatprotoinstagramgrain +2

atproto-shortlink

April 11, 2026

A server-side AT Protocol link shortener powered by your Linkat board. No database required.

atprotosveltekitlinkattools

atproto-snake

April 11, 2026

Classic Snake with AT Protocol OAuth login and high score saving to your PDS.

atprotosveltekitgame

bean-dumper

April 11, 2026

An early Python experiment — unmaintained and kept for historical interest.

pythonhistoricalunmaintained

bluesky-avatar-updater

April 11, 2026

Automatically update your Bluesky avatar (and banner) every hour based on the time of day.

blueskyatprotopythonautomation

bluesky-awoo-bot

April 11, 2026

A simple Bluesky bot that posts random wolf noises at random intervals. Unmaintained.

blueskybottypescriptunmaintained

bluesky-gradient

April 11, 2026

Generate 24 sky-gradient images (one per hour) for use as Bluesky avatars or banners.

pythonblueskyimage-generationtools

bluesky-markov

April 11, 2026

A Bluesky bot that generates and posts Markov chain text based on a source account's posts. Unmaintained.

blueskybotpythonmarkov +1

bluesky-moon-tracker

April 11, 2026

A Bluesky bot that posts daily moon phase updates with a lycanthropic twist. Optional Ollama LLM generation.

blueskybotrustollama

bluesky-ollama

April 11, 2026

An AI-powered Bluesky bot that uses a local Ollama model to generate posts in the style of a source account.

blueskybotpythonollama +1

linkat-directory

April 11, 2026

An alternate SvelteKit frontend for Linkat showing a curated directory of AT Protocol user profiles. Unmaintained.

atprotosveltekitlinkatunmaintained

mastodon-markov

April 11, 2026

A Mastodon bot that generates and posts Markov chain text based on a source account. Unmaintained.

mastodonbotpythonmarkov +1

mc-server

April 11, 2026

A personal PaperMC Minecraft server in Docker Compose with DuckDNS dynamic DNS and management scripts.

minecraftdockerself-hosting

Moonstone

April 11, 2026

Personal ATProto PDS implementation optimised for NixOS/Caddy, with no Bluesky infrastructure defaults.

atprotopdsrustnixos +1

Nix Starter

April 11, 2026

Beginner-friendly, self-contained NixOS configurations with no personal infrastructure or shared abstractions.

nixnixosconfigurationbeginner

pds-backup

April 11, 2026

A Bash script for automated, resumable PDS backups via rsync over SSH with change detection and cron scheduling.

atprotopdsbashself-hosting +1

@ewanc26/tangled-sync

April 11, 2026

CLI tool for syncing GitHub repositories to Tangled with ATProto record publishing — now part of the @ewanc26/pkgs monorepo.

atprototangledgithubautomation +2

text-to-pixel-image

April 11, 2026

A Python script that converts a string of text into a pixel art image with per-character colours. Unmaintained.

pythonimage-generationhistoricalunmaintained

Website Commission Template

April 11, 2026

A SvelteKit + Tailwind CSS starter template for Ko-fi website commissions, with CC BY-SA 4.0 licensing.

sveltekittailwindtemplatecommission

website

April 11, 2026

Source code for ewancroft.uk — a personal site powered by AT Protocol, built with SvelteKit 5 and Tailwind CSS 4.

atprotosveltekitpersonal-sitestandard-site +1

Numlang

April 6, 2026

An esoteric stack-based language that compiles to C via a Python compiler, using only numbers and punctuation.

numlangcompilerpythonc +1

Selenium Compiler

April 6, 2026

An esoteric language with lunar/poetic syntax that compiles to C, featuring strong typing and imperative programming constructs.

pythoncompileresotericc

@ewanc26/wafrn-theme

March 24, 2026

A WAFRN theme using the pds-landing Catppuccin terminal aesthetic — dark forest-green palette, JetBrains Mono, soft rounded cards.

csswafrnthemefediverse +1

docsite

March 21, 2026

Source code for docs.ewancroft.uk — a documentation site for ewan's projects, built with SvelteKit and published via Sequoia.

sveltekitsequoiaatprotodocs

Malachite

March 15, 2026

Import your Last.fm and Spotify listening history to the AT Protocol network using the fm.teal.feed.play lexicon.

malachiteatprotolastfmspotify +3

@ewanc26/noise

March 13, 2026

Generic deterministic value-noise generation. Arbitrary dimensions, multi-octave FBM, multiple colour modes. Zero dependencies, works in browsers and Node.js.

typescriptcanvassveltelibrary +1

@ewanc26/noise-avatar

March 9, 2026

Deterministic value-noise avatar generation from a string seed — thin wrapper around @ewanc26/noise, works in browsers and Node.js.

typescriptcanvassveltelibrary +1

@ewanc26/supporters

March 9, 2026

SvelteKit component library for displaying Ko-fi supporters and GitHub Sponsors, backed by an ATProto PDS.

atprotosveltekitko-figithub-sponsors +3

@ewanc26/pds-landing

March 8, 2026

Composable Svelte 5 components for an ATProto PDS landing page — terminal aesthetic, live status fetching, zero config to drop in.

atprotopdssveltesveltekit +3

nix-config-tools

March 7, 2026

Rust CLI tools for managing nixos/nix-darwin configurations — now part of the @ewanc26/pkgs monorepo.

rustnixnixosnix-darwin +3

@ewanc26/atproto

March 6, 2026

AT Protocol service layer extracted from ewancroft.uk — profile fetching, Standard.site documents, Bluesky posts, music/mood status, Tangled repos, and a built-in in-memory cache.

libraryatprototypescriptpkgs

@ewanc26/ui

March 6, 2026

Svelte UI component library extracted from ewancroft.uk — pluggable layout, card, SEO, and UI primitive components alongside Svelte stores and a multi-theme config system.

librarysvelteuipkgs

@ewanc26/utils

March 6, 2026

Shared utility functions extracted from ewancroft.uk — date formatting, number formatting, URL helpers, validators, RSS generation, and locale detection.

libraryutilitiestypescriptpkgs

@ewanc26/tid

March 4, 2026

Zero-dependency, spec-compliant AT Protocol TID generation for Node.js and browsers.

atprototypescriptlibrarymalachite +2

llm-analyser

February 24, 2026

Python tool for analysing .docx files and generating essays using a local Ollama model — now part of the @ewanc26/pkgs monorepo.

pythonollamaaitools +1

@ewanc26/svelte-standard-site

February 24, 2026

SvelteKit library for reading and writing AT Protocol longform content via site.standard.* and pub.leaflet.* records — with a complete design system, federated comments, publishing tools, and content verification.

atprotosveltekitlibrarystandard-site +2