Skip to content

Latest commit

Β 

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 

Repository files navigation

Mocha

A minimalist, peer-to-peer blogging and social networking platform inspired by the principles of Diaspora and the decentralized nature of the web.

πŸ“˜ Project Overview – Distributed Social Networking Web App

This project is a federated social networking platform that allows authors across independent servers (nodes) to interact through a RESTful API.

Our platform enables decentralized communication of posts, comments, and follow requests between local and remote authors, supporting core social media features while preserving node independence.


βš™οΈ Core Features

πŸ” Author Management

  • Authors are uniquely identified by UUIDs
  • Each author can customize their profile
  • Authentication is handled locally (no third-party login)

πŸ“ Posts

  • Support for text/plain and text/markdown content
  • Image posts are base64-encoded and federated across nodes
  • Visibility options: PUBLIC, FRIENDS, UNLISTED, PRIVATE

πŸ“¬ Inbox System

Each author has an /inbox/ endpoint that receives:

  • Posts (local and foreign)
  • Comments
  • Follow requests
  • Likes

Posts sent via the inbox are automatically parsed and stored as local or foreign entities.


πŸ‘₯ Follow System

  • Authors can follow other authors (local or remote)
  • Follower data is stored and accessible through /followers/
  • Remote follow requests are sent via POST to the recipient’s inbox

🌐 Federation

  • Supports inter-node interaction using REST API calls
  • Public posts are automatically sent to known nodes
  • Handles foreign authors, posts, and comments with appropriate models (ForeignAuthor, ForeignPost, etc.)
  • Accepts and processes incoming content using a shared federation protocol

Resources

  • Promtional Video

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages