once-campfire README

The project's README from github.com/basecamp/once-campfire. As one markdown file: README.md.

Campfire

Campfire is a web-based chat application. It supports many of the features you'd expect, including:

Running your own Campfire instance

Campfire's Docker image contains everything needed for a fully-functional, single-machine deployment. This includes the web app, background jobs, caching, file serving, and SSL. You can use our pre-built image at ghcr.io/basecamp/once-campfire:latest, or build your own from this repo.

Deploying with ONCE

The easiest way to self-host Campfire is with ONCE. It will guide you through the initial set up and then keep your instance up to date automatically.

If you don't already have once installed, run this on the machine you want to run Campfire on:

curl https://get.once.com | sh

once will launch as soon as the install is finished.

Choose Campfire from the list of applications, follow the instructions, and ONCE will take care of the rest.

If you prefer the command line to the dashboard, you can deploy directly:

once deploy ghcr.io/basecamp/once-campfire --host chat.example.com

Deploying with Docker

If you'd rather run the Docker image yourself, you can read more about that in the self-hosting guide.

[!TIP] When you start Campfire for the first time, you'll be guided through a wizard to create an admin account. The email address that you enter for the admin account will be visible on the sign-in page, it's there so that people have someone to contact if they need help with their account. If that bothers you, put in any email address you want and create yourself a new admin account.

Other implementations

Campfire also has implementations in Django, Laravel, Express, Elixir, Go and Rust:

HTTP workload (requests/sec) Rails Django Laravel Express Elixir Go Rust
Room page 241 170 164 559 722 3,860 36,260
Messages page 413 196 175 777 1,053 5,573 40,872
Sidebar 552 615 715 4,125 1,275 19,753 34,672
Search 435 315 305 1,294 1,156 7,053 33,299
Post a message 273 154 137 256 801 4,767 6,896

Measured with 16 concurrent clients on an AMD Ryzen AI MAX+ 395, with four hardware threads allocated to each app.

Development

You are welcome - and encouraged - to modify Campfire to your liking. Please see our development guide for how to get Campfire set up for local development.

Security

See SECURITY.md for how to report a vulnerability and a description of our trust model.

once-campfire (basecamp/once-campfire)

Searching Database…

Что это такое?Campfire — предельно простое веб-приложение для группового чата, которое вы размещаете у себя, вместо того чтобы платить за чат по подписке.
Это хостинговый сервис или то, что я запускаю сам?Это self-hosted веб-приложение: вы запускаете его на своей машине с помощью Docker-образа, который включает веб-приложение, фоновые задачи, кеширование, раздачу файлов и SSL.
Как запустить собственный экземпляр?Проще всего установщик ONCE, который проведёт вас через настройку и будет автоматически обновлять приложение; как вариант — запустите готовый Docker-образ напрямую из ghcr.io/basecamp/once-campfire:latest или соберите его сами из репозитория.
Нужен ли Docker для запуска?Да — Campfire распространяется и запускается как Docker-образ (или через установщик ONCE, который сам выполняет Docker-развёртывание за вас).
Что происходит при первом запуске?При первом запуске вы проходите мастер настройки и создаёте аккаунт администратора, а указанный вами email будет публично виден на странице входа — для связи с поддержкой.
На какой платформе он работает?Он работает как self-hosted Docker-контейнер на Linux, доступный через любой веб-браузер.
Данные моего чата остаются на моём собственном сервере?Да, поскольку всё полностью размещено на вашей собственной машине, все данные чата, файлы и поисковый индекс остаются под вашим контролем.
Какие функции Campfire поддерживает из коробки?Несколько комнат с контролем доступа, личные сообщения, вложения с предпросмотром, поиск, Web Push-уведомления, @упоминания и API с поддержкой интеграции ботов.
Могут ли боты интегрироваться с Campfire?Да, Campfire предоставляет API, специально созданный для поддержки интеграций ботов.
Есть ли другие реализации на других языках?Да, в README даны ссылки на community-реализации на Django, Laravel, Express, Elixir, Go и Rust; версии на Rust и Go в собственных бенчмарках обрабатывают заметно больше запросов в секунду.
Можно ли доработать Campfire под свои нужды?Да, проект явно приветствует и поощряет доработку, есть руководство разработчика по настройке локального dev-окружения.
What are similar projects?novu, zulip, pi-pocket, sphere, element-web, zapfast, YYeTsBot, server
Creator
basecamp
Size
59 MB
Stars
4.8K
Age
1y
Commits · 90 Days