원문 캡처 · github.com
원문 캡처 · github.com

teapot은 Rust로 만든 Twitter/X 프런트엔드다. 제작자는 제3자 자바스크립트, 추적, 광고, 원격 글꼴을 사용하지 않는 개인정보 보호 중심 구성을 내세운다. 사용하려면 Rust 1.96.1 이상과 Twitter/X 세션 토큰이 필요하다.

저장소는 GitHub에서 확인할 수 있다. 이 서비스는 사용자의 게시물에 구독할 수 있는 RSS 피드를 제공하며, Discord 임베드에서 여러 이미지를 모바일 캐러셀로 보여주고 동영상을 바로 재생하도록 지원한다. ActivityPub JSON 엔드포인트도 제공해 임베드에 미디어 정보를 전달한다.

빌드 명령은 다음과 같다.

sh
cargo build --release

설정을 시작하려면 예제 파일을 복사한 뒤 config/teapot.toml을 수정한다. 세션 파일도 예제에서 복사해 인증 정보를 입력해야 한다.

sh
cp config/teapot.example.toml config/teapot.toml
cp sessions.example.jsonl sessions.jsonl
# Edit sessions.jsonl with your auth_token and ct0 from browser cookies

쿠키 세션은 auth_token과 ct0을 사용하고, OAuth 세션은 oauth_token과 oauth_secret을 사용한다. 실제 세션 정보나 생성한 teapot.toml 파일을 저장소에 커밋하지 말라고 프로젝트는 안내한다. 기본 실행 주소는 http://localhost:8080이다. 개발 모드에서는 cargo run, 릴리스 빌드에서는 ./target/release/teapot으로 서버를 실행한다.

Twitter/X API를 쓰려면 로그인한 계정의 세션 토큰이 필요하다. 프로젝트 안내에 따르면 브라우저에서 Twitter/X에 로그인한 뒤 개발자 도구의 Application → Cookies에서 auth_token과 ct0 값을 복사해 sessions.jsonl에 넣는다.

프로젝트는 GNU Affero General Public License v3.0을 따른다(라이선스).