{"id":15449021,"url":"https://github.com/miguelargentina/microverse-ruby-capstone-project","last_synced_at":"2025-04-19T21:39:39.474Z","repository":{"id":54258857,"uuid":"342352594","full_name":"MiguelArgentina/microverse-ruby-capstone-project","owner":"MiguelArgentina","description":"A Ruby developed Telegram bot to get the weather forecast based on the GPS location or searching for a location in Open Weather Map","archived":false,"fork":false,"pushed_at":"2021-03-01T03:04:09.000Z","size":3910,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"develop","last_synced_at":"2024-10-18T16:17:36.680Z","etag":null,"topics":["ruby","telegram-bot"],"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/MiguelArgentina.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":"2021-02-25T19:13:34.000Z","updated_at":"2021-06-24T19:42:49.000Z","dependencies_parsed_at":"2022-08-13T10:10:56.180Z","dependency_job_id":null,"html_url":"https://github.com/MiguelArgentina/microverse-ruby-capstone-project","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MiguelArgentina%2Fmicroverse-ruby-capstone-project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MiguelArgentina%2Fmicroverse-ruby-capstone-project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MiguelArgentina%2Fmicroverse-ruby-capstone-project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MiguelArgentina%2Fmicroverse-ruby-capstone-project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MiguelArgentina","download_url":"https://codeload.github.com/MiguelArgentina/microverse-ruby-capstone-project/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249811981,"owners_count":21328902,"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":["ruby","telegram-bot"],"created_at":"2024-10-01T20:41:58.703Z","updated_at":"2025-04-19T21:39:39.452Z","avatar_url":"https://github.com/MiguelArgentina.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"![](https://img.shields.io/badge/Microverse-blueviolet)\n\n# Telegram Bot\n\n\u003cimg width=\"600\" alt=\"Project Screenshot\" src=\"https://github.com/MiguelArgentina/microverse-ruby-capstone-project/blob/feature/feature_1/bot-screenshot.png\"\u003e\n\n\n\u003e This is the capstone project for the Ruby module in Microverse 2.0 program\n\n## Built With\n\n- Ruby\n\n## Features\n\n- Get weather forecast given the user's GPS location\n- Get weather forecast for any given city within OpenWeather's API (\u003e200.000 cities)\n- Search function to retrieve up to 10 cities matching the search criteria. (if more than 20 results are given, user will be asked to narrow the search criteria)\n- Echo function to test if the bot is active\n- Log file to save user, location required and time\n\n## Getting Started\n\n### Prerequisites\n\n* Telegram application installed in your cellphone or in your computer\n* Available internet connection\n* Join [Weather Bot](https://t.me/tucu_clima_bot) channel or\n* create a new bot sending a message to [@BotFather](https://telegram.me/BotFather) and follow further instructions to create the bot and get the token\n* Get an API key from [OpenWeatherMap](https://home.openweathermap.org/) to access their forecasts [Instructions here](https://openweathermap.org/api)\n\u003eNote to TSEs: both Telegram and OW API key will be provided in Code Request\n* Permission for accessing GPS from within the app\n* Follow instructions\n\n### Setup\n\n* For TSEs: please fill in Telegram Token and API key in ```tokens.rb``` class\n* Clone the repository\n* Get into the repository's root folder\n* Run ```bundle install``` to install the needed gems\n* Execute the ```./bin/main.rb``` file to start the bot (the tokens needed will be given in private)\n\n### Usage\n\n* Once the bot has been started, you may test it via the Telegram Bot's Channel.\n\n\u003e Available commands\n\n  * ```/start``` to start the bot\n  * ```/stop``` to stop the bot\n  * ```/echo``` to test if the bot is active\n  * ```/weather``` to let the bot know the user will require a forecast\n  * ```/mylocation``` to let the bot know the user will require a forecast based on GPS current location\n\n  \u003e (All commands are clickable from within the Telegram app)\n\n### Video with a presentation on how the bot works\n\n[Link to the video](https://www.loom.com/share/4e785bb6aa1b46a88ca832df3740d493)\n\n\n## Author\n\n\n### Miguel Gomez\n\n\u003cimg width=\"100\" alt=\"Miguel Gomez Profile Picture\" src=\"https://avatars.githubusercontent.com/u/50305489?s=400\u0026u=2d451ca03611a85431ac4e851ab7a4fc3425bb7d\u0026v=4\"\u003e\n\n\n* GitHub: [@MiguelArgentina](https://github.com/MiguelArgentina)\n* twitter - https://twitter.com/Qete_arg\n\n## 🤝 Contributing\n\nContributions, issues, and feature requests are welcome!\n\nFeel free to check the [issues page](https://github.com/MiguelArgentina/microverse-ruby-capstone-project/issues).\n\n## Show your support\n\nGive a ⭐️ if you like this project!\n\n## 📝 License\n\nThis project is [MIT](https://github.com/MiguelArgentina/microverse-ruby-capstone-project/blob/main/LICENSE) licensed.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmiguelargentina%2Fmicroverse-ruby-capstone-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmiguelargentina%2Fmicroverse-ruby-capstone-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmiguelargentina%2Fmicroverse-ruby-capstone-project/lists"}