{"id":18378349,"url":"https://github.com/tyom/botan","last_synced_at":"2026-05-03T12:33:05.131Z","repository":{"id":38291183,"uuid":"186167720","full_name":"tyom/botan","owner":"tyom","description":"An arguably useful Slack bot","archived":false,"fork":false,"pushed_at":"2022-12-09T23:10:21.000Z","size":1305,"stargazers_count":0,"open_issues_count":13,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-08-20T00:48:44.087Z","etag":null,"topics":["bot","botkit","node","slack"],"latest_commit_sha":null,"homepage":"https://glitch.com/~iambotan","language":"JavaScript","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/tyom.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-05-11T18:22:46.000Z","updated_at":"2020-07-02T09:31:44.000Z","dependencies_parsed_at":"2023-01-25T23:46:46.226Z","dependency_job_id":null,"html_url":"https://github.com/tyom/botan","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tyom/botan","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tyom%2Fbotan","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tyom%2Fbotan/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tyom%2Fbotan/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tyom%2Fbotan/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tyom","download_url":"https://codeload.github.com/tyom/botan/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tyom%2Fbotan/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32569712,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T06:36:36.687Z","status":"ssl_error","status_checked_at":"2026-05-03T06:36:09.306Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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","botkit","node","slack"],"created_at":"2024-11-06T00:33:10.952Z","updated_at":"2026-05-03T12:33:05.112Z","avatar_url":"https://github.com/tyom.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Botan the Slack bot\n\nA generic Slack bot built with [BotKit](https://botkit.ai).\n\n## Configuration\n\nFirst make sure `.env` file is configured.\n\n### Distributable app\nTo run this bot as distributable app \n(single app that can be installed to multiple teams) you'll need to set `SLACK_CLIENT_ID`\nand `SLACK_CLIENT_SECRET`. `REDIRECT_URI` needs to be set to your apps URL (make sure the\npath is `/install/auth`).\n\nWhen using this methods the app will need to store bot token and channel ID, for this\nyou'll need to set `JSONSTORE_URL` and `JSONSTORE_ENCRYPT_KEY`. The data will be stored\nin a [jsonstore.io](https://www.jsonstore.io) collection and encrypted using the key.\n\n### Single instance\nTo run this bot as a single team instance you'll only need `SLACK_BOT_TOKEN` which can\nbe obtained by installing the app from app manager.\n\nBoth methods require `SLACK_SIGNING_SECRET` which is used to verify that your app is\nsending the requests.\n\n`ENCODE_URL` base64-encodes URLs sent to Memify service.\n\n`AYLIEN_TEXT_API_KEY` needs to be set to use summary feature which is using\n[Aylien Text Analysis API](https://aylien.com/text-api/sdks/). You can subscribe to\na generous free tier with [RapidAPI](https://rapidapi.com/aylien/api/text-analysis).\n\n`DEBUG=true` will log communication to console to help you understand what's being sent\nfrom Slack to the bot.\n\n## Development\n\nCheck out the repo and run the app in dev mode:\n\n```\nyarn dev\n```\n\nThe app will run on `PORT` defined in `.env` file. To use this app in Slack you'll need\nto expose it to the outside world via a tunnel. You can use localtunnel which is provided\nwith the app. Run `yarn tunnel`. Or [ngrok](https://ngrok.com) which I find more stable,\nbut the free version doesn't support custom subdomain aliases.\n\nOnce the tunnel is set up, go to Slack app configuration and set request URL for different\nfeatures to point to the tunneled app. Make sure the path is set to `/api/messages`.\n\nThe bot uses interactive components, slash commands and event subscriptions. Also subscribe\nto Bot events, such as `app_mention`, `message.channels`, `message.groups` etc.\n\n## Deployment\n\nThis bot has been tested with [Glitch](https://glitch.com) which is a great service for small\nprojects like this. You can import from and export directly to GitHub repo and it automatically\nrestarts on changes. It's very easy to play with and devlop this app directly from Glitch.\n\nSee [Botan's Glitch page](https://glitch.com/~iambotan).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftyom%2Fbotan","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftyom%2Fbotan","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftyom%2Fbotan/lists"}