• This repository has been archived on 25/May/2021
  • Stars
    star
    2,008
  • Rank 23,060 (Top 0.5 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created about 9 years ago
  • Updated about 3 years ago

Reviews

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

Repository Details

Angular Debugging and Visualization Tools

Angular DevTools

With the release of Angular DevTools, Augury is not being maintained. Please download Angular DevTools from Chrome Web Store and use rangle/angular-devtools repo to log any issues.

Read More about the release:

Augury

Circle CI Slack Status

Check out the Augury Labs project for new experimental Angular developer tools.

Table of content

  1. Introduction
  2. Supported version
  3. Working on Augury
  4. Building and installing locally
  5. Running tests
  6. Reporting issues
  7. Contributing
  8. Known issues

Introduction

Augury is a Chrome & Firefox Developer Tools extension for debugging Angular 2+ applications.

You can install the extension from:

You may also install our Canary Build for Chrome to try out new features and bug fixes, and help us with user acceptance testing.

Inspecting Code

Augury only works with Angular 2+ applications. A hard requirement is that the Angular application is running in development mode, this is due to a security restriction. If you plan to read the original source code, it is a good idea to generate source maps. Otherwise you will be forced to work with the compiled JavaScript code.

Supported version

Augury works with application built starting with Angular 2+. Augury currently does not have support for Angular Ivy as of Augury v1.


Working on Augury

Development environment

To develop the Augury extension, the following environment is used:

  • Node
  • NPM
  • TypeScript

Building and installing locally

To install Augury locally, perform the following steps:

git clone git://github.com/rangle/augury
cd augury
npm install
npm run build:dev

Try out the extension with one of the example app from the Guide.

Chrome

  1. Navigate to chrome://extensions and enable Developer mode.
  2. Choose "Load unpacked extension".
  3. In the dialog, open the directory you just cloned.

Firefox

  1. Navigate to about:debugging#addons to load add-on.
  2. Click Load Temporary Add-on
  3. In the dialog, open the directory you just cloned, and select the manifest.json file.

Running tests

Automated testing

To execute all unit tests, run npm test. It bundles up all files that match *.test.ts into build/test.js, then runs it through tape-run in a headless Electron browser.

Manual Testing

If you currently have the Augury extension installed from the Chrome Web Store or Firefox Add-ons, you can manually test your change by switching between your local dev production and production version of Augury in the extension window of your browser. Only one version of the tool should be active at a time.

Available NPM scripts

To see all available script type npm run in the terminal. The following command are the ones you will mostly be working with.

Command Description
start Clean build and run webpack in watch mode
webpack Runs webpack in watch mode
build Builds the extension
clean Clean the build directory,
test Bundle all *.test.ts and run it through a headless browser
lint Run tslint on all source code
pack Packages the extension for browser specific builds

Reporting issues

Please search to make sure your issue is not already been reported.

You should report an issue directly from Augury, by clicking on the Augury icon next to the address bar in the browser. It will open up a popup menu with a link to Issue reporting.

Image Issue reporting

Contributing

General guidelines

If you'd like to help out, please read our Contributing Guidelines.

Augury Architecture

You might want to first checkout the Architecture of this extension.

Join on Slack

If you want to contribute or need help getting started, join us on Slack.


Known issues

Router graph

The router injection technique described below applies to version before those listed below:

Angular v2.3.0
Angular Router v3.3.0
Augury v1.2.8

To be able to view the router graph, you will need to inject the Router in the application Root component as shown below (it must be named router exactly).

export default class KitchenSink {
  constructor(private router: Router) {
  }
}

Example code

Support for AoT (Ahead-Of-Time) compilation

In order for Angular to expose the debug information for AoT applications, you will have to explicitly set the debug flag to true in your project's tsconfig.json as such:

"angularCompilerOptions": {
  /* ... */
  "debug": true
}

Note: This debug flag and development mode in Angular runtime are two completely different settings.

To learn more about AoT compilation, visit this section of Angular documentation.

Support for enableDebugTools()

Prior to Angular 2.2.0, enableDebugTools() would clobber ng.probe, which breaks Augury. Prior to that version, this workaround will circumvent the issue.

No state for some components

The date polyfill core-js/es6/date can throw an exception when stringifying a component. To workaround this issue, exclude this polyfill in your development environment.

License

MIT

More Repositories

1

redux-beacon

Analytics integration for Redux and ngrx/store
TypeScript
668
star
2

angular-2-aot-sandbox

Sandbox for testing Angular 2's AoT specifically what expressions break it
TypeScript
297
star
3

angular-ssr

Angular 4+ server-side rendering solution compatible with @angular/material, jQuery, and other libraries that touch the DOM (as well as providing a rich feature set!)
TypeScript
279
star
4

angular-devtools

Moved to the Angular organization.
TypeScript
255
star
5

ngCourse2

An Angular Course from Rangle.io
TypeScript
184
star
6

radius

A design system accelerator
TypeScript
173
star
7

augury-labs

Experimental Angular developer tools
TypeScript
89
star
8

stripe-eventbridge

Connect Stripe events to AWS EventBridge
JavaScript
72
star
9

angular2-starter

Angular 2 Starter Repo
JavaScript
60
star
10

radius-tracker

Measure adoption of your design system
TypeScript
56
star
11

rangle-starter

JavaScript
48
star
12

mibank-micro-frontends

Demonstration of Micro Frontend Architecture.
JavaScript
43
star
13

jwt-role-based-authentication-examples

Implement the same backend using graphql, nestjs and deno.
TypeScript
34
star
14

schematics-angular

Angular Schematics for adding features to an existing angular project to improve productivity and organization-wide consistency
TypeScript
34
star
15

hackstack

A library for building AngularJS apps with broken APIs that are delivered late.
JavaScript
32
star
16

angular-training-slides

Slides for the Angular 2 training
HTML
29
star
17

angular-ngrx-example

Angular @ngrx example illustrating best practices
TypeScript
28
star
18

federated-modules-typescript

Use Webpack5 Module Federation with TS/React - Type-safe MonoRepo setup
JavaScript
18
star
19

pgdays-codepush-demo

JavaScript
14
star
20

angular-training-examples

Blog application for Angular 2 training
TypeScript
13
star
21

code-push-demo

An example of how to use CodePush with an Ionic/Cordova app.
JavaScript
11
star
22

react-native-workshop

JavaScript
10
star
23

radius-monorepo-react

Radius Monorepo Configuration for React
TypeScript
9
star
24

Stripe-shop-backend

A starter kit for Stripe Payments running on AWS lambda's with DynamoDB. Implements a basic Catalog and payment. Support Terminal and Stripe Elements.
TypeScript
8
star
25

augury-examples

A repo containing the augury example apps.
TypeScript
7
star
26

react-native-example

React-native and redux example package
JavaScript
7
star
27

serve-webpack-client

Helper module for serving webpack-related client code from a nodejs server.
JavaScript
6
star
28

rangle-investing

RangleBank Investing App
TypeScript
5
star
29

radius-angular

TypeScript
4
star
30

express-jwt-jwks

Simple JWT auth using JWKS key sets for Express. Wraps express-jwt and jwks-rsa. AWS Cognito compatible.
JavaScript
4
star
31

custom-angular-schematic-demo

Custom schematics for libraries
TypeScript
4
star
32

headless-workshop

TypeScript
4
star
33

radius-workspace

Main workspace for the new version of Radius
TypeScript
4
star
34

figma-plugin-missing-library-usage-finder

Figma Plugin to find instances or styles by name, e.g. to find missing library usage
TypeScript
4
star
35

vue-3d

3D visualization demo for Hack Western 5.
Vue
3
star
36

bridge-transit-app-cohort-2

JavaScript
3
star
37

react-native-netflix-clone

Basic Netflix clone app built with React Native
TypeScript
3
star
38

augury-site

Augury's Documentation Site
JavaScript
3
star
39

invision-dsm-utlities

Utility scripts to help integrate InVision Design System Manager (DSM) into your front-end codebase.
TypeScript
3
star
40

catch-webhooks

A webhook catcher with a web UI. See a transcript log of webhook events that reach your endpoint in a nice annotatable web interface.
JavaScript
3
star
41

rangle-academy-unit-testing

Workshop for Unit Testing
JavaScript
3
star
42

angular-18-demos

TypeScript
3
star
43

stripe-ts-react-redux-saga

Demo of Stripe Elements & Terminal in React/Redux/Sagas using Typescript
TypeScript
3
star
44

react-training-oct-2

JavaScript
2
star
45

angular-training

Integrated Angular training materials
Shell
2
star
46

angular-testing-workshop

TypeScript
2
star
47

react-native-workshop-1

Objective-C
2
star
48

react-training-sep-25

JavaScript
2
star
49

gitub-action-template-example

Example of setting up Github action workflow templates within Organization
2
star
50

a11y-violations-crawler

A performant webpage-crawler that will run each page through axe-core to display and/or store violations related to it for reporting.
CSS
2
star
51

rangle-type-scale

JavaScript
2
star
52

angular-performance-meetup

Sample application to show how to improve performance in an Angular app
CSS
2
star
53

bridge-photo-map-app

JavaScript
2
star
54

angular-training-app

Sample application for learning Angular 2
JavaScript
2
star
55

ng-apollo-story

TypeScript
2
star
56

angular-headless-cms

TypeScript
2
star
57

test-automation

Any code related to testing such as automation frameworks or utilities for manual testing.
HTML
1
star
58

koast-db-utils

JavaScript
1
star
59

koast-admin-app

client app to admin a koast server
JavaScript
1
star
60

radius-token-tango

Suite of tools to connect Design Tokens to Repositories, facilitating Figma workflows
TypeScript
1
star
61

a11y-test-automation

TypeScript
1
star
62

angular-schematic-patterns

TypeScript
1
star
63

stripe-payment-demo

Vue
1
star
64

ng-blog-live-code

Live Coded Blog For Teaching Angular
TypeScript
1
star
65

react-native-training

Rangle.io React Native Training
JavaScript
1
star
66

playingHere

JavaScript
1
star
67

graphql-pt1-workshop-slides

Slides and speaker notes for GraphQL Part 1 workshop
CSS
1
star
68

jekyll-starter

A Gulp based Jekyll Starter
JavaScript
1
star
69

contentful-custom-map-editor

Custom Image Map Editor for Contentful
TypeScript
1
star
70

angular-book-examples

TypeScript
1
star
71

apollo-rest-example

Apollo Rest API Server Adaptor Example
TypeScript
1
star
72

serverless-app-poc

A serverless application that provides subscription-based online learning content managed by headless CMS.
JavaScript
1
star
73

bridge-lcbo-app-cohort-2

JavaScript
1
star
74

ai-alt-text-generator

TypeScript
1
star
75

styled-system-workshop

Programming Design Systems with Styled-System Workshop
JavaScript
1
star