Skip to content
This repository was archived by the owner on Apr 4, 2025. It is now read-only.

Commit 13b78a1

Browse files
committed
update readme
1 parent b783e50 commit 13b78a1

2 files changed

Lines changed: 23 additions & 19 deletions

File tree

‎.circleci/config.yml‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,9 @@ jobs:
3737

3838
- restore_cache:
3939
key: *cache_key
40+
4041
- run: bazel info release
41-
- run: bazel run @yarn//:yarn
42+
- run: bazel run --config=ci @yarn//:yarn
4243
- run: bazel build --config=ci ...
4344

4445
- save_cache:

‎README.md‎

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -4,41 +4,44 @@
44

55
**This is experimental! There may be breaking changes.**
66

7-
This is part of the ABC project. See http://g.co/ng/abc for an overview.
7+
This is part of the ABC project. The overall goal is to make it possible to
8+
develop Angular applications the same way we do at Google.
9+
See http://g.co/ng/abc for an overview.
810

9-
See the documentation in the wiki of this repository to install the
10-
necessary dependencies and understand how this works.
11+
You can read the documentation in the wiki of this repository to understand how
12+
this works.
1113

1214
Follow https://github.com/angular/angular/issues/19058 for updates.
1315

1416
## Try it
1517

18+
First, we install packages as usual. However, to get the same version of node
19+
and yarn as co-workers and our continuous integration, let's have Bazel run the
20+
package manager using a pinned version it manages.
21+
1622
```bash
17-
# Install packages, uses hermetic version of node and yarn
1823
$ bazel run @yarn//:yarn
19-
# Start up the devserver in watch mode
20-
$ ./node_modules/.bin/ibazel run src:devserver
21-
# Open the URL printed on your terminal.
22-
# Make changes to sources, observe the development round-trip time
2324
```
2425

25-
Look at the dependency graph:
26+
Next we'll run the development server. The `ibazel` command is a "watch mode"
27+
for Bazel, which means it will watch any files that are inputs to the devserver,
28+
and when they change it will ask Bazel to re-build them. The devserver stays
29+
running, and when the re-build is finished, it will trigger the Livereload in
30+
the browser.
2631

2732
```bash
28-
$ bazel query --output=graph ... | dot -Tpng > graph.png
33+
$ ./node_modules/.bin/ibazel run src:devserver
2934
```
3035

31-
![bazel query](graph.png)
36+
This command prints a URL on the terminal. Open that page to see the demo app
37+
running. Now you can edit one of the source files (`src/lib/file.ts` is an easy
38+
one to understand and see the effect). As soon as you save a change, the app
39+
should refresh in the browser with the new content. Our intent is that this time
40+
is less than two seconds, even for a large application.
3241

33-
34-
## Still missing
42+
## Coming soon
3543

3644
Karma testing rules are in-progress, should be available Q4 2017
3745

3846
Production bundling with https://github.com/bazelbuild/rules_closure/ is
3947
underway, should be available Q4 2017
40-
41-
## Notes
42-
43-
- we use Bazel to run Yarn simply to be sure we get the same versions of Node and Yarn as CI and co-workers (hermeticity FTW). You could use NPM instead
44-
- a `postinstall` task in the `package.json` prepares the `node_modules` directory by running the Angular compiler on third_party libraries (such as Angular itself) since these do not ship with generated code (eg. `ngfactory`s)

0 commit comments

Comments
 (0)