Skip to content

fountain-ink/app

Repository files navigation

Fountain Banner

A batteries-included, self-hostable web3 alternative to Medium, Substack, and Mirror.

Own your content and audience through decentralized publishing

Stack

The Fountain app is entirely self-hostable and is built using the following tools:

  • Lens Protocol - Decentralized social protocol
  • Grove - Decentralized storage
  • Next.js - React framework for the frontend
  • Plate.js - Customizable editor framework
  • Y.js - Collaborative sync layer for the editor
  • Supabase - Off-chain storage
  • Listmonk - Mailing list manager

Note: The Fountain app is still in early development, self-hosting documentation is coming soon.

Coming Soon

  • Docs portal (Q2)
  • Deployment SDKs (Q2)

Getting Started

Installation

  • Using Bun (v1.2.5 or higher)
# Clone the repository
git clone https://github.com/fountain-ink/app.git
cd app

# Install dependencies
bun install

# Create a .env file (and edit the variables)
cp .env.example .env

# Start the development server
bun run dev

# Run the collaboration server (for yjs sync)
bun run collab

# Run the notifications server (WIP)
bun run notifications

Building for Production

# Build the application
bun run build

# Start the production server
bun run start

License

AGPLv3 - See LICENSE for more information.