So after hours of trial and error. i finally got ditto running.

how do i run these comands? can you write and example of how it should be filled? its very vague.

Also im not sure if i was able to add an admin role. i think i did.....

Reply to this note

Please Login to reply.

Discussion

I would start by using nak: https://habla.news/u/alex@gleasonator.dev/nak-sync

Your Ditto relay URL will be wss://yoursite.com/relay

I got 95% of ditto running. But it is not showing my profile, nor is it showing for example Damus feed.

but looks like im close.

I run a relay, so I dont need the Ditto relay… right?

Well Ditto is not like other Nostr clients. It's really built around the concept of being a client + relay. It depends on the Ditto relay to do most of its stuff. If you want to see things, you'll need to get the events from your relay to the Ditto relay.

Ah ok. Got it.

I added relays in the dashboard. but I can’t seem to be pulling any data from those relays.

also I am trying to use this command. https://habla.news/u/alex@gleasonator.dev/nak-sync

not working for me, which im sure im doing something wrong

you have to restart ditto after doing that

It worked!!

So ditto only works for new users?

if a nostr user joins my ditto instance, they won’t see any of their old data?

Correct until you sync their data

deno task nostr:pull npub1x0r5gflnk2mn6h3c70nvnywpy2j46gzqwg6k7uw6fxswyz0md9qqnhshtn wss://relay.primal.net

How am I suppose to sync the data of every use who joins?

Will you really get that many users though to worry about running a quick command to sync their data?

For each user,

deno task nostr:pull npub......... wss://relay.nostr.band/all

Yes. Assume I’m expecting 1000s of current nostr users.

how am I suppose to sync there data?

The ditto team would need to add a feature that syncs new users data after they get their nip05 name or something.

YES! And it should be there somewhere.

Why are users adding relays if not for that sync?

nostr:npub1jvnpg4c6ljadf5t6ry0w9q0rnm4mksde87kglkrc993z46c39axsgq89sc is this true? Or am I doing something completely wrong here.

Yes it takes time to populate the relay. You should add relays to your firehose to start collecting events as they happen, or like Veritas said you can manually sync to do it faster.

To configure your firehose go to: Dashboard -> Relays

On ditto we just have 2 added, and it's pretty sufficient:

wss://relay.damus.io/

wss://relay.primal.net/

The sooner in history you start your server and your firehose, the more events it will have. Right now, you have practically zero so every single new person that joins is a person your database does not know about. So, yeah, each person may need to be manually synced if you don't want to wait.

However, if you just sit around and run your relay and collect events for a while, eventually you'll get events that include info from all across Nostr - including your potential users you want to join as long (as you set up your firehose).

On Ditto.pub and Henhouse, for example, I never have to do this manual syncing because we've been running this database for long enough we have a lot of Nostr events in here. However, occasionally we still find people who are new to us and just trust those events will eventually turn up as needed.

And I think you also asked somewhere in this thread "Why do users add relays?" The answer to that is that when a user adds a relay their events are published to that relay. This does not change the relays that Ditto reads from, only the firehose (under the dashboard) does this.

The reason for this is a bit in the weeds, but it's related to the way Ditto is inherently different from other Nostr clients by being community-oriented. On a regular Nostr client each individual user is responsible for curating their own experience (with all the risks that come with that). However, on Ditto, you as the admin are responsible for leading the whole community - including populating the database securely.

I know it's a lot of info, but hope this helps!!

This is great!! I understand now. Thank you!