![leaflet gh 4-up banner img](https://github.com/user-attachments/assets/991d7138-cc8b-4fbb-9919-6d2a54ae3820)

Leaflet is a tool for shared writing and social publishing.

- **Shared writing**: make Leaflets, instant collaborative docs with rich media, multiple pages and more
- **Social publishing**: create Publications, like blogs or newsletters, that your friends can follow — built on Bluesky

## How to get started

Leaflet is a fast, responsive web app — no installation needed, though you *can* add it as a PWA!

TL;DR below — for more detail and examples, visit the [Leaflet Manual](https://about.leaflet.pub).

### Leaflets

Make a new Leaflet — a simple shareable *post* or *document* — with no account needed at [leaflet.pub/new](https://leaflet.pub/new).

Use Leaflets for shared notes and docs, collections, wikis, homepages and [lots more](https://make.leaflet.pub).

### Publications

To make a Publication, connect with Bluesky from [leaflet.pub/home](https://leaflet.pub/home), then add posts.

Use Publications on Leaflet for blogs, newsletters, project logs — anything you want people to read and follow.

Read ours here: [Leaflet Lab Notes](https://lab.leaflet.pub/).

## Technical details

The stack:

- [Typescript](https://www.typescriptlang.org/) for types
- [React](https://react.dev/) & [Next.js](https://nextjs.org/) for UI and app framework
- [Supabase](https://supabase.com/) for db / storage layer
- [Replicache](https://replicache.dev/) for realtime data sync layer
- [TailwindCSS](https://tailwindcss.com/) for styling magic

See the `lexicons` and `appview` directories if you're curious about our Bluesky implementation. More documentation to come; let us know if there's something you want to read about (like how to bring your own frontend using our appview!)

Leaflet is open source. Please reach out by [email](mailto:contact@leaflet.pub) or [Bluesky](https://bsky.app/profile/leaflet.pub) with any questions or feedback!

