{"id":27918226,"url":"https://github.com/simplisticated/reply-bot","last_synced_at":"2025-05-06T18:20:04.132Z","repository":{"id":285662230,"uuid":"957098789","full_name":"simplisticated/reply-bot","owner":"simplisticated","description":"Telegram bot for customer support and feedback management","archived":false,"fork":false,"pushed_at":"2025-04-19T15:58:11.000Z","size":75,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-19T19:17:19.031Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/simplisticated.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null}},"created_at":"2025-03-29T14:56:16.000Z","updated_at":"2025-04-19T15:58:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"e96b199f-682c-4beb-ba52-976f241625cf","html_url":"https://github.com/simplisticated/reply-bot","commit_stats":null,"previous_names":["simplisticated/reply-bot"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simplisticated%2Freply-bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simplisticated%2Freply-bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simplisticated%2Freply-bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simplisticated%2Freply-bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/simplisticated","download_url":"https://codeload.github.com/simplisticated/reply-bot/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252741576,"owners_count":21797050,"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":"2025-05-06T18:20:03.357Z","updated_at":"2025-05-06T18:20:04.110Z","avatar_url":"https://github.com/simplisticated.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# reply-bot\n\nThis bot acts as a bridge between users and administrators. It forwards messages\nfrom users to administrators and allows administrators to reply directly to\nthose messages. When an administrator responds, the bot automatically sends the\nreply back to the original user. Ideal for customer support or feedback\nmanagement in Telegram.\n\n## Key Features\n\n-   Forwards user messages to administrators.\n-   Supports administrator replies, including text and photos.\n-   Automatically sends administrator responses back to the user.\n\n## Implementation\n\nIncludes the following libraries and tools:\n\n-   TypeScript\n-   Telegraf.js\n-   Jest\n-   Prettier\n-   ESLint with Airbnb style\n\n## How to Get Started\n\nTo begin, open your terminal and run the following command to install the\nrequired dependencies:\n\n```\nnpm install\n```\n\nFor starting the server in development mode, use the following command:\n\n```\nnpm run start:dev\n```\n\nTo run the server in production mode, follow these steps:\n\n```\nnpm run build\nnpm run start\n```\n\n## Environment Variables\n\nThis project relies on various environment variables for configuration. You can\nset these variables either in a local `.env` file or through your hosting\nenvironment, depending on your deployment method.\n\nHere are the essential environment variables and their purposes:\n\n-   `TELEGRAM_TOKEN`: Defines the token that is used for Telegram bot.\n-   `ADMINISTRATOR_IDENTIFIERS`: An array of Telegram user identifiers that\n    receive forwarded messages from the bot and can respond to users.\n\nYou should create a `.env` file in the root of your project and define these\nvariables with their respective values.\n\nHere is an example `.env` file:\n\n```\nTELEGRAM_TOKEN=1234567890\nADMINISTRATOR_IDENTIFIERS=1234567890,1234567890,1234567890,1234567890\n```\n\n## Scripts\n\nThe [package.json](./package.json) includes several useful scripts to manage,\nbuild, and run the project efficiently. Below is a description of each script:\n\n### Build and Run\n\n-   `build`\n\nDeletes the existing `dist` folder and compiles TypeScript files based on the\n`tsconfig.json` configuration.\n\n```\nnpm run build\n```\n\n-   `start`\n\nRuns the compiled JavaScript app from the `dist` directory. This should be used\nafter running the `build` command.\n\n```\nnpm run start\n```\n\n-   `start:dev`\n\nRuns the app in development mode using `ts-node` directly with the TypeScript\nsource files. Useful for quick development without building.\n\n```\nnpm run start:dev\n```\n\n---\n\n### Linting and Formatting\n\n-   `lint`\n\nRuns ESLint and Prettier to check for code quality and formatting issues.\n\n-   `lint:fix`\n\nAutomatically fixes linting issues where possible.\n\n```\nnpm run lint:fix\n```\n\n-   `format`\n\nFormats the code using Prettier.\n\n```\nnpm run format\n```\n\n---\n\n### Testing\n\n-   `test`\n\nRuns tests using Jest.\n\n```\nnpm run test\n```\n\n---\n\n### Combined Checks\n\n-   `check`\n\nRuns a series of checks, including building the project, running lint checks,\nand executing tests.\n\n```\nnpm run check\n```\n\n---\n\n## Contributing\n\nYour input is welcome! If you have any interesting ideas, suggestions, or would\nlike to contribute through pull requests, feel free to do so.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimplisticated%2Freply-bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimplisticated%2Freply-bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimplisticated%2Freply-bot/lists"}