Skip to content

Repository files navigation

Sill

Top news from the people you trust

Sill collects links posted by the people you follow on Bluesky and Mastodon, and aggregates them into a list of the most popular links in your network.

You can find the official production version of Sill at sill.social

Architecture

Sill is a monorepo built with pnpm workspaces and Turborepo. It uses React Router for the web app, Hono for the API, and Postgres for the database.

Apps

  • apps/web/ - React Router v7 web application (port 3000)
  • apps/api/ - Hono API server (port 3001)
  • apps/worker/ - Background job processor for social media data

Packages

  • @sill/schema - Shared database schema and types (Drizzle ORM)
  • @sill/auth - Authentication utilities and OAuth
  • @sill/links - Link processing and social media integration
  • @sill/emails - Email templates (React Email) and Mailgun service

Prerequisites

  • Node.js >= 22
  • pnpm >= 10.17.1
  • Docker

You'll also need a Mailgun account for transactional emails.

Development Setup

Local Development (Recommended)

Run the database in Docker and everything else locally with hot-reload:

  1. Create your environment file and generate secrets:
cp .env.example .env
pnpm generate-secrets
  1. Start the database:
docker-compose up -d
  1. Install dependencies and start all packages:
pnpm install
pnpm dev:local
  1. Visit http://localhost:3000 (web) and http://localhost:3001 (API).

Docker Development

Run everything in containers (matches production environment):

pnpm dev:docker

Commands

Command Description
pnpm dev:local Start all packages in development mode
pnpm dev:docker Start everything in Docker containers
pnpm build Build all packages for production
pnpm lint Run Biome linter/formatter
pnpm typecheck Run TypeScript checks
pnpm test Run Vitest tests

Database

Sill uses Drizzle ORM with Postgres:

  • Schema: packages/schema/src/schema.ts
  • Migrations: packages/schema/src/migrations/
  • Config: drizzle.config.ts

About

Find the most popular links from your Mastodon/Bluesky networks

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages