52 lines
No EOL
1.6 KiB
Markdown
52 lines
No EOL
1.6 KiB
Markdown
# Vojo — Matrix-based messenger for the Russian market
|
|
|
|
## What is this
|
|
|
|
This is a fork of Cinny (https://cinny.in, MIT license) rebranded as Vojo.
|
|
Vojo is an independent messenger built on the Matrix protocol, targeting
|
|
Russian users affected by Telegram blocking.
|
|
|
|
Key value proposition: "Telegram works without VPN" — the server maintains
|
|
Telegram bridge connections, users just open vojo.chat and chat.
|
|
|
|
## Architecture
|
|
|
|
- **Domain**: vojo.chat
|
|
- **Server**: Yandex Cloud VPS, Ubuntu 24.04
|
|
- **Backend**: Synapse (Matrix homeserver) + PostgreSQL + Caddy (reverse proxy)
|
|
- **Bridges**: mautrix-telegram (Python v0.15.3, SOCKS5 proxy for Telegram)
|
|
- **Client**: This repo — Cinny fork, deployed as static files via Caddy
|
|
|
|
The client is served from `~/vojo/cinny/` on the server.
|
|
Caddy serves it at `https://vojo.chat`.
|
|
|
|
## Branding
|
|
|
|
- **Name**: Vojo (everywhere in UI, page titles, meta tags)
|
|
|
|
|
|
## Default homeserver
|
|
|
|
All configs must point to `vojo.chat` as the default and only homeserver.
|
|
Hide homeserver selection from the user — they don't need to know about Matrix.
|
|
|
|
## Build & Deploy
|
|
|
|
```bash
|
|
npm ci
|
|
npm run build
|
|
# Output in dist/
|
|
scp -r dist/* vojo-superuser@111.88.146.156:~/vojo/cinny/
|
|
```
|
|
|
|
Caddy serves from `/var/www/cinny` (symlinked to ~/vojo/cinny).
|
|
|
|
## Key API Reference
|
|
|
|
- Matrix Client-Server API: https://spec.matrix.org/latest/client-server-api/
|
|
- Synapse Admin API: https://element-hq.github.io/synapse/latest/usage/administration/admin_api/
|
|
|
|
## Developer
|
|
|
|
Julian — C++ backend engineer. Limited frontend experience.
|
|
Using Claude Code agents for frontend work. |