{"id":23053412,"url":"https://github.com/tpeczek/demo.aspnetcore.pushnotifications","last_synced_at":"2025-10-04T02:17:32.791Z","repository":{"id":50599291,"uuid":"115654628","full_name":"tpeczek/Demo.AspNetCore.PushNotifications","owner":"tpeczek","description":"Sample project for demonstrating Push Notifications based on Push API and Web Push Protocol in ASP.NET Core","archived":false,"fork":false,"pushed_at":"2025-01-20T14:43:46.000Z","size":95,"stargazers_count":157,"open_issues_count":1,"forks_count":72,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-03-28T10:07:09.310Z","etag":null,"topics":["asp-net-core","push-api","push-notifications","web-push","web-push-notifications"],"latest_commit_sha":null,"homepage":null,"language":"C#","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/tpeczek.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.md","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},"funding":{"github":"tpeczek"}},"created_at":"2017-12-28T19:48:05.000Z","updated_at":"2025-01-20T14:43:48.000Z","dependencies_parsed_at":"2023-11-11T19:27:44.250Z","dependency_job_id":"d6cf2f2f-6eaf-497a-b18f-046fa099cf7b","html_url":"https://github.com/tpeczek/Demo.AspNetCore.PushNotifications","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tpeczek%2FDemo.AspNetCore.PushNotifications","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tpeczek%2FDemo.AspNetCore.PushNotifications/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tpeczek%2FDemo.AspNetCore.PushNotifications/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tpeczek%2FDemo.AspNetCore.PushNotifications/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tpeczek","download_url":"https://codeload.github.com/tpeczek/Demo.AspNetCore.PushNotifications/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247166168,"owners_count":20894654,"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":["asp-net-core","push-api","push-notifications","web-push","web-push-notifications"],"created_at":"2024-12-16T00:18:09.178Z","updated_at":"2025-10-04T02:17:32.774Z","avatar_url":"https://github.com/tpeczek.png","language":"C#","funding_links":["https://github.com/sponsors/tpeczek"],"categories":[],"sub_categories":[],"readme":"# Demo.AspNetCore.PushNotifications\n\nSample project for demonstrating Push Notifications based on Push API and Web Push Protocol in ASP.NET Core:\n\n- [Push API](https://www.tpeczek.com/2017/12/push-notifications-and-aspnet-core-part.html)\n- [Requesting Delivery](https://www.tpeczek.com/2018/01/push-notifications-and-aspnet-core-part.html) ([Lib.Net.Http.WebPush](https://github.com/tpeczek/Lib.Net.Http.WebPush))\n- VAPID tokens caching\n- [Replacing Messages \u0026 Urgency](https://www.tpeczek.com/2018/01/push-notifications-and-aspnet-core-part_18.html)\n- [Special Cases](https://www.tpeczek.com/2019/02/push-notifications-and-aspnet-core-part.html)\n\n## Running the Project\n\nIn order to run the project, some configuration is required. Inside *appsettings.json* there are placeholders to provide public and private VAPID keys:\n\n```json\n{\n  \"ConnectionStrings\": {\n    \"PushSubscriptionSqliteDatabase\": \"Filename=./../pushsubscription.db\"\n  },\n  \"PushServiceClient\": {\n    \"Subject\": \"https://localhost:65506/\",\n    \"PublicKey\": \"\u003cApplication Server Public Key\u003e\",\n    \"PrivateKey\": \"\u003cApplication Server Private Key\u003e\"\n  }\n}\n```\n\nThose keys can be acquired with help of online generators (https://vapidkeys.com/, https://www.attheminute.com/vapid-key-generator).\n\n## Consulting and Professional Services\n\nDo you need help with any of my libraries, or with building features on top of what they provide? What about ASP.NET Core architecture, Azure architecture, or DevOps? I offer consulting and development services.\n\n[![Book an Appointment](https://img.shields.io/badge/%20-Book%20an%20Appointment-%23006BFF?logo=calendly\u0026logoColor=white\u0026style=for-the-badge)](https://calendly.com/tpeczek/30min)\n[![Send an Email](https://img.shields.io/badge/%20-Send%20an%20email-%23EA4335?logo=gmail\u0026logoColor=white\u0026style=for-the-badge)](mailto:tpeczek@gmail.com)\n\n## Donating\n\nMy blog and open source projects are result of my passion for software development, but they require a fair amount of my personal time. If you got value from any of the content I create, then I would appreciate your support by [sponsoring me](https://github.com/sponsors/tpeczek) (either monthly or one-time).\n\n## Copyright and License\n\nCopyright © 2017 - 2025 Tomasz Pęczek\n\nLicensed under the [MIT License](https://github.com/tpeczek/Demo.AspNetCore.PushNotifications/blob/master/LICENSE.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftpeczek%2Fdemo.aspnetcore.pushnotifications","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftpeczek%2Fdemo.aspnetcore.pushnotifications","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftpeczek%2Fdemo.aspnetcore.pushnotifications/lists"}