{"id":21606031,"url":"https://github.com/codekitchen/tkellem","last_synced_at":"2025-04-11T04:04:58.649Z","repository":{"id":1159080,"uuid":"1046844","full_name":"codekitchen/tkellem","owner":"codekitchen","description":"multi-device IRC bouncer written in Ruby with EventMachine","archived":false,"fork":false,"pushed_at":"2015-03-24T01:13:59.000Z","size":670,"stargazers_count":39,"open_issues_count":10,"forks_count":10,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-04-11T04:04:52.885Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/codekitchen.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}},"created_at":"2010-11-03T03:18:46.000Z","updated_at":"2019-08-13T14:38:21.000Z","dependencies_parsed_at":"2022-08-16T12:20:32.940Z","dependency_job_id":null,"html_url":"https://github.com/codekitchen/tkellem","commit_stats":null,"previous_names":[],"tags_count":31,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codekitchen%2Ftkellem","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codekitchen%2Ftkellem/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codekitchen%2Ftkellem/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codekitchen%2Ftkellem/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codekitchen","download_url":"https://codeload.github.com/codekitchen/tkellem/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248339287,"owners_count":21087215,"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":[],"created_at":"2024-11-24T20:18:40.042Z","updated_at":"2025-04-11T04:04:58.632Z","avatar_url":"https://github.com/codekitchen.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tkellem\n\n[![Build\nStatus](https://travis-ci.org/codekitchen/tkellem.png)](https://travis-ci.org/codekitchen/tkellem)\n[![Code Climate](https://codeclimate.com/github/codekitchen/tkellem.png)](https://codeclimate.com/github/codekitchen/tkellem)\n[![Coverage Status](https://coveralls.io/repos/codekitchen/tkellem/badge.png)](https://coveralls.io/r/codekitchen/tkellem)\n\n\ntkellem is an IRC bouncer, a proxy that keeps you permanently logged on to an\nIRC server and stores all messages so that when your client next connects, you\ncan see the backlog of what happened while you were gone.\n\ntkellem supports multiple users, multiple device-independent backlogs\nper-user, and connecting to multiple IRC servers all from the same\nprocess.\n\n## Project Status\n\nI am no longer actively developing Tkellem, since I'm no longer on IRC day-to-day. My company switched to another chat protocol. Maintainers are welcome.\n\n## Getting Started\n\nThis will have to do as a quickstart guide, for now:\n\n    $ gem install tkellem\n    $ tkellem start\n    $ tkellem admin\n    \u003e help\n    \u003e listen ircs://0.0.0.0:8765\n    \u003e user \u003cmy-name\u003e --role=admin\n    \u003e password --user=\u003cmy-name\u003e \u003cmy-new-password\u003e\n    \u003e network --public --name=freenode ircs://irc.freenode.org:7000\n\nThen connect to tkellem with an irc client:\n\n    server: localhost\n    port: 8765\n    ssl: yes\n\n    nickname: \u003cmy-name\u003e\n    login: \u003cmy-name\u003e@freenode\n    server password: \u003cmy-new-password\u003e\n\nNote that all config and log files are stored in ~/.tkellem of the user\nyou run `tkellem start` as. You also need to run `tkellem admin` as this\nsame user, in order to have access to the admin console.\n\n## Devices\n\nEach user can connect with multiple devices. Devices are specified in your\nlogin by appending `:\u003cdevice-name\u003e` to your login. Example:\n\n    login: \u003cmy-name\u003e@freenode:work-machine\n\nIf there is no `:\u003cdevice-name\u003e` appended to your login, tkellem just uses a\ndefault device.\n\nUsing multiple devices simply marks separate points in the backlog so you\nget only the relevant backlog on a per-device basis.\n\n## Upgrading\n\nUpgrading is as simple as:\n\n    $ gem install tkellem\n    $ tkellem restart\n\nAll active clients will be forced to re-connect. Their positions in the backlog will not\nbe lost, so restarting is relatively painless.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodekitchen%2Ftkellem","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodekitchen%2Ftkellem","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodekitchen%2Ftkellem/lists"}