

O LetterBook é um serviço de microblog federado, implementando o ActivityPub. O objetivo do projeto é tornar a hospedagem de um servidor Fediverse uma experiência melhor e mais sustentável. Também queremos torná -lo um espaço mais seguro e inclusivo para as pessoas que fazem do Fediverse sua mídia social em casa. Essas são grandes aspirações, mas temos alguns planos sólidos sobre como começar, e adoraríamos mais informações sobre onde ir a partir daí.
Não temos uma lista exaustiva, mas apoiaremos muitos dos recursos que já são comuns no Fediverse. Você poderá postar, editar suas postagens, usar hashtags e emojis personalizados e migrar contas, por exemplo.
O LetterBook implanta inicialmente como um único executável com escala simples equilibrada de carga. Além de serviços auxiliares, como armazenamento de objetos e e -mail, 1 servidor e 1 banco de dados é tudo o que você precisa para estar em funcionamento. E se você vir em grande escala em seu futuro, ainda poderá aumentar para os trabalhadores e microsserviços distribuídos.
O Letterbook não mantém nenhum estado ao vivo. Tudo vive no banco de dados, portanto, não há necessidade de executar um cluster Redis ou semelhante a atuar como armazenamento de estado compartilhado. Também esperamos ter demandas de computação significativamente mais baixas, devido às opções arquitetônicas para evitar a infraestrutura e a expansão do sistema caras e o uso de C#, uma linguagem compilada de alto desempenho.
O LetterBook é cuidadosamente instrumentado para telemetria automática e personalizada, incluindo registro robusto, métricas e rastreamento distribuído. Também fornecemos uma coleção e painéis prontos para uso para nossa telemetria. Você pode investigar erros, bugs e problemas de desempenho da mesma maneira que nós, os desenvolvedores.
Evite o colapso do contexto! Você pode conversar com seus usuários e eles podem conversar um com o outro, sem arriscar o colapso do contexto por exposição a todo o Fediverse.
Ações do moderador, como bloquear, silenciar e limitar a Federação, poderão expirar automaticamente após um tempo definido.
Você poderá fazer coisas como impedir que as postagens federadas apareçam em feeds promovidos, impedem que eles apareçam sem um relacionamento estabelecido a seguir, ocultar postagens atrás de um clique e aviso e desfigurar sem quebrar seus usuários seguem os relacionamentos, além das mesmas opções básicas que outros servidores.
Pretendemos implementar a API Mastodon, que fornecerá suporte para muitos aplicativos de Mastodon existentes. Com o tempo, esperamos que nossos recursos cresçam muito além do que a Mastodon suporta, é claro. Mas até que o façamos, ou se esses recursos não lhe interessam, seu aplicativo favorito atual ainda estará lá para você.
O Letterbook terá recursos como detecção de tópicos e feeds baseados em tópicos. As recomendações a seguir também considerarão tópicos em que você expressa um interesse e relacionamentos de amigos de amigos.
Esperamos apoiar postagens de forma longa e várias páginas. Também poderemos criar vários feeds promovidos para suas próprias postagens e ter a capacidade de seguir esses feeds especificamente. Se, por algum motivo estranho, as pessoas quiserem seguir sua análise de CVEs e não as postagens de Fursuit na sexta -feira, isso é uma coisa factível. E você acabará sendo capaz de co-autor com outras pessoas.
Planejamos fornecer uma experiência real de mensagem direta implementando um servidor XMPP. Se você usou anteriormente o Jabber, é provável que seu cliente de bate -papo favorito esteja pronto e esperando por você, melhor do que nunca. E se você nunca parou, provavelmente sabe disso melhor do que nós, e espero que isso seja uma boa notícia para você. É claro que você poderá enviar e receber postagens com visibilidade restrita, assim como agora, para não perder o acesso a mensagens diretas no estilo Mastodon com seus contatos.
Tudo isso é apenas o começo do que planejamos para o Letterbook. Estamos muito empolgados com o futuro e conseguimos construí -lo juntos. Se você quiser saber mais sobre o processo de pensamento que entrou no início do projeto, você pode ler a postagem do blog.
Dica
Para começar a desenvolver, consulte a seção QuickStart no guia contribuinte
Entre em contato para nos informar que você está interessado no projeto! Existem muitas maneiras de contribuir, é muito mais do que apenas código. A experiência nessas áreas seria particularmente útil, agora. E esta lista só crescerá com o tempo.
Importante
Usamos projetos para organizar o backlog
Nosso projeto atual é a visualização única do usuário
Pode ajudar a colocar tudo isso no contexto do que já foi e não foi feito. Nesse ponto, subimos essencialmente uma montanha e agora estamos examinando todas as outras montanhas que ainda temos pela frente. O plano é avançar em direção a um produto que pode ser executado com responsabilidade em produção para um único usuário, com o objetivo de oferecer suporte a grandes implantações multiusuário no futuro. Vamos aprender mais com a experiência de apoiar cargas de trabalho ao vivo e criar ferramentas, recursos e desempenho mais robustos com base nessa experiência. No momento, é um ótimo momento para ingressar no projeto. Há muita coisa que precisa ser feita e também uma base sólida para trabalhar.
%% {init: {'tema': 'default'}} %%
linha do tempo
Seção zero a federado? ️
AtividadePub & Friends: Atividade Tipos: APIs ATIVIDADEPUB: Modelos de dados e persistência: API Webfinger: assinaturas HTTP: Fila de mensagens
Seção Visualização de usuário único?
Postagem? : Modelos de dados ☑️: lógica do núcleo ☑️: db Esquema ☑️: APIS ☑️: Federação: APIs de terceiros
Gerenciamento de contas? : Modelos de dados ☑️: DB Esquema ☑️: Criação da conta ☑️: APIs: Gerenciamento de contato: Gerenciamento de senhas: Verificação de email: APIs de terceiros
Authn/authz? : Modelos de dados ☑️: verificação de senha ☑️: criação/verificação do token ☑️: login/logout/desafio: esquema de reclamações: suporte OIDC
Feeds? : Modelos de dados ☑️: db esquema ☑️: APIS ☑️: Dados de preenchimento ☑️: APIs de terceiros
Moderação? : Modelos de dados: DB Esquema: APIs: Bloco: MUTO: Suspender: Relatório: Limites da Federação: APIs de terceiros
Mídia? : Modelos de dados: esquema de banco de dados: APIs de terceiros
Observe que este roteiro é atualizado apenas ocassionalmente. Os problemas do Github do projeto e, especificamente, a placa de visualização de usuário única é a melhor maneira de acompanhar o que é planejado, em andamento e concluído.