Go to file
Alex Gleason 2010483089 Merge branch 'nostrconnect' into 'main'
NIP-46 client auth first pass

See merge request soapbox-pub/ditto!247
2024-05-12 21:57:15 +00:00
.hooks Add lint-staged 2024-05-07 13:45:42 -05:00
.vscode deno.json: exclude public directory to prevent LSP from crashing 2024-01-07 14:40:30 -06:00
data Improve TrendsDB, add loopback script, almost ready to do something? 2023-07-25 15:30:58 -05:00
docs Remove username from user events 2024-03-27 18:11:07 -05:00
fixtures/events test: kind 10000 ('black' blocks 'me') fixture 2024-04-26 16:12:13 -03:00
installation Serve static files from nginx 2023-10-11 21:33:13 -05:00
public Serve a frontend through Ditto 2023-09-11 00:19:56 -05:00
scripts Remove `relays` table from the database, track them with a NIP-65 admin event 2024-05-01 19:15:20 -05:00
src getClientConnectUri: fix description value 2024-05-12 13:33:22 -05:00
static/images Use default avatar and banner from repo, instead of linking out to image 2023-09-11 15:36:09 -05:00
.gitignore Add an eventFixture function to import fixtures in tests 2024-05-10 14:10:19 -05:00
.gitlab-ci.yml generate junit reports for GitLab CI 2024-05-05 20:26:20 +05:30
.lintstagedrc Add lint-staged 2024-05-07 13:45:42 -05:00
.tool-versions Bump Deno to v1.41.3 2024-03-17 15:41:10 -05:00
LICENSE Add AGPL license 2023-04-02 14:11:07 -05:00
README.md Update README.md 2024-05-10 16:10:11 +00:00
deno.json Use a Kysely logger to log SQL regardless of the adapter used 2024-05-08 12:56:42 -05:00
ditto-planet.png Revert "Add Ditto banner to readme" 2023-07-12 19:44:41 -05:00

README.md

Ditto

Ditto is a Nostr server for building resilient communities online. With Ditto, you can create your own social network that is decentralized, customizable, and free from ads and tracking.

For more info see: https://docs.soapbox.pub/ditto/

⚠️ This software is a work in progress.

Features

  • Built-in Nostr relay
  • Log in with any Mastodon app
  • Like and comment on posts
  • Share posts
  • Reposts
  • Notifications
  • Profiles
  • Search
  • Moderation
  • Zaps
  • Customizable
  • Open source
  • Self-hosted
  • Decentralized
  • No ads
  • No tracking
  • No censorship

Development

  1. Install Deno.
  2. Clone this repo.
  3. Download Soapbox or another web-based Mastodon client of your choice.
  4. Put the frontend files inside the public directory.
  5. Create an .env file.
  6. Define DITTO_NSEC=<value> in your .env file. You can generate an nsec by running deno task nsec.
  7. Run deno task dev.

License

© Alex Gleason & other Ditto contributors

Ditto is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Ditto is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with Ditto. If not, see https://www.gnu.org/licenses/.