explaingit

cinnyapp/cinny

3,634TypeScriptAudience · generalComplexity · 2/5LicenseSetup · easy

TLDR

A clean, modern web client for the Matrix open messaging protocol, built with React and TypeScript, that connects to any Matrix homeserver.

Mindmap

mindmap
  root((Cinny))
    What it does
      Matrix web client
      Modern UI
      Browser-based
    Tech stack
      TypeScript
      React
      Matrix protocol
    Features
      Room messaging
      Direct messages
      Notifications
    Use cases
      Personal messaging
      Community server client
      Self-hosted front-end
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Use Cinny as your daily Matrix messaging client in a browser without installing a desktop app.

USE CASE 2

Self-host Cinny for your community so members have a polished web interface connecting to your own Matrix server.

USE CASE 3

Contribute to or fork the TypeScript front-end to build a customized Matrix client for a specific community's needs.

Tech stack

TypeScriptReact

Getting it running

Difficulty · easy Time to first run · 5min

Requires an existing Matrix homeserver account, the hosted app at cinny.in works with no setup.

MIT license, use freely for any purpose including commercial, with copyright notice.

In plain English

Cinny is a web-based client for the Matrix messaging protocol. Matrix is an open standard for real-time communication that works across different servers: messages can flow between users on completely separate servers, similar to how email works across different providers. Unlike proprietary platforms where a single company controls all the data, Matrix lets communities and individuals choose or run their own server while still talking to people anywhere in the network. Cinny provides a clean, modern browser interface for accessing Matrix rooms and direct messages. It is built with React and TypeScript and takes visual inspiration from contemporary messaging apps, aiming for a more polished look than some older Matrix clients. The interface covers the standard things you would expect from a messaging app: joining rooms, sending and reading messages, browsing message history, and managing notifications. As a client, Cinny does not run a server. Users connect it to an existing Matrix homeserver, which can be their own self-hosted server, a service provider, or a public option like matrix.org. The application is just the front-end that talks to whichever homeserver the user chooses. The project is open source and can be self-hosted. Running your own instance means you are not dependent on any particular hosted version of Cinny, fitting the philosophy of control and independence that the Matrix ecosystem encourages. The TypeScript codebase makes it accessible to web developers who want to contribute or adapt it for specific communities. Cinny is aimed at people looking for a visually refined, browser-based Matrix client, including individuals who want an alternative to centralized messaging apps and community operators looking for a client to recommend to members.

Copy-paste prompts

Prompt 1
How do I connect Cinny to my own self-hosted Matrix homeserver? Walk me through the URL and login steps.
Prompt 2
What Matrix features does Cinny support and what are its current limitations compared to Element?
Prompt 3
Help me set up a self-hosted Cinny instance on a VPS with Nginx so my community can access it at a custom domain.
Prompt 4
Explain how Matrix federation works so I understand why Cinny users on different servers can still message each other.
Open on GitHub → Explain another repo

← cinnyapp on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.