https://github.com/snapchat/snap-kit-firebase-extensions
https://github.com/snapchat/snap-kit-firebase-extensions
Last synced: 11 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/snapchat/snap-kit-firebase-extensions
- Owner: Snapchat
- License: apache-2.0
- Created: 2021-09-13T18:30:09.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2023-03-19T22:11:07.000Z (over 3 years ago)
- Last Synced: 2025-03-26T18:21:21.346Z (over 1 year ago)
- Language: TypeScript
- Size: 380 KB
- Stars: 7
- Watchers: 4
- Forks: 6
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Snap Kit Firebase Extensions
A [Firebase Extension](https://firebase.google.com/products/extensions) is a set of [Cloud Functions](https://firebase.google.com/docs/functions) and a configuration file that performs a specific task or set of of tasks in response to HTTP requests or other triggering events. A Firebase Extension can easily be installed in a Firebase projects to perform the tasks the extension is built to do.
Snap Kit Firebase Extensions are a group of extensions that help developers integrate with various features in Snapchat.
Following are the list of extensions:
- [Login Kit Firebase Extension](login-kit)
Learn more about building Firebase Extensions [here](https://firebase.google.com/docs/extensions/alpha/overview-build-extensions).
## Setup
Run:
```
make dev/setup
```
### Setting up a new extension
1. Create a new directory for the new extension
```
mkdir creative-kit
```
2. Bootstrap the extension
```
cd creative-kit
firebase init
```
### Building an extension
Run:
```
# e.g. make dev/build/login-kit
make dev/build/
```
### Validating an extension
Run:
```
# e.g. make dev/validate/login-kit
make dev/validate/
```
### Installing and updating an extension in a Firebase project
An extension needs to be installed on a Firebase project for it to be tested end to end in a Google Cloud environment. Running the following command will install the specified extension on `snap-connect-staging` Firebase project. The installed extension points to production Snap services, including but not limited to Auth Service.
To install a new extension instance, run:
```
# e.g. make dev/install/login-kit
make dev/install/
```
To update an existing extension instance, run:
```
# e.g. make dev/update/login-kit instance-id=snapchat-login
make dev/install/ instance-id=
```
### IDE
[Visual Studio Code](https://code.visualstudio.com/) is recommended.
Follow installation instructions [here](https://code.visualstudio.com/Download).