Someday we need to start talking about a decentralised fediverse directory. Friendica, Hubzilla, and the Zap/Osada projects each have their own project wide mirrored directory servers, but it's time to bring these all together and include the rest of the fediverse. The things we've learned already:
a) make sure it's opt-in
b) make sure each participant pings the directory at regular intervals or whenever there's a profile change. This way we reduce the occurrence of stale data and can prune dead accounts and servers (those that haven't pinged the server "recently").
c) optionally provide a supported protocols field so that the directory itself is protocol agnostic.