{"id":13298425,"url":"https://github.com/dcdunkan/bible-bot","last_synced_at":"2025-05-05T21:09:37.914Z","repository":{"id":114587754,"uuid":"462600379","full_name":"dcdunkan/bible-bot","owner":"dcdunkan","description":"A simple Telegram Bot for reading the whole Bible in 80+ translations inside Telegram.","archived":false,"fork":false,"pushed_at":"2024-11-15T10:16:16.000Z","size":89,"stargazers_count":21,"open_issues_count":1,"forks_count":5,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-30T23:41:10.510Z","etag":null,"topics":["bible","deno","deta","deta-base","getbible","grammyjs","telegram-bot","typescript"],"latest_commit_sha":null,"homepage":"https://telegram.me/scripturbot","language":"TypeScript","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/dcdunkan.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":"2022-02-23T05:52:59.000Z","updated_at":"2024-11-15T10:16:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"3ed2223b-293b-435f-90ec-4f1152b29fec","html_url":"https://github.com/dcdunkan/bible-bot","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcdunkan%2Fbible-bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcdunkan%2Fbible-bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcdunkan%2Fbible-bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcdunkan%2Fbible-bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dcdunkan","download_url":"https://codeload.github.com/dcdunkan/bible-bot/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252577003,"owners_count":21770721,"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":["bible","deno","deta","deta-base","getbible","grammyjs","telegram-bot","typescript"],"created_at":"2024-07-29T17:29:41.981Z","updated_at":"2025-05-05T21:09:37.881Z","avatar_url":"https://github.com/dcdunkan.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eBible Bot\u003c/h1\u003e\n\n### Try the official public instance of the bot here: [Scripture Bot](https://telegram.me/scripturbot)\n\nBible Bot, for reading the whole Bible in 80+ translations inside Telegram. You\ncan read the bible, request a passage by sending the reference and customize\nyour experience.\n\n\u003e This is a complete re-write and modified version of the previous version: 3,\n\u003e which you can find here:\n\u003e [dcdunkan/bible-bot-v3](https://github.com/dcdunkan/bible-bot-v3).\n\nRe-written in [TypeScript](https://typescriptlang.org) and\n[grammY](https://grammy.dev/) and now it runs on [Deno](https://deno.land/).\n\n- [Built Using](#built-using)\n- [Features](#features)\n- [Setup › Running Locally](#running-locally)\n- [Setup › Deno Deploy](#deno-deploy)\n- [Setup › Environment Variables](#environment-variables)\n\n## Built Using\n\nThanks to these tools and libraries.\n\n1. _[GetBible.net API](https://getbible.net)_ — A simple API used for fetching\n   the Scripture data for the various translations.\n2. _[grammY](https://grammy.dev)_ - The coolest Telegram Bot Framework.\n\n## Features\n\n- **Read the whole Bible in 80+ translations** (Does not require any manual\n  updating by this bot, it should update as the GetBible API data updates). Use\n  the `/translations` or `/read` command in chat.\n- **Request a passage by sending the reference**. You can find the accepted book\n  names and formats by sending `/valid_references` in chat.\n- Set a default translation. You don't have to do `/translations` every time and\n  choose one. You can set a default one using `/default`. And this will be used\n  when using `/read` command and requesting passages.\n- **Bookmarks**. Click on the 🔖 button to bookmark a page and ❌🔖 to remove\n  it. Use `/bookmarks` to list all of your bookmarks.\n- **Customize your experience** with the options (You can suggest something new\n  by opening an issue or by contributing) in the `/settings` menu.\n- **I was reading ABC last day.** Ah, use `/last` to get back to the last read\n  page.\n\nI really want to add more features like, using _inline to share verses_, or\nsomething like a _verse image generator_, maybe? **Maybe** sometime in future.\n\n## Setup\n\n### Running Locally\n\nMake sure you have installed [Deno](https://deno.land).\n\n- Clone the repository.\n  ```bash\n  git clone https://github.com/dcdunkan/bible-bot.git\n  ```\n- Change directory (`cd`) to the cloned repository.\n- Create a `.env` file and set [environment variables](#environment-variables)\n  like in [`.env.example`](.env.example). Make sure you have set `LOCALLY` to\n  `1`.\n- Run the bot using the command below.\n  ```bash\n  DEBUG=1 deno -NI -E=DEBUG,BOT_TOKEN,USE_CACHE main.ts\n  ```\n\n  \u003e Or set `DEBUG=grammy*` to see the debug logs.\n\n  **Required permissions**\n  - `net` - To communicate with Telegram servers and receive updates.\n  - `env` - To access environment variables.\n\n  When using the cache include:\n  - `read` - To read cached files.\n  - `write` - To write cache files.\n\n### Deno Deploy\n\nThe working bot, [@scripturbot](https://telegram.me/scripturbot) is currently\ndeployed on [Deno Deploy](https://deno.com/deploy). Even though I have\nimplemented a fine getbible.net API call caching system, it's not being used\nsince Deno Deploy currently does not provide file system writing access. If\nyou're deploying to Heroku or some other, you should be able to enable caching\nby providing a `USE_CACHE=1` in [environment variables](#environment-variables).\n\nAfter deploying you will get a link to your application, in the format\n`https://\u003cappname\u003e.deno.dev/`.\n\nOpen browser and go to the link down below.\n\n- Replace the `\u003cBOT_TOKEN\u003e` with your `BOT_TOKEN`.\n- Replace `\u003cAPP_URL\u003e` with the link to your application.\n\n`https://api.telegram.org/bot\u003cBOT_TOKEN\u003e/setWebhook?url=\u003cAPP_URL\u003e`\n\nThis will set the bot's webhook to the deployed application, so it will be able\nto handle updates.\n\n### Environment Variables\n\n| Variable    | Required? | Description                                                                    |\n| ----------- | --------- | ------------------------------------------------------------------------------ |\n| `DEBUG`     | No.       | If not set, the bot would run in the webhook mode. Set to enable long polling. |\n| `BOT_TOKEN` | **Yes.**  | The API token of the Bot. Chat with https://t.me/BotFather to get one.         |\n| `USE_CACHE` | No.       | Set the value to 1 if you want caching to work.                                |\n\n## License\n\nThis application is licensed under the MIT License. See the LICENSE file for\nmore information on copying and distributing this piece of software.\n\n## Contributing\n\nContributions are very welcomed here! Want to suggest a feature or report an\nissue? Feel free to open issues and pull requests if you're working on it.\n\n---\n\n_In loving memory of my friend Shamil._\n\n**Made with just \u003c3**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdcdunkan%2Fbible-bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdcdunkan%2Fbible-bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdcdunkan%2Fbible-bot/lists"}