VoceChat is a superlight rust written social server. Easy integration to your site/app.

Overview

Re-decentralized the Internet through personal cloud computing.

VoceChat is the lightest chat server prioritizes private hosting! Easy integratation to your app with our open API!

Quick run

docker run -d --restart=always \
  -p 3009:3000 \
  --name vocechat-server \
  Privoce/vocechat-server:latest

On browser visit: http://localhost:3009/

Contact us

Doc: https://doc.voce.chat
Chat with us: https://voce.chat
Email: [email protected]

Welcome your help of any form--code, issues, blog articles, social media shares.

Goal

The goal of Voce is to provide a space owned by "you" on the Internet, just as the name "voce" means in portguese. As cloud computing getting matured, there will be a time in the foreseeable future that netizens like you and me can enjoy the benefit of having a personal cloud space on the Internet--like iCloud, while not only will you have storage, but also a personalized computing layer.

Why do we need a private cloud space? The short answer is that information will become our private property and means of communication will be under the control of every netizen.

Digital technologies including Internet and the Web make information duplicable and transferable, yet platforms are controlling the ownership and means of production and transmission of most information (content) on the Internet. We are building Voce as an open-sourced tool (not a platform) to empower smaller groups and individuals to become a platform themselves. When various servers get connected to each other, all the information shared among the servers will be duplicated and become the server owner's private data under private storages.

Personal cloud

We need a "home" as our private property on the Internet, and this home should have features more than just storage. No matter you choose NAS, AWS, Raspberry Pi or your local PC to run VoceChat, it is your own private property--yes, public cloud services like AWS purchased by you is commercially your own property and the data in your cloud is protected from accessing by the public cloud service providers. Features including but not limited to instant messaging, activity posts, private video calls, notes, whiteboard are all desiring and useful on your personal cloud server. Personal cloud is the new PC, and there will be a new software layer with some shared traits--distributed by URL(web app), good API, interoperable profiles. Privoce is currently working on this software layer of personal cloud.

Why Rust

Personal cloud needs efficent solutions. This Rust written server is less than 20MB and runs with great efficiency. Hosting a 20MB private social media server is much more accessible than a 300MB one. Just like cars v. bus, or single family home v. hotels, if Facebook is a grand hotel, VoceChat is like a house. If Matrix and Mastodon are buses, VoceChat is like a car. The next paradigm of the internet is serverless functions + personal storage. Making VoceChat serverless is also a next step.

Webhook, bot, and ways to get interconnected (work in progress)

Social media cannot always stay private if people want new information to be transferred among different servers. The word "social" in social media means multiple nodes communicate with multiple nodes in a synced space (mass to mass). A channel (private or public) should serve the end of this mass to mass data sharing and syncing space. Channel should function as a shared good where members who joined should have the right to store the same chat data (use their server)--this may one day functions like Bitcoin, yet currently, efficiency should be more prioritiezed and admin of the channel could have the right to assign different "power" to members. We have implemented both inbound and outbound webhooks so that it's possible to sync messages from a VoceChat channel to another channel (slack, discord, or VoceChat) though you will need to write your own server side code to personalize this process (this could be troublesome, and again, serverless could be a good solution).

We also found bot super interesting and personal bot services may replace platforms--e.g., we are training some bots based on GPT api that can be added to VoceChat.

If you have a proposal on how multiple servers could get interconnected, e.g., should we support Matrix protocal, or other protocal, feel free to share your thougts in the discussions, or directly discuss it with at our chat at https://voce.chat.

Free for personal use, require license for non-personal use.

VoceChat is an open-source commercial software. The VoceChat server is the smallest, stablest and most efficient independent chat server on today's market, which is good for integration to your own app. VoceChat official image is free for personal use, which we define as equal or less than 20 registered users, if you want to integrate VoceChat to your own app/site for a larger user base, you have to purchase a license. The license is 49$/version.

Our team also provide customization service. We also provide resale license for NAS and cloud providers who want to collaborate with us.

Project composition:

Name Tech Project License Comment
Server Rust vocechat-server Big Time Public License Server supports Linux, Windows, ARM32/64
Server image Docker, Shell vocechat-docker Creative Commons Attribution-NonCommercial 4.0 International Official image supports Linux, ARM64
APP Client Flutter vocechat-client GPLv3 Client supports Android and IOS platforms
Web Client React vocechat-web GPLv3 Web App, integrated management
Documentation docusaurus vocechat-doc GPLv3 Vocechat document website

Feature list & roadmap

  • DM & Group Chating / 2021-Q4
  • Reply, @ to mention a person / 2021-Q4
  • Images and large files transmission / 2021-Q4
  • Pin / 2022-Q1
  • Forward / 2022-Q1
  • Favorate / 2022-Q1
  • Auto-delete my messages / 2022-Q2
  • Voice (now support agora) / 2022-Q4
  • Video (now support agora)/ 2022-Q4
  • Bot and Webhook (inbound and outbound)/ 2022-Q4
  • Role based permission control/ Undecided
  • Post, based on ActivityPub/ Undecided
  • Matrix Bridge/ Undecided

Chat with us: https://voce.chat Email: [email protected]

You might also like...
Rust explained using easy English
Rust explained using easy English

Update 22 December 2020: mdBook can be found here. 28 November 2020: Now also available in simplified Chinese thanks to kumakichi! 1 February 2021: No

Rust library for hardware accelerated drawing of 2D shapes, images, and text, with an easy to use API.
Rust library for hardware accelerated drawing of 2D shapes, images, and text, with an easy to use API.

Speedy2D Hardware-accelerated drawing of shapes, images, and text, with an easy to use API. Speedy2D aims to be: The simplest Rust API for creating a

Extracting archives made easy for Rust 🦀

Decompress A library that supports decompression of archives in multiple formats, inspired by ergonomics from Node's decompress. Includes a default st

Small, clean, easy to use programming language

Thistle A modern, simplistic multi-paradigm language supporting object-oriented features Hello World! import IO object Main def main(): unit

derive(Code) simplifies error handling by providing an easy-to-use enumeration of error codes

enum-code Introduction enum-code is a derive macro for enum types. This library generates code that associates error codes with error types. It can be

A complicated eso-lang written in Rust that doesn't limit your creativity!

Documentation for mott Introduction mott (from french "mot" = word) is (maybe) the first programming language, that doesn't limit your creativity to p

Stardust XR Reference Server, now in Rust :D

Stardust XR Reference Server This project is a usable Linux display server that reinvents human-computer interaction for all kinds of XR, from putting

A collection of crates to make minecraft development (client, server) with rust possible.

rust-craft rust-craft is a collection of crates to make minecraft development (client, server) with rust possible. Motivation There's no better way of

📩 steamworks.DownloadUGC for the server!

gmsv_workshop This module allows for servers to use the steamworks.DownloadUGC and steamworks.FileInfo functions, enabling runtime downloading & mount

Owner
Privoce
Re-decentralized the Internet through personal cloud computing.
Privoce
Purplecoin Core integration/staging tree

ℙurplecoin Official implementation of Purplecoin, the first stateless cryptocurrency. Requires Rust Nightly >=v1.63.0. WARNING The source code is stil

Purplecoin 5 Dec 31, 2022
Purplecoin Core integration/staging tree

ℙurplecoin Official implementation of Purplecoin, the first stateless cryptocurrency. Requires Rust Nightly >=v1.63.0. WARNING The source code is stil

Purplecoin 8 Jan 12, 2023
Multi-platform desktop app to download and run Large Language Models(LLM) locally in your computer.

Multi-platform desktop app to download and run Large Language Models(LLM) locally in your computer ?? Download | Give it a Star ⭐ | Share it on Twitte

Julio Andres 73 Jun 15, 2023
🚀simple server that returns error codes with their respective messages and debug information, written in rust 🦀

ErrorServer ?? A simple & lightweight server that returns a HTML page of the error code with its respective message and debug information, written in

Jakob 2 Dec 15, 2022
Global-Scale Media Server written in Rust (WebRTC/RTMP/SIP)

8xFF Media Server: Global-Scale Ultra-Low Latency Streaming Server written in Rust A media server that supports multiple protocols, including WebRTC,

8xFF 8 Nov 8, 2023
Global-Scale Media Server written in Rust (WebRTC/RTMP/SIP)

Decentralized Ultra-Low Latency Streaming Server A decentralized media server designed to handle media streaming at a global-scale, making it suitable

8xFF 11 Nov 26, 2023
Rust on ESP32 STD "Hello, World" app. A "Hello, world!" STD binary crate for the ESP32[XX] and ESP-IDF.

Rust on ESP32 STD "Hello, World" app A "Hello, world!" STD binary crate for the ESP32[XX] and ESP-IDF. This is the crate you get when running cargo ne

Ivan Markov 138 Jan 1, 2023
Rust app that creates cli quiz for you!

quizer rust app that creates cli quiz for you! Installation Download binary release or build from source using cargo Make binary executable chmod +x /

Fedya Petrakov 1 Sep 5, 2022
Reverse-engineered Rust client for Instagram's Threads app.

Instagram Threads API Unofficial, Reverse-Engineered Rust client for Instagram's Threads. Usage use threads_api::Threads; let client = Threads::new()

Miguel Piedrafita 66 Jul 12, 2023
Using iced-rs library for YT monitoring app

YouTube Monitoring App (using Rust) Description This app is built on the top of iced library. If you're curious what this is about, check out the YT m

Kushashwa Ravi Shrimali 3 Dec 15, 2022