{"id":23094852,"url":"https://github.com/nunonamorado/sinatra-slack","last_synced_at":"2025-08-16T10:33:03.296Z","repository":{"id":34257243,"uuid":"168972559","full_name":"nunonamorado/sinatra-slack","owner":"nunonamorado","description":"Sintra extension with DSL for building Slack Apps","archived":false,"fork":false,"pushed_at":"2023-03-16T11:19:16.000Z","size":81,"stargazers_count":7,"open_issues_count":3,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-15T18:08:50.166Z","etag":null,"topics":["ruby","ruby-gem","sinatra","sinatra-applications","slack","slack-app","slack-commands"],"latest_commit_sha":null,"homepage":null,"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/nunonamorado.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-02-03T17:32:06.000Z","updated_at":"2022-12-04T17:02:07.000Z","dependencies_parsed_at":"2023-02-10T19:31:31.722Z","dependency_job_id":null,"html_url":"https://github.com/nunonamorado/sinatra-slack","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/nunonamorado%2Fsinatra-slack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nunonamorado%2Fsinatra-slack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nunonamorado%2Fsinatra-slack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nunonamorado%2Fsinatra-slack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nunonamorado","download_url":"https://codeload.github.com/nunonamorado/sinatra-slack/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229883035,"owners_count":18138928,"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","ruby-gem","sinatra","sinatra-applications","slack","slack-app","slack-commands"],"created_at":"2024-12-16T22:18:23.640Z","updated_at":"2024-12-16T22:18:25.100Z","avatar_url":"https://github.com/nunonamorado.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Sinatra::Slack\n\n[![Gem Version](https://badge.fury.io/rb/sinatra-slack.svg)](https://badge.fury.io/rb/sinatra-slack)\n[![Maintainability](https://api.codeclimate.com/v1/badges/37325817408caa0872e6/maintainability)](https://codeclimate.com/github/nunonamorado/sinatra-slack/maintainability)\n[![Test Coverage](https://api.codeclimate.com/v1/badges/37325817408caa0872e6/test_coverage)](https://codeclimate.com/github/nunonamorado/sinatra-slack/test_coverage)\n\n\n\n\u003e Note: WIP\n\nCreating your first Slack Slash Command application has never been to easy. Combining `sinatra` and `sinatra-slack` DSL, you can quickly create a app that processes Slash Commands with ease.\n\n## Installation\n\nAdd this line to your application's Gemfile:\n\n```ruby\ngem 'sinatra-slack'\n```\n\nAnd then execute:\n\n    $ bundle\n\nOr install it yourself as:\n\n    $ gem install sinatra-slack\n\n## Dependencies\n\nThis gem currently requires you to use [Thin](https://github.com/macournoyer/thin).\n\n## Example\n\nGo to folder example for more information. Learn how to create a Slack App in https://api.slack.com\n\n## Usage\n\n``` ruby\nrequire \"sinatra/base\"\nrequire \"sinatra/slack\"\n\nclass App \u003c Sinatra::Base\n  register Sinatra::Slack\n\n  configure :production, :development do\n    enable :logging\n\n    before { logger.info \"Received: #{params}\" }\n  end\n\n  set :slack_secret, ENV['SLACK_SIGNING_SECRET']\n  commands_endpoint \"/slack/commands\"\n  actions_endpoint \"/slack/actions\"\n\n  command \"/command *sub_command :spot_name\" do |sub_command, spot_name|\n    \"Executed *command* command \\n[subcommand]: #{sub_command} \\n[args]:  #{spot_name}\"\n  end\nend\n```\n\n## TODO\n\n- Adds specs;\n- Update message helper to use the new [Block Kit](https://api.slack.com/reference/messaging/block-elements);\n- Add more [Interactive Component Elements](https://api.slack.com/reference/messaging/interactive-components). Currently there is only support for *buttons* and *menu*.\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at https://github.com/nunonamorado/sinatra-slack. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.\n\n## License\n\nThe gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnunonamorado%2Fsinatra-slack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnunonamorado%2Fsinatra-slack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnunonamorado%2Fsinatra-slack/lists"}