Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
30ebca1
feat(website): add new Angular documentation website
tomalaforge Aug 15, 2026
189fa76
fix(website): address CodeRabbit review feedback on PR #1533
tomalaforge Aug 15, 2026
0334da9
feat(website): gate Google Analytics and AdSense behind a consent banner
tomalaforge Aug 15, 2026
d1ef34c
fix(website): make the consent banner stand out
tomalaforge Aug 15, 2026
e1b6af9
feat(website): add light/dark mode with a header toggle
tomalaforge Aug 15, 2026
5ff16d3
feat(website): add in-browser Monaco editor for challenge starter code
tomalaforge Aug 15, 2026
1efb219
feat(website): run challenges in a WebContainer and submit answers as…
tomalaforge Aug 15, 2026
c3538ea
revert(website): remove in-browser code editor and WebContainer runner
tomalaforge Aug 15, 2026
9776a2a
feat: one-click challenge onboarding — CLI, IDE deep links and Codesp…
tomalaforge Aug 15, 2026
6b98248
fix(cli): normalize bin path so npm publish keeps the executable
tomalaforge Aug 15, 2026
4384255
feat(website): manual-setup guides in try-challenge dialog; safer CLI…
tomalaforge Aug 15, 2026
92a325c
chore(cli): bump to 0.1.1 for the branch-switch commit guards
tomalaforge Aug 15, 2026
0a61b5c
style(website): larger, airier try-challenge dialog
tomalaforge Aug 15, 2026
2f64c57
docs(website): clarify the npx command runs in a terminal
tomalaforge Aug 15, 2026
ad1a139
fix(website): keep docs, landing and solutions readable on narrow scr…
tomalaforge Aug 15, 2026
bde4173
feat(cli): ask where to clone the fork
tomalaforge Aug 15, 2026
551583b
fix(website): address review comments on the docs rework
tomalaforge Aug 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"name": "Angular Challenges",
"image": "mcr.microsoft.com/devcontainers/typescript-node:22",
"postCreateCommand": "corepack enable pnpm && pnpm install",
"forwardPorts": [4200],
"customizations": {
"vscode": {
"extensions": ["angular.ng-template", "nrwl.angular-console"]
}
}
}
42 changes: 42 additions & 0 deletions cli/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# angular-challenges CLI

Try a challenge from [Angular Challenges](https://angular-challenges.vercel.app) with one command:

```bash
npx angular-challenges start 19
```

This will:

1. find your GitHub account (via the `gh` CLI if signed in, otherwise it asks),
2. fork `tomalaforge/angular-challenges` to your account (or reuse your fork),
3. ask where to clone your fork — default `./angular-challenges` (or reuse an existing clone),
4. create an `answer-19` branch from the latest upstream `main`,
5. run `pnpm install`,
6. open the project in your editor (VS Code, Cursor, Windsurf or JetBrains), and
7. serve the challenge app.

When your solution is ready:

```bash
npx angular-challenges submit
```

pushes your branch and opens a pre-filled pull request page (`Answer:19`).

## Options

- `--dir <path>` — clone location. Skips the question, so it also works in scripts:
`npx angular-challenges start 19 --dir ~/code`. If the folder already has files
in it, the clone goes into `<path>/angular-challenges`.

## Requirements

- Node.js ≥ 20 and git. `pnpm` is enabled automatically through corepack.
- A GitHub account. The [GitHub CLI](https://cli.github.com) is optional but makes forking seamless.

## Publishing (maintainers)

```bash
cd cli && npm publish
```
Loading
Loading