{"id":16367597,"url":"https://github.com/nkonev/videochat","last_synced_at":"2025-04-07T19:16:57.697Z","repository":{"id":40472743,"uuid":"234947221","full_name":"nkonev/videochat","owner":"nkonev","description":"Yet another Telegram/Zoom/Skype/Jitsi/RocketChat/Discord/OpenMeetings/BigBlueButton/Teams/Mattermost/etc... killer","archived":false,"fork":false,"pushed_at":"2024-10-29T11:46:02.000Z","size":32491,"stargazers_count":72,"open_issues_count":0,"forks_count":23,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-10-29T11:53:13.308Z","etag":null,"topics":["chat","chat-application","chat-room","livekit","video","video-chat","video-chat-meetings","video-conferencing","video-room","video-rooms","videoconference","videoconferencing","web-conferencing","webrtc","webrtc-call","webrtc-meetings","webrtc-video"],"latest_commit_sha":null,"homepage":"https://chat.nkonev.name","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nkonev.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-01-19T18:41:20.000Z","updated_at":"2024-10-29T11:46:06.000Z","dependencies_parsed_at":"2024-03-11T03:29:51.348Z","dependency_job_id":"0d3d2691-8dab-4ed5-ad49-bbbccb575483","html_url":"https://github.com/nkonev/videochat","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nkonev%2Fvideochat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nkonev%2Fvideochat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nkonev%2Fvideochat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nkonev%2Fvideochat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nkonev","download_url":"https://codeload.github.com/nkonev/videochat/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247713258,"owners_count":20983683,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chat","chat-application","chat-room","livekit","video","video-chat","video-chat-meetings","video-conferencing","video-room","video-rooms","videoconference","videoconferencing","web-conferencing","webrtc","webrtc-call","webrtc-meetings","webrtc-video"],"created_at":"2024-10-11T02:50:19.494Z","updated_at":"2025-04-07T19:16:57.669Z","avatar_url":"https://github.com/nkonev.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"[![Build Status](https://github.com/nkonev/videochat/workflows/CI%20jobs/badge.svg)](https://github.com/nkonev/videochat/actions)\n\n[GitHub](https://github.com/nkonev/videochat) | [GitFlic](https://gitflic.ru/project/nkonev/videochat)\n\n# Videochat\nYour open source self-hosted videoconference platform.\n\n# Why\nToday Web is ubiquitous. Most of computer's users have web browsers. \nUsually they are modern versions of either Chrome- or Firefox-based browsers.\nIt seems enough to make video calls. But...\n\nMany of popular communication platforms ignore this fact. \nTypically, they force you to install their Electron-based application on your computer.\nHence, along with web browser you open their heavy application, the resource consumption grows.\n\nMany of popular video platforms store your data on their servers, it means they actually control your data.\nThis increases risks of data leak, also it makes it possible for them to sell your data, \nto track your actions and watch you. \n\nMoreover, they can remove all your data in some moment, \nso you can lose your messages, files, discussions, contacts, customers, clients, etc...\n\nThey show you annoying or inappropriate ads, you have no option to disable it.\n\nThis project offers you a self-hosted solution, that you can incorporate into your infrastructure, \nso you will possess your data and can you apply your own security policies, \nwhether to expose this service to the Internet or not, to hide it behind your corporate VPN and so on.\n\n# Screenshots\nClick on image to open a screenshot gallery.\n[![Chat image](./.screenshots/14_most_of_features.png)](./screenshots.md)\n\n# Features:\n* Free HTTPS by Let's Encrypt.\n* One domain name.\n* Calls from PC to Mobile and vise versa.\n* Well-integrated video calls into entire platform UI, no separated video rooms, text chats, etc...\n* No installation on client's machine - only modern browser with video camera or microphone required.\n* Tested in Firefox and Chrome.\n* Multiple cameras support - an user can transmit video simultaneously from several web cameras connected to their computer.\n* Multiple devices support - an user can use several devices simultaneously (e. g. smartphone / PC / Laptop / ...).\n* Screen [sharing](./screenshots.md#screen-sharing).\n* Video recording, recordings are saved to Files.\n* [Files](./screenshots.md#chat-files).\n* Public files.\n* Public messages.\n* [Muting, kicking](./screenshots.md#videoconference-and-participant-management) video participants.\n* Calling to user to [invite](./screenshots.md#inviting-user-to-videoconference) his or her to video conference.\n* User is [speaking indication](./screenshots.md#user-is-speaking-indication-green-nickname-and-microphone).\n* Persistent messages: they remain after you exit from the video conference.\n* [Tet-a-tet](./screenshots.md#open-tet-a-tet-chat) private chats for two.\n* Notifications about `@mention`, `@all`, `@here` and missed video calls.\n* Pinned messages.\n* Pinned chats.\n* Reactions.\n* Supports [login](./screenshots.md#login) through OpedID Connect providers: Facebook, VK.com, Google, Keycloak. Not required can be disabled.\n* Synchronizing users with [Keycloak](./development.md#keycloak) and [LDAP](./development.md#ldap-example-with-opendj) with conflict resolving strategies.\n* Internationalization: English and Russian UI.\n* Firewall friendly: only two ports for WebRTC are needed (TURN, WebRTC).\n* Loadbalancer friendly: No sticky sessions required.\n* Horizontal scaling, including video server itself thanks to Livekit.\n* Simple setup with Ansible and Docker Swarm.\n* No vendor lock on cloud provider.\n* Known and popular technologies: PostgreSQL, RabbitMQ, ~Redis~ Valkey, Jaeger, Minio, Traefik, Nginx, Node.js with their communities, no rare nor exotic technologies.\n* Self-contained frontend bundle without any CDN downloads - it can work in a closed network without internet access.\n* No need to edit `/etc/hosts` for local demo installation or development.\n* Send the message when finishing media (image, video) or file has been uploaded.\n* Simple SEO-friendly blog, based on chats.\n* No tracking - we don't track your activities.\n\n# Demo\nTry server [installation](https://chat.nkonev.name/)\n\n# Installation\n[Ansible](./install/ansible/readme.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnkonev%2Fvideochat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnkonev%2Fvideochat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnkonev%2Fvideochat/lists"}