30 open-source projects similar to antirez/smallchat, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Smallchat alternative.
TCP-IP-NetworkNote is a comprehensive technical reference and guide for implementing network communication using TCP and UDP sockets in C and C++. It provides a detailed manual for using the POSIX socket API and covers the implementation of network protocols, synchronous and asynchronous I/O patterns, and concurrent programming models. The project is distinguished by its focus on cross-platform networking, offering a detailed comparison of socket implementation details and adaptation utilities between Linux and Windows Winsock environments. It specifically addresses the differences in header
CppGuide is a curated collection of educational resources and practical guides focused on C++ server development, Linux kernel internals, concurrent programming, network protocols, and security exploitation. It provides structured learning paths for backend developers, covering everything from interview preparation to building high-performance network servers and understanding operating system fundamentals. The guide distinguishes itself by offering in-depth, hands-on tutorials that walk through real-world implementations, including building a Redis-like server from scratch, designing custom
This project serves as a comprehensive tutorial and technical resource for developing network applications in the C programming language. It focuses on the practical application of the Berkeley socket interface, guiding users through the implementation of low-level network protocols and the management of data transmission across both connection-oriented and connectionless streams. The material distinguishes itself by covering the full lifecycle of network communication, from initializing system-level protocol stacks and resolving domain names to managing complex connection behaviors. It provi
SocketRocket is an Objective-C WebSocket client library designed to establish bidirectional real-time communication channels between an application and a server. It provides a networking layer for real-time data streaming, utilizing a heartbeat monitor to maintain the stability of active network streams. The library is built to operate across restricted networks by routing traffic through HTTP proxies. It secures data transmission using TLS encryption and SSL certificate pinning to prevent unauthorized interception of network traffic. Its underlying capabilities include low-level TCP socket
xmr-stak is blockchain mining software designed to secure decentralized ledgers by calculating hashes to earn rewards. It functions as a cryptocurrency miner supporting the RandomX algorithm for Monero and various versions of the CryptoNight algorithm across CPUs and GPUs. The software includes a web-based monitoring dashboard that allows for the tracking of real-time performance metrics and mining status through a browser interface. It also features a multi-pool failover mechanism to maintain continuous operation by managing connections between primary and backup mining pools. Operational c
This project is a C++ TCP server framework and educational socket programming guide. It provides a high-performance network library focused on event-driven architecture, implementing a reactor pattern to handle thousands of simultaneous client connections. The framework is distinguished by its multi-threaded event loop, which utilizes a main-sub reactor coordination model to distribute network events across a worker thread pool. It includes an abstraction layer for non-blocking socket I/O and event multiplexing via the epoll system call, decoupling network transport from application business
POCO is a comprehensive C++ application framework that provides a cross-platform set of libraries for building network-centric applications. It offers a unified abstraction layer that wraps platform-specific APIs, enabling the same code to run across desktop, server, mobile, IoT, and embedded systems. The framework is organized into modular libraries that can be compiled and linked selectively, allowing developers to include only the components their application needs. The framework distinguishes itself through its broad coverage of application infrastructure needs, including threading and sy
websocket-sharp is a C# library implementation of the WebSocket protocol used for building bidirectional client and server applications. It enables real-time data exchange between endpoints via persistent connections. The library provides specialized networking capabilities, including SSL encrypted networking for secure transport and certificate validation. It also features HTTP proxy tunneling to route traffic through intermediary servers using basic or digest authentication. The project covers a broad range of capabilities, including the implementation of both WebSocket clients and servers
Tinyhttpd is a minimal HTTP web server designed to process requests, deliver static files, and execute CGI scripts via network sockets. It serves as an educational implementation for studying the fundamental mechanics of the HTTP protocol and network programming. The server supports the Common Gateway Interface to generate dynamic content by launching external programs as subprocesses. It manages these dynamic requests by redirecting data through pipes and system environment variables. The system provides capabilities for parsing HTTP request methods and URLs, mapping those requests to local
Swifter is a lightweight HTTP server engine and networking library for the Swift programming language. It provides a minimal networking layer designed for hosting internal web services, building server-side applications, and implementing custom HTTP servers. The project enables the creation of embedded web services for remote control or status monitoring and supports lightweight web hosting with a minimal footprint. Its capabilities cover the management of raw TCP connections and network sockets, using a request-response cycle to parse incoming data into HTTP requests and map them to handler
smoltcp is a standalone TCP/IP network stack written in Rust, designed specifically for bare-metal and embedded systems. It provides a memory-safe implementation of the internet protocol suite that operates without requiring dynamic heap allocation. The project is distinguished by its heap-less memory management, using fixed-size buffers and manually allocated memory to ensure deterministic performance. It employs zero-copy packet processing and an interface-based hardware abstraction to decouple the network stack from physical hardware. The stack covers a broad range of networking capabilit
nanomsg is a distributed messaging middleware and scalable messaging library designed for moving data between machines and processes. It functions as a socket-based communication framework that routes data across different network transport layers. The library implements scalable messaging patterns, specifically request-reply and publish-subscribe, to handle high volumes of data across distributed systems. It provides tools for network performance benchmarking to quantify messaging throughput and latency. The framework supports distributed message routing and inter-process communication usin
AndroidAsync is a non-blocking networking library for Android that provides asynchronous sockets, HTTP clients, and servers based on Java NIO. It serves as a toolkit for managing raw TCP socket connections and bidirectional data streams using an asynchronous input and output architecture. The library includes a dedicated WebSocket framework for establishing persistent full-duplex communication channels between Android clients and servers. It also enables the hosting of a lightweight asynchronous HTTP server directly on an Android device to handle incoming network traffic. Its broader capabil
LearnPython is a programming tutorial consisting of a collection of practical code examples used to demonstrate Python language features and programming patterns. It serves as a comprehensive learning resource that implements core language concepts through functional code. The project provides specialized guides and samples covering several key domains. These include asynchronous network programming with event loops and coroutines, data visualization using numerical datasets for 2D and 3D plots, and web scraping for fetching content and automating login flows. It also features instructions on
Rust is a programming language designed for memory safety and performance. It provides a comprehensive curriculum that covers fundamental syntax, memory management, and advanced programming paradigms, including support for functional and object-oriented styles. The language features a strong type system that enforces memory safety through ownership, borrowing, and lifetime annotations, while also offering mechanisms for handling both recoverable and unrecoverable errors. The language includes extensive support for concurrent programming, providing primitives for thread management, shared-stat
Flood is a BitTorrent client manager and web user interface designed to control multiple torrent client instances from a centralized dashboard. It includes a REST API for automating download management and a streaming gateway that enables the immediate playback of torrent content. The system supports multi-instance client control, allowing the administration of several separate torrent clients from one location. It features network torrent streaming, which forwards data directly to media players without requiring the full file to be written to disk. The platform provides tools for tracker op
Spectrum is an open-source community platform designed for developer teams to host real-time threaded discussions, share code, and collaborate around GitHub projects. It provides a complete environment for creating and managing online communities with organized channels, member roles, and content moderation tools that keep conversations civil and on-topic. The platform integrates directly with GitHub, enabling users to authenticate through GitHub OAuth, search across code repositories and projects, and connect discussions to repository activity. Spectrum offers role-based team permission mana
This project is a full-stack project management web application designed for organizing work and managing project workflows. It consists of a Node.js TypeScript REST API for server-side business logic and a React component UI library for the frontend interface. The application implements a board-based task visualization system with customizable status workflows. It provides mechanisms for issue workflow management, including task prioritization and team member assignment to track responsibilities and progress. The system is built with a decoupled client-server architecture using full-stack T
Hishtory is a shell command database and terminal history search tool that captures, records, and manages historical shell sessions. It functions as a synchronized history manager, providing a terminal interface to filter and search saved commands by text, host, user, or date. The project distinguishes itself by integrating large language models to suggest probable shell commands when traditional history searches fail to find a result. It also provides cross-device history synchronization, mirroring command history between a local terminal and a remote backend. The system covers command line
This project is a technical programming guide and educational resource focused on Go internals, runtime mechanisms, and advanced language features. It provides detailed conceptual analysis of the language's execution model, including its scheduler, memory escape analysis, and garbage collection mechanisms. The material distinguishes itself through deep dives into high-concurrency system design, exploring the implementation of worker pools and communication channels. It also covers low-level network programming with a focus on I/O multiplexing and TCP state management, alongside a study of dis
PartyKit is a serverless WebSocket backend platform for building real-time multiplayer applications. It provides a globally distributed edge computing runtime that runs stateful server code close to users, with automatic scaling and hibernation for idle rooms. The platform handles WebSocket connections, HTTP requests, and durable storage without requiring infrastructure management, and includes a client and server SDK with hooks, storage, and Yjs integration for building collaborative features. The platform distinguishes itself through per-room isolation using Durable Objects, where each uniq
Jellyfin is a self-hosted media server that organizes digital media collections and streams content to various client devices over a local or remote network. It utilizes a client-server architecture that separates media processing and storage from user interfaces, communicating through a standardized web-based application programming interface. The platform is designed for cross-platform hosting, running consistently across Linux, Windows, and macOS through native binaries or containerized environments. It features a hardware-accelerated transcoding engine that offloads intensive video conver
NATS Server is a high-performance, lightweight messaging system designed for cloud-native applications, edge computing, and distributed microservices. It functions as a distributed publish-subscribe broker that routes messages using hierarchical, dot-separated subject strings, enabling decoupled communication between services without requiring centralized broker lookups. The system supports core messaging patterns including asynchronous publish-subscribe, request-reply, and load-balanced queue processing. The platform distinguishes itself through a decentralized architecture that eliminates t
Moby is an OCI container engine and runtime manager designed for building, running, and managing isolated containers based on Open Container Initiative standards. It functions as a container daemon and image builder, providing a core engine to orchestrate the full lifecycle of containers and the packaging of source code into portable images. The project provides a standardized HTTP interface that allows for programmatic container management, enabling external clients to control daemon settings and container operations. It supports a rootless security model, allowing the engine daemon to execu
Open-Assistant is a conversational assistant and a system for creating large language model training datasets. It utilizes a client-server architecture that separates the conversational user interface from language model processing through an API. The project features a retrieval-augmented generation system that fetches external data from search engines to provide real-time knowledge. It also includes a standardized plugin interface for connecting language models to third-party systems and external software tools. The system provides a pipeline for collecting and labeling human-annotated pro
Sourcetrail is an interactive source code explorer and visualizer designed for indexing and navigating relationships between symbols and structures across large, multi-language codebases. It functions as a static analysis indexer and code dependency visualizer that maps calls and dependencies between source files to help reveal project architecture. The tool enables multi-language project analysis by using a language-agnostic indexing system to track symbols across different programming languages within a single interface. It allows for the discovery of software architecture and the explorati
This project is a lightweight MQTT client library for Arduino boards, specifically designed for embedded systems utilizing an Ethernet Shield. It functions as an embedded messaging client that allows hardware devices to publish and subscribe to topics on a remote message broker. The library provides core MQTT integration, including broker connection management and the maintenance of server heartbeats. It supports topic-based message publishing and subscription management, enabling the registration of listeners to trigger functions upon message arrival. The system covers network connection co
SwarmUI is a web-based interface and orchestrator for Stable Diffusion, designed to generate images and video. It functions as a modular workflow manager and an API gateway that allows for the configuration and execution of generative AI pipelines. The system is characterized by its ability to distribute generation workloads across multiple graphics cards to increase processing speed and total throughput. It employs a decoupled client-server architecture and a backend-agnostic interface, allowing the user interface to remain separate from the model execution environment. The platform support
Dev-Cpp is a comprehensive development suite that serves as a C++ integrated development environment, a cross-platform application builder, and a visual UI designer. It provides a toolchain for writing, compiling, and debugging native C++ applications on Windows, while offering a framework to create native binaries for desktop, mobile, and IoT devices from a single codebase. The project distinguishes itself by integrating an embedded SQL database engine and a REST API development platform directly into the workflow. It includes an AI-assisted coding tool that leverages large language models t
Hoodie is a data synchronization framework and offline-first JavaScript backend designed to keep client-side data stores in sync with a remote backend. It provides a local-first persistence layer that allows applications to remain functional while offline by abstracting the client-side database. The system features a NoSQL backend interface that enables interaction with remote data stores without requiring custom server-side boilerplate code. This is supported by a modular driver system of pluggable backend adapters that connect the synchronization layer to various remote database providers.