

Letterbook은 Federated Microblogging 서비스이며 ActivityPub를 구현합니다. 이 프로젝트의 목표는 Fediverse 서버를 더 좋고 지속 가능한 경험으로 만드는 것입니다. 우리는 또한 Fediverse를 소셜 미디어를 집으로 만드는 사람들에게 더 안전하고 포괄적 인 공간으로 만들고 싶습니다. 이것들은 큰 열망이지만, 시작 방법에 대한 확실한 계획이 있으며, 우리는 그곳에서 어디로 가야하는지에 대한 더 많은 정보를 좋아합니다.
우리는 철저한 목록이 없지만 Fediverse에서 이미 공통적 인 많은 기능을 지원할 것입니다. 예를 들어 게시, 게시물 편집, 해시 태그 및 사용자 정의 이모티콘을 사용하고 계정을 마이그레이션 할 수 있습니다.
Letterbook은 처음에 간단한 하중 균형 스케일링으로 단일 실행 파일로 배포됩니다. Object Storage 및 이메일과 같은 보조 서비스 외에도 1 개의 서버 및 1 개의 데이터베이스만으로도 실행해야합니다. 그리고 미래에 큰 규모가 보이면 여전히 분산 작업 직원 및 마이크로 서비스로 바깥쪽으로 확장 할 수 있습니다.
레터 북은 살아있는 상태를 유지하지 않습니다. 모든 것이 데이터베이스에 남아 있으므로 공유 상태 저장소 역할을하기 위해 Redis 클러스터 또는 유사한 실행할 필요가 없습니다. 또한 비싼 인프라와 시스템 스프롤을 피하기위한 아키텍처 선택과 매우 고성능 컴파일 언어 인 C#사용으로 인해 컴퓨팅 요구가 크게 낮아질 것으로 예상됩니다.
Letterbook은 강력한 로깅, 메트릭 및 분산 추적을 포함하여 자동 및 사용자 정의 원격 측정에 철저히 계측됩니다. 또한 원격 측정을위한 상자 외 컬렉션 및 대시 보드도 제공합니다. 개발자와 같은 방식으로 오류, 버그 및 성능 문제를 조사 할 수 있습니다.
컨텍스트 붕괴를 피하십시오! 사용자와 대화 할 수 있으며 전체 연맹에 노출되어 컨텍스트 붕괴를 위험에 빠뜨리지 않고 서로 대화 할 수 있습니다.
정해진 시간 후에는 차단, 음소거 및 제한 연맹과 같은 중재자 동작이 모두 자동으로 만료 될 수 있습니다.
페더레이션 포스트가 프로모션 된 피드에 나타나는 것을 방지하고, 확립 된 추종 관계없이 전혀 나타나는 것을 방지하고, 클릭 스루 및 경고 뒤에 게시물을 숨기고, 다른 서버와 동일한 기본 옵션 외에도 사용자가 관계를 끊지 않고 방어하는 것과 같은 일을 할 수 있습니다.
우리는 기존의 많은 Mastodon 앱을 지원할 Mastodon API를 구현하려고합니다. 시간이 지남에 따라, 우리는 물론 Mastodon이 지원하는 것 이상으로 우리의 기능이 커질 것으로 기대합니다. 그러나 우리가 할 때까지, 또는 그 기능이 당신에게 관심이 없다면, 당신의 현재 좋아하는 앱은 여전히 당신을 위해있을 것입니다.
레터 북에는 주제 탐지 및 주제 기반 피드와 같은 기능이 있습니다. 추천에 따르면 관심있는 주제와 친구들의 친구 관계를 고려할 것입니다.
우리는 긴 형태의 다중 페이지 게시물을 지원하기를 희망합니다. 또한 자신의 게시물에 대한 여러 프로모션 피드를 만들 수 있으며 특정 피드를 구체적으로 따를 수 있습니다. 이상한 이유 때문에 사람들이 금요일 금요일 게시물이 아니라 CVE에 대한 분석을 따르고 싶다면 그것은 가능한 일입니다. 그리고 결국 다른 사람들과 게시물을 공동 저술 할 수 있습니다.
XMPP 서버를 구현하여 실제 직접 메시지 경험을 제공 할 계획입니다. 이전에 Jabber를 사용했다면, 좋아하는 채팅 클라이언트가 준비되어 있고 그 어느 때보 다 나아질 것입니다. 그리고 당신이 멈추지 않았다면, 당신은 아마 우리보다 더 잘 알고있을 것입니다. 그리고 희망적으로 이것은 당신에게 좋은 소식입니다. 물론 지금처럼 가시성이 제한된 게시물을 보내고받을 수 있으므로 연락처가있는 Mastodon 스타일 직접 메시지에 대한 액세스를 잃지 않을 것입니다.
이 모든 것은 우리가 LetterBook을 계획 한 것의 시작일뿐입니다. 우리는 미래에 대해 매우 흥분하고 함께 만들게됩니다. 프로젝트를 시작한 사고 과정에 대해 더 알고 싶다면 블로그 게시물을 읽을 수 있습니다.
팁
개발을 시작하려면 기고 가이드의 QuickStart 섹션을 참조하십시오.
프로젝트에 관심이 있다는 것을 알려주십시오! 기여하는 방법에는 여러 가지가 있습니다. 단순한 코드 이상의 것입니다. 이 분야에서의 경험은 지금 특히 도움이 될 것입니다. 그리고이 목록은 시간이 지남에 따라 성장할 것입니다.
중요한
우리는 프로젝트를 사용하여 백 로그를 구성합니다
현재 프로젝트는 단일 사용자 미리보기입니다
이 모든 것이 이미 수행되지 않은 것과 이미 수행되지 않은 것에 대해이 모든 것을 두는 데 도움이 될 수 있습니다. 이 시점에서, 우리는 본질적으로 한 산을 올라 갔으며, 이제 우리는 여전히 우리보다 앞서있는 다른 모든 산들을 조사하고 있습니다. 이 계획은 미래에 대규모 다중 사용자 배포를 지원하기 위해 단일 사용자를 위해 책임감있게 생산할 수있는 제품으로 이동하는 것입니다. 우리는 라이브 워크로드 지원 경험을 통해 자세한 내용을 배우고 그 경험을 바탕으로보다 강력한 도구, 기능 및 성능을 구축합니다. 지금은 프로젝트에 참여하기에 좋은시기입니다. 해야 할 일이 너무 많아서 일할 견고한 토대가 있습니다.
%% {init : { '테마': '기본값'}} %%
타임 라인
섹션 0에서 페더레이션? ️
ActivityPub & Friends : ActivityStreams 유형 : ActivityPub API : 데이터 모델 및 지속성 : Webfinger API : HTTP 서명 : 메시지 큐
단일 사용자 미리보기 섹션?
게시? : Data Models :️ : Core Logic ☑️ : DB 스키마 ☑️ : APIS ☑️ : Federation : 제 3 자 API
계정 관리? : 데이터 모델 :️ : DB 스키마 ☑️ : 계정 생성 ☑️ : APIS : 연락처 관리 : 암호 관리 : 이메일 확인 : 제 3 자 API
Authn/Authz? : Data Models :️ : 비밀번호 검증 ☑️ : 토큰 생성/검증 ☑️ : 로그인/로그 아웃/챌린지 : 클레임 체계 : OIDC 지원
피드? : Data Models :️ : DB Schema ☑️ : APIS ☑️ : 데이터 채소 ☑️ : 타사 API
중재? : 데이터 모델 : DB 스키마 : API : 블록 : 음소거 : 삭제 : 보고서 : 연합 제한 : 제 3 자 API
미디어? : 데이터 모델 : DB 스키마 : 타사 API
이 로드맵은 Ocassionally 만 업데이트됩니다. 프로젝트의 GitHub 문제, 특히 단일 사용자 미리보기 보드는 계획, 진행 및 완료된 내용을 추적하는 가장 좋은 방법입니다.