{"id":21634902,"url":"https://github.com/ealenn/larbinbot","last_synced_at":"2025-07-07T22:11:39.558Z","repository":{"id":39746498,"uuid":"353112309","full_name":"Ealenn/LarbinBot","owner":"Ealenn","description":"Completely customizable Twitch Bot. ","archived":false,"fork":false,"pushed_at":"2022-05-26T14:54:55.000Z","size":3375,"stargazers_count":2,"open_issues_count":4,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-25T00:20:28.181Z","etag":null,"topics":["bot","twitch","twitch-bot","typescript"],"latest_commit_sha":null,"homepage":"https://ealenn.github.io/LarbinBot/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ealenn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-03-30T19:04:37.000Z","updated_at":"2022-05-20T22:03:40.000Z","dependencies_parsed_at":"2022-08-27T08:30:40.047Z","dependency_job_id":null,"html_url":"https://github.com/Ealenn/LarbinBot","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ealenn%2FLarbinBot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ealenn%2FLarbinBot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ealenn%2FLarbinBot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ealenn%2FLarbinBot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ealenn","download_url":"https://codeload.github.com/Ealenn/LarbinBot/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244320322,"owners_count":20434090,"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":["bot","twitch","twitch-bot","typescript"],"created_at":"2024-11-25T03:18:34.901Z","updated_at":"2025-03-18T22:41:32.185Z","avatar_url":"https://github.com/Ealenn.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LarbinBot\n\n[![Codecov](https://img.shields.io/codecov/c/github/ealenn/LarbinBot?style=for-the-badge\u0026logo=codecov)](https://codecov.io/gh/Ealenn/LarbinBot)\n[![GitHub stars](https://img.shields.io/github/stars/Ealenn/LarbinBot?style=for-the-badge\u0026logo=github)](https://github.com/Ealenn/LarbinBot/stargazers)\n[![GitHub issues](https://img.shields.io/github/issues/Ealenn/LarbinBot?style=for-the-badge\u0026logo=github)](https://github.com/Ealenn/LarbinBot/issues)\n![GitHub release (latest by date)](https://img.shields.io/github/v/release/ealenn/LarbinBot?style=for-the-badge)\n![Docker Pulls](https://img.shields.io/docker/pulls/ealen/larbinbot?style=for-the-badge)\n\nCompletely customizable Twitch Bot. \n\n![](./docs/assets/images/larbinbot.png)\n\n```bash\ndocker run --rm \\\n  -e DEBUG=true \\\n  -e LARBIN_TWITCH_USERNAME= Larbin \\\n  -e LARBIN_TWITCH_PASSWORD= oic:password \\\n  -e LARBIN_TWITCH_CHANNEL= example \\\n  -e LARBIN_FILE= /bot \\\n  -v $PWD/config:/bot \\\n  ealenn/larbinbot\n```\n\nMore information about deployment here [https://ealenn.github.io/LarbinBot/deployment](https://ealenn.github.io/LarbinBot/deployment)\n\n## Version\n\nThe versioning scheme is [SemVer](http://semver.org/).\n\n``` yml\n- latest: Master Build\n- x.x.x: Release version x.x.x\n- snapshot: Pull Request / Internal Tests\n```\n\n## Environment Variables\n\n``` bash\n# Path to larbin.yml configuration file\nLARBIN_FILE=/tmp\n# Debug mode\nDEBUG=true\n# Single command threshold per second\nLARBIN_THRESHOLD=5\n\n# Twitch Credentials (mandatory)\nLARBIN_TWITCH_USERNAME: Larbin\nLARBIN_TWITCH_PASSWORD: oic:password\nLARBIN_TWITCH_CHANNEL: example\n```\n\n## Larbin Configuration File (LCF)\n\nYou must configure this bot with configuration file `larbin.yml`. \nThis file contain all actions/events and commands.\n\nMore information about Larbin Configuration File here [https://ealenn.github.io/LarbinBot/configuration](https://ealenn.github.io/LarbinBot/configuration)\n\n``` yaml\ntools:\n  commands:\n    # Command to start/stop schedulers\n    # (The schedulers is started by default on bot starting.)\n    # Example:\n    # !schedulers status\n    # !schedulers on\n    # !schedulers off\n    - type: schedulers\n      name: '!schedulers'\n      policies:\n        mod: true\n        admin: true\n      argOn: 'on'\n      argOff: 'off'\n      argStatus: 'status'\ncommands:\n  - name: '!facebook' # Command to write \n    random: false # Takes a random message from the list rather than following the order of the list\n    policies:\n      others: true # All\n    messages: \n      - 'My Facebook is https://facebook.com/example'\n      - 'Like my Facebook page https://facebook.com/example'\n  - name: '!twitter'\n    policies:\n      others: true # All\n    messages: \n      - 'My Twitter is https://twitter.com/example (This question has been asked {{ Count }} times)'\nschedulers:\n  - id: 'social' # Required, is only used to make this scheduler unique\n    minutes: 10 # Send message every minutes\n    random: true # Takes a random message from the list rather than following the order of the list \n    messages:\n    - 'Follow me on Twitter https://twitter.com/example'\n  - id: 'other'\n    minutes: 5\n    messages:\n    - 'Text rolling 1'\n    - 'Text rolling 2'\n    - 'Text rolling 3'\nevents:\n  - name: 'join' # Event type\n    random: true # Takes a random message from the list rather than following the order of the list \n    messages:\n      - 'Less noise {{ Username }} is coming!'\n      - 'Ah! We are talking about you {{ Username }} !'\n  - name: 'raided'\n    messages: \n      - 'Thanks to {{ Username }} for this raid of {{ Viewers }} viewers !'\n  - name: 'resub'\n    messages: \n      - 'Thanks {{ Username }} for your {{ Months }} with us ! -- {{ Username }} say: {{ Message }}'\n  - name: 'submysterygift'\n    messages: \n      - '{{ Username }} is rich and he just offered {{ OfferedSubs }} subscription! Thank him in the chat! (with a total of {{ GiftCount }} subscription offered)'\n  - name: 'subgift'\n    messages: \n      - 'Hey ! {{ Username }} is {{ GiftCount }}x more generous with {{ RecipientUsername }} !'\n  - name: 'subscription'\n    messages: \n      - 'I know someone from sub, but, I say anything, alright {{ Username }} ?'\n```\n\n### Policies\n\n**Warning**, by default, everything is blocked for everyone. You must allow at least one.\n\n``` yaml\n# DEFAULT POLICIES VALUES\npolicies:\n  admin: false # Allow Admins/Streamer\n  mod: false # Allow Moderators\n  vip: false # Allow VIP\n  sub: false # Allow Subscriber\n  others: false # Allow/Disallow all/others\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fealenn%2Flarbinbot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fealenn%2Flarbinbot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fealenn%2Flarbinbot/lists"}