{"id":18777034,"url":"https://github.com/ticesoftware/vapor-gorush","last_synced_at":"2025-12-16T16:30:20.492Z","repository":{"id":63921148,"uuid":"165890164","full_name":"TICESoftware/vapor-gorush","owner":"TICESoftware","description":"Vapor service to easily integrate push notifications via Gorush","archived":false,"fork":false,"pushed_at":"2024-02-09T00:32:01.000Z","size":17,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-01-29T09:47:44.972Z","etag":null,"topics":["apns","gorush-server","ios-notifications","swift","vapor","vapor-3","vapor-service"],"latest_commit_sha":null,"homepage":"","language":"Swift","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/TICESoftware.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":"2019-01-15T17:01:40.000Z","updated_at":"2022-04-28T12:48:21.000Z","dependencies_parsed_at":"2024-11-07T20:08:29.084Z","dependency_job_id":"e05739c6-d034-45d5-986c-b7daafe46266","html_url":"https://github.com/TICESoftware/vapor-gorush","commit_stats":{"total_commits":12,"total_committers":2,"mean_commits":6.0,"dds":0.25,"last_synced_commit":"e37cdd5aaf9ad319e8ab09dbc266c3b8806d8620"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TICESoftware%2Fvapor-gorush","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TICESoftware%2Fvapor-gorush/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TICESoftware%2Fvapor-gorush/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TICESoftware%2Fvapor-gorush/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TICESoftware","download_url":"https://codeload.github.com/TICESoftware/vapor-gorush/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239687283,"owners_count":19680698,"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":["apns","gorush-server","ios-notifications","swift","vapor","vapor-3","vapor-service"],"created_at":"2024-11-07T20:08:23.274Z","updated_at":"2025-12-16T16:30:20.446Z","avatar_url":"https://github.com/TICESoftware.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Gorush Service for Vapor\n\nThis service allows to easily integrate [Gorush](https://github.com/appleboy/gorush) into [Vapor](https://vapor.codes) to send push notifications.\n\n## Installation\n### Add the package to the `Package.swift`\n```swift\n.package(url: \"https://github.com/TICESoftware/vapor-gorush.git\", from: \"1.0.0\")\n// ...\n.target(name: \"App\", dependencies: [\"Vapor\", \"Gorush\"])\n```\nFrom version 1.0.0, this uses Vapor 4. If you want to use Gorush in Vapor 3, you can use version 0.9.0.\n\n### Register Gorush in `configure.swift`\n```swift\nlet hostname = Environment.get(\"GORUSH_HOSTNAME\")\napp.gorush.use { req in\n    Gorush(client: req.client, hostname: hostname)\n}\n```\nPer default, HTTPS will be used. To use HTTP instead, just add `httpScheme: .http` into that initialization.\n\n## Usage\n```swift\nimport Gorush\n// ...\nlet notification = GorushNotification(tokens: [\"deviceToken\"], platform: .ios, message: \"Push message\", title: \"Push title\")\n\nreq.gorush.dispatch(notification, on: req.eventLoop).map { (response: GorushResponse) in\n    if !response.logs.isEmpty {\n        // This means an error occurred, if Gorush was configured to return errors\n    }\n}\n// ...\n```\n\n## License\nThis vapor-gorush package is released under an MIT license. See [License](LICENSE) for more information.\n\n## Todo\n\n- [ ] Parse Gorush response and answer with succeeded or failed future\n- [ ] Write further documentation\n- [ ] Complete fields for Gorush notification\n- [ ] Write tests\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fticesoftware%2Fvapor-gorush","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fticesoftware%2Fvapor-gorush","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fticesoftware%2Fvapor-gorush/lists"}