Angular 2+ development tools for Chrome
TypeScript HTML CSS JavaScript Shell
Latest commit 67ee665 Mar 31, 2017 @stevenkampen stevenkampen committed on GitHub Merge pull request #1059 from stevenkampen/chore/release-1-6-0
Release 1.6.0
Permalink
Failed to load latest commit information.
.github Add Github issue report generation support. (#984) Feb 16, 2017
assets moving images to assets Apr 28, 2016
docs new architecture image (#819) Nov 25, 2016
images Fixed popup icons. (#976) Feb 14, 2017
src Reselect component on property update Mar 31, 2017
.editorconfig Webpack Build Setup Oct 27, 2015
.gitignore Removed extra white space, included feedback icon, dynamically load v… Sep 13, 2016
.mention-bot Remove comments from mentionbot config Jan 24, 2017
CHANGELOG.md Release 1.6.0 Mar 31, 2017
CODE_OF_CONDUCT.md updating code of conduct and contributing files Apr 26, 2016
CONTRIBUTING.md fix typo in contributing.md Oct 6, 2016
LICENSE Documentation Oct 21, 2015
README.md Task 956 cleanup readme (#957) Feb 13, 2017
changelog-template.md Update changelog-template.md Apr 11, 2016
circle.yml Remove CircleCI upload to S3 (#780) Nov 11, 2016
crxmake.sh Simplify and minify the production CRX (#688) Sep 20, 2016
frontend.html Simplify and minify the production CRX (#688) Sep 20, 2016
index.html chore: restructure project directory Feb 23, 2016
manifest.json Release 1.6.0 Mar 31, 2017
package.json Release 1.6.0 Mar 31, 2017
popup.html Fixed popup icons. (#976) Feb 14, 2017
popup.js Added mention of code snippets. (#963) Feb 10, 2017
release-process.md Say to update popup.html with each version (#646) Sep 12, 2016
s3-upload.sh renaming to augury Apr 21, 2016
tsconfig.json Remove typings references and config Feb 9, 2017
tslint.json Remove old tslint rule config Feb 9, 2017
webpack.config.js Split apart the frontend NgModule definition and the App component, t… Dec 31, 2016
webpack.test.bootstrap.ts - clean up unnecessary dependencies from package.json. Nov 24, 2015
webpack.test.config.js Massive refactoring of entire backend and most of the frontend (#546) Aug 25, 2016
webpack.vendor.ts Refactor the rendering of providers so that they match the rest of Au… Dec 30, 2016

README.md

Augury

Circle CI Slack Status Stories in Ready

Table of content

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

Introduction

Augury is a Google Chrome Dev Tools extension for debugging Angular 2 applications.

You can install the extension from Chrome Store.

Inspecting Code

Augury only works with Angular 2.0+ 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.0.


Working on Augury

Development environment

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

  • Node
  • NPM
  • TypeScript

Building and installing locally

git clone git://github.com/rangle/augury
cd augury
npm install
npm run dev-build
  1. Navigate to chrome://extensions and enable Developer mode.
  2. Choose "Load unpacked extension".
  3. In the dialog, open the directory you just cloned.

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

Running tests

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.

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 Descrption
build Build the extension
webpack Run webpack
clean Clean node_modules and typings,
postinstall install typings
start Clean build and run webpack in watch mode
test Bundle all *.test.ts and run it through a headless browser
prepack Run npm build before running npm pack
pack Packages the extension and create chrome build augury.crx

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.

License

MIT