• Stars
    star
    315
  • Rank 132,951 (Top 3 %)
  • Language
    TypeScript
  • License
    BSD 3-Clause "New...
  • Created almost 5 years ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Simple tool for browsing Dagger graphs generated via an SPI plugin

Dagger Browser

Dagger Browser is a progressive web app for easily navigating a project's Dagger graph. The graph data is populated from a Dagger SPI plugin, and the browser is built using CRA (create-react-app) with Typescript.

Trying a sample

Check out the demo site built from the open source Plaid app.

The plugin/sample directory contains a fork of a simple example from the Dagger repo.

You can run ./run.sh to generate the dagger components manifest for this example and display in the Dagger Browser.

Using Dagger Browser in your app

To build a Dagger Browser site for your project, you'll need to generate json files for your project's Dagger components.

To get started:

  1. Look up the latest version of the processor plugin in Maven Central:

  1. Add a dependency on com.snap.daggerbrowser:daggerbrowser-processor to any Gradle modules in your project that process Dagger components:
allprojects {
  repositories {
    mavenCentral()
  }
}
dependencies {
  kapt "com.snap.daggerbrowser:daggerbrowser-processor:LATEST_VERSION"
}  
  1. Build your project. The plugin will generate json files for each Dagger component.

  2. Use scripts/mkmanifest.sh to aggregate the component json files into a ComponentsManifest.json.

  3. Open a Dagger Browser instance, and drag-and-drop your ComponentsManifest.json file to load it.

  4. Alternatively, build a Dagger Browser instance from source. Checkout out the dagger-browser project

$: git clone [email protected]:Snapchat/dagger-browser.git
  1. Build Dagger Browser using your generated json files:
cd dagger-browser
./run.sh ../my_project/

More Repositories

1

KeyDB

A Multithreaded Fork of Redis
C++
11,327
star
2

ModJS

A Javascript Module for KeyDB and Redis
C
202
star
3

djinni

A tool for generating cross-language type declarations and interface bindings. Djinni's new home is in the Snapchat org.
C++
170
star
4

creative-kit-sample

Sample Apps For Creative Kit
Swift
139
star
5

recycling-center

Bringing reactive dataflow to RecyclerViews
Java
119
star
6

camera-kit-reference

Documentation and samples of Snap's Camera Kit SDK. For the high-level documentation of Camera Kit, please visit: https://docs.snap.com/snap-kit/camera-kit/home
101
star
7

NextMind

Documentation (incl. tutorials, Unity assets and API reference) for the NextMind SDK
87
star
8

snapml-templates

Jupyter Notebook
73
star
9

login-kit-sample

Sample App For Login Kit
Java
72
star
10

camera-kit-react-native

Camera Kit wrapper for React Native
TypeScript
69
star
11

storykit

This repo contains the tutorial and sample code of using story kit.
JavaScript
55
star
12

lens-studio-templates

Lens Studio Templates
JavaScript
49
star
13

passport-snapchat

Snapchat (OAuth 2.0) authorization strategy for PassportJS
TypeScript
43
star
14

aws-support-tickets-aggregator

AWS support tickets aggregation service
Python
42
star
15

express-4.x-passport-snapchat-example

Express 4.x app using Passport for authorization with Snapchat.
JavaScript
41
star
16

camera-kit-unity-sample

Sample app for Camera Kit in Unity
JavaScript
29
star
17

bitmoji-kit-sample

Sample Apps for Bitmoji Kit
Swift
25
star
18

stuffing

Stuff multiple Applications into a single APK
Kotlin
23
star
19

KeyDB-docs

KeyDB's official documentation repo
JavaScript
17
star
20

snapchat-google-tag-manager

Snap Pixel Google Tag Manager Community Template
Smarty
15
star
21

snap-kit-carthage

Mirror for Carthage artifacts in GCS
Shell
11
star
22

ad-kit-ios

Ad Kit SDK for iOS
Objective-C
11
star
23

snap-kit-spm

Objective-C
9
star
24

snap-for-developers-sample

8
star
25

minis-samples

Sample Snap Minis
TypeScript
8
star
26

launchpad

Java
7
star
27

snap-kit-firebase-extensions

TypeScript
7
star
28

app-ads-kit-ios

Snap App Ads Kit SDK for iOS
Objective-C
5
star
29

business-sdk-python

Python
4
star
30

pixel-server-gateway

JavaScript
4
star
31

business-sdk-go

Go
4
star
32

capi-google-tag-manager-serverside-tag

Google Tag Manager Community Template For Snap Conversion API
Smarty
4
star
33

business-sdk-php

PHP
4
star
34

Lens-Studio-Plugins

Open-Sourced Plugins for Lens Studio 5
4
star
35

business-sdk-java

Java
3
star
36

business-sdk-ruby

Ruby
3
star
37

camera-kit-flutter-sample

Camera Kit sample app using Flutter wrapper
Swift
3
star
38

business-sdk-v3-java

Java
2
star
39

ts-inject

Typesafe dependency injection framework for TypeScript projects, providing easy-to-use, maintainable, and scalable code with strong type safety.
TypeScript
1
star