GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - feather-framework/feather-push-fcm: Firebase Cloud Messaging (FCM) client for Feather Push with topic and device-token delivery.

BranchesTags
Open more actions menu

Latest commit

 

History

7 Commits
7 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
Sources
Sources
 
 
Tests
Tests
 
 
docker/tests
docker/tests
 
 
.gitignore
.gitignore
 
 
.swift-format
.swift-format
 
 
.swiftformatignore
.swiftformatignore
 
 
.swiftheaderignore
.swiftheaderignore
 
 
LICENSE
LICENSE
 
 
Makefile
Makefile
 
 
Package.resolved
Package.resolved
 
 
Package.swift
Package.swift
 
 
README.md
README.md
 
 

Repository files navigation

Feather Push FCM

Firebase Cloud Messaging support for Feather Push using topic and device-token delivery.

Release: 1.0.0-rc.1

Features

  • PushClient implementation backed by FCM HTTP v1
  • Topic and device-token delivery
  • Firebase service-account authentication
  • Deep-link and provider metadata support
  • Swift 6 concurrency support

Requirements

Swift 6.3+

  • Swift 6.3+
  • macOS 15+, iOS 18+, tvOS 18+, watchOS 11+, or visionOS 2+
  • A Firebase service account with FCM permissions

Installation

.package(url: "https://github.com/feather-framework/feather-push-fcm", exact: "1.0.0-rc.1"),

Add FeatherPushFCM to the target dependencies:

.product(name: "FeatherPushFCM", package: "feather-push-fcm"),

Usage

DocC API documentation

API documentation is available at the following link.

let client = PushClientFCM(
    httpClient: httpClient,
    credentials: credentials
)

let notification = PushNotification(
    title: "New message",
    body: "You have a new message.",
    deepLink: "my-app://messages/1"
)

try await client.send(notification: notification, to: .topic("messages"))

try await client.send(
    notification: notification,
    to: .deviceToken("device-registration-token")
)

The package uses Logger.current from swift-log for FCM request logging. Use withLogger to scope the logger for an operation; calls to Logger.current within that scope use the scoped logger.

Development

  • Build: swift build
  • Test: make test
  • Format: make format
  • Check: make check

Contributing

Pull requests are welcome. Please keep changes focused and include tests for new logic.

About

Firebase Cloud Messaging (FCM) client for Feather Push with topic and device-token delivery.

Topics

fcmfcm-push-notificationpushpush-notificationsserver-side-swiftswiftswift6

Resources

Readme
MIT license
Activity
Custom properties

Stars

0 stars

Watchers

2 watching

Forks

0 forks
Report repository

Releases

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.