Skip to content

Commit 25fed07

Browse files
authored
v20.0.0
* OIDC updates * Copilot follow up
1 parent d2c92a9 commit 25fed07

9 files changed

Lines changed: 128 additions & 122 deletions

File tree

.github/FUNDING.yml

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,4 @@
1-
github: [CodyTolene]
2-
# buy_me_a_coffee: # Replace with a single Buy Me a Coffee username
3-
# community_bridge: []
4-
# custom: []
5-
# issuehunt: # Replace with a single IssueHunt username
6-
# issuehunt: []
7-
# ko_fi: # Replace with a single Ko-fi username
8-
# lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
9-
# liberapay: # Replace with a single Liberapay username
10-
# open_collective: # Replace with a single Open Collective username
11-
# otechie: []
12-
# patreon: # Replace with a single Patreon username
13-
# polar: # Replace with a single Polar username
14-
# thanks_dev: # Replace with a single thanks.dev username
15-
# tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
16-
# tidelift: []
1+
github: [CodyTolene, ProAngular]
2+
buy_me_a_coffee: CodyTolene
3+
patreon: CodyTolene
4+
custom: ["https://www.paypal.me/CodyTolene"]
7.07 KB
Loading

.github/pull_request_template.md

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
### Description
22

3-
...
3+
A brief overview of your completed or ongoing work.
44

5-
### Changelog
5+
### Development Checklist
66

7-
- [ ]
7+
- [ ] Bump version up (`package.json` **and** `package-lock.json`)
8+
9+
### Preview(s)
10+
11+
- Add screenshots, gifs, videos, etc. here for a quick preview if applicable.

.github/workflows/on-merge-main-deploy-gpr.yml

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -48,24 +48,7 @@ jobs:
4848
VERSION=$(node -p 'JSON.parse(require("fs").readFileSync("package.json","utf8")).version')
4949
echo "version=$VERSION" >> "$GITHUB_OUTPUT"
5050
51-
- name: Check if version already exists on GitHub Packages
52-
id: check
53-
env:
54-
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
55-
run: |
56-
set -e
57-
PKG=$(node -p "require('./package.json').name")
58-
CURRENT=$(npm view "$PKG" version --registry=https://npm.pkg.github.com || echo "0.0.0")
59-
echo "current_registry_version=$CURRENT" >> "$GITHUB_OUTPUT"
60-
if [ "$CURRENT" = "${{ steps.pkg.outputs.version }}" ]; then
61-
echo "should_publish=false" >> "$GITHUB_OUTPUT"
62-
echo "Version $CURRENT already exists on GitHub Packages. Skipping publish."
63-
else
64-
echo "should_publish=true" >> "$GITHUB_OUTPUT"
65-
fi
66-
6751
- name: Publish to GitHub Packages
68-
if: steps.check.outputs.should_publish == 'true'
6952
env:
7053
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
7154
NPM_CONFIG_PROVENANCE: true

.github/workflows/on-merge-main-deploy-npmjs.yml

Lines changed: 5 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ on:
66
- main
77

88
permissions:
9-
contents: read
109
id-token: write
10+
contents: read
1111

1212
jobs:
1313
deploy_npmjs_package:
@@ -27,6 +27,9 @@ jobs:
2727
scope: "@proangular"
2828
cache: "npm"
2929

30+
- name: Update npm to latest
31+
run: npm install -g npm@latest
32+
3033
- name: Install
3134
run: npm ci
3235

@@ -47,25 +50,5 @@ jobs:
4750
VERSION=$(node -p 'JSON.parse(require("fs").readFileSync("package.json","utf8")).version')
4851
echo "version=$VERSION" >> "$GITHUB_OUTPUT"
4952
50-
- name: Check if version already exists on npm
51-
id: check
52-
env:
53-
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
54-
run: |
55-
set -e
56-
PKG=$(node -p "require('./package.json').name")
57-
CURRENT=$(npm view "$PKG" version --registry=https://registry.npmjs.org || echo "0.0.0")
58-
echo "current_registry_version=$CURRENT" >> "$GITHUB_OUTPUT"
59-
if [ "$CURRENT" = "${{ steps.pkg.outputs.version }}" ]; then
60-
echo "should_publish=false" >> "$GITHUB_OUTPUT"
61-
echo "Version $CURRENT already exists on npm. Skipping publish."
62-
else
63-
echo "should_publish=true" >> "$GITHUB_OUTPUT"
64-
fi
65-
6653
- name: Publish to npm
67-
if: steps.check.outputs.should_publish == 'true'
68-
env:
69-
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
70-
NPM_CONFIG_PROVENANCE: true
71-
run: npm publish --access public --registry=https://registry.npmjs.org
54+
run: npm publish
File renamed without changes.

README.md

Lines changed: 109 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -1,90 +1,125 @@
11
<div align="center">
22
<a href="https://www.ProAngular.com" target="_blank">
3-
<img
3+
<img
44
alt="pro-ject Logo"
55
height="200"
66
src="https://raw.githubusercontent.com/ProAngular/pro-ject/refs/heads/main/.github/images/logo.png"
77
width="200"
8-
/>
8+
/>
99
</a>
10-
<h1 align="center"><code>@proangular/pro-ject</code></h1>
11-
<a align="center" href="https://github.com/ProAngular/pro-ject" target="_blank">
12-
View Github Repository
13-
</a>
10+
<h1 align="center">
11+
@proangular/pro-ject
12+
</h1>
13+
<p align="center">
14+
<a href="https://www.ProAngular.com" target="_blank">
15+
ProAngular
16+
</a>&nbsp;&nbsp;|&nbsp;&nbsp;
17+
<a href="https://github.com/ProAngular/pro-ject" target="_blank">
18+
GitHub Repo
19+
</a>&nbsp;&nbsp;|&nbsp;&nbsp;
20+
<a href="https://www.npmjs.com/@proangular/pro-ject" target="_blank">
21+
NPM Package
22+
</a>
23+
</p>
1424
<p align="center">
1525
Generate a Google Angular 20+ project with best-practice defaults in less than a minute!
1626
</p>
1727
<p align="center">
18-
A lightweight Node CLI that guides `ng new` and scaffolds an Angular 20+ workspace with opinionated structure and best-practice defaults.
28+
A lightweight Node CLI that guides `ng new` and scaffolds an Angular 20+
29+
workspace with opinionated structure and best-practice defaults.
1930
</p>
2031
</div>
2132

2233
<!---------------------------------------------------------------------------->
2334
<!---------------------------------------------------------------------------->
2435
<!---------------------------------------------------------------------------->
2536

26-
[![npm](https://badgen.net/badge/icon/npm?icon=npm&label)](https://www.npmjs.com/@proangular/pro-ject)
27-
[![GitHub](https://badgen.net/badge/icon/GitHub?icon=github&label)](https://github.com/ProAngular/pro-ject)
28-
[![TypeScript](https://badgen.net/badge/icon/TypeScript?icon=typescript&label)](https://github.com/ProAngular/pro-ject/search?l=typescript)
29-
[![npm Version](https://badge.fury.io/js/@proangular%2Fngx-scroll-top.svg)](https://www.npmjs.com/@proangular/pro-ject)
30-
[![Node Version](https://badgen.net/npm/node/@proangular/pro-ject)](https://www.npmjs.com/@proangular/pro-ject)
31-
[![Package Downloads](https://badgen.net/npm/dw/@proangular/pro-ject)](https://www.npmjs.com/@proangular/pro-ject)
32-
[![Size](https://img.shields.io/bundlephobia/minzip/@proangular/pro-ject.svg)](https://bundlephobia.com/result?p=ProAngular/pro-ject)
33-
[![Website Status](https://img.shields.io/website?down_color=lightgrey&down_message=Offline&label=Website&up_color=green&up_message=Online&url=https%3A%2F%2Fwww.proangular.com)](https://www.proangular.com)
34-
[![Sponsors](https://img.shields.io/github/sponsors/proangular?label=Sponsors)](https://github.com/sponsors/ProAngular)
35-
[![License](https://img.shields.io/npm/l/express.svg?maxAge=2592000)](/LICENSE)
36-
[![GitHub Package Status](https://github.com/ProAngular/pro-ject/actions/workflows/on-merge-main-deploy-gpr.yml/badge.svg)](https://github.com/ProAngular/pro-ject/actions/workflows/on-merge-main-deploy-gpr.yml)
37-
[![npmjs Package Status](https://github.com/ProAngular/pro-ject/actions/workflows/on-merge-main-deploy-npmjs.yml/badge.svg)](https://github.com/ProAngular/pro-ject/actions/workflows/on-merge-main-deploy-npmjs.yml)
37+
<p align="center">
38+
<a href="https://www.npmjs.com/@proangular/pro-ject" target="_blank">
39+
<img src="https://badge.fury.io/js/@proangular%2Fpro-ject.svg" >
40+
</a>
41+
<a href="https://bundlephobia.com/result?p=ProAngular/pro-ject" target="_blank">
42+
<img src="https://img.shields.io/bundlephobia/minzip/@proangular/pro-ject.svg" >
43+
</a>
44+
<a href="/LICENSE" target="_blank">
45+
<img src="https://img.shields.io/npm/l/express.svg?maxAge=2592000" >
46+
</a>
47+
</p>
48+
49+
<!--
50+
<p align="center">
51+
<a href="https://github.com/ProAngular/pro-ject/actions/workflows/on-merge-main-deploy-gpr.yml" target="_blank">
52+
<img src="https://github.com/ProAngular/pro-ject/actions/workflows/on-merge-main-deploy-gpr.yml/badge.svg" >
53+
</a>
54+
<a href="https://github.com/ProAngular/pro-ject/actions/workflows/on-merge-main-deploy-npmjs.yml" target="_blank">
55+
<img src="https://github.com/ProAngular/pro-ject/actions/workflows/on-merge-main-deploy-npmjs.yml/badge.svg" >
56+
</a>
57+
</p>
58+
-->
59+
60+
<!---------------------------------------------------------------------------->
61+
<!---------------------------------------------------------------------------->
62+
<!---------------------------------------------------------------------------->
63+
64+
<p align="center">
65+
<code>npx -y @proangular/pro-ject@latest</code>
66+
</p>
67+
<p align="center">
68+
<img
69+
src="https://raw.githubusercontent.com/ProAngular/pro-ject/refs/heads/main/.github/images/screenshots/screenshot.png"
70+
/>
71+
</p>
3872

3973
<!---------------------------------------------------------------------------->
4074
<!---------------------------------------------------------------------------->
4175
<!---------------------------------------------------------------------------->
4276

43-
## Index <a name="index"></a>
77+
## 📇 Index <a name="index"></a>
78+
79+
- [📄 Description](#description)
80+
- [🚀 Quick Start](#quick-start)
81+
- [🔨 Development & Contribution](#development--contribution)
82+
- [📋 Prerequisites](#prerequisites)
83+
- [🧪 Update and Test](#update-and-test)
84+
- [📁 Project Layout](#project-layout)
85+
- [⚖️ Licensing](#licensing)
86+
- [🏁 Wrapping Up](#wrapping-up)
4487

45-
- [Description](#description)
46-
- [Quick Start](#quick-start)
47-
- [Development & Contribution](#development--contribution)
48-
- [Update and Test](#update-and-test)
49-
- [Project Layout](#project-layout)
50-
- [Wrapping Up](#wrapping-up)
88+
## 📄 Description <a name="description"></a>
5189

52-
## Description <a name="description"></a>
90+
Kickstart your next Angular project in seconds, not hours.
5391

54-
Generate a Google Angular 20+ project with best-practice defaults in less than a minute!
92+
**@proangular/pro-ject** is a friendly, interactive Node CLI that streamlines
93+
`ng new` and gives your Angular 20+ workspace a modern, best-practices
94+
foundation. With just one command, you'll get guided prompts for naming,
95+
structure, and sensible defaults. No more guessing what's standard or spending
96+
time configuring tools. After setup, opt into extras like runtime type
97+
checking, date handling, UI libraries, code formatting, and more, all ready
98+
with minimal fuss.
5599

56-
**@proangular/pro-ject** is an interactive Node CLI that guides `ng new` and sets up a clean Angular 20+ workspace with opinionated defaults. It validates and sanitizes the project name, ensures Angular CLI is available, scaffolds the repo, confirms a working **serve** target, and then offers post-create add-ons you can toggle on with simple prompts. One command to start, clear prompts, safe naming rules, and a tidy step pipeline you can extend.
100+
**Why you'll love it:**
57101

58-
**What it can set up for you**
102+
- Clean, opinionated project scaffolding
103+
- Minimal, clear prompts to get started fast
104+
- TypeScript-first, Angular 20+ ready
105+
- Optional integration of Material, CDK, Prettier, ESLint, Husky, and more
106+
- Pick add-ons for forms, tables, snippets, and project structure—just toggle
107+
on what you need
108+
- Fully validates your project name and setup
109+
- Ensures a working development server out of the box
110+
- Professional defaults that save you time, but still let you extend and
111+
customize
59112

60-
- `wizard` workflow with clear, minimal prompts
61-
- `TypeScript` first
62-
- `Angular 20+` ready
63-
- `Best Practices` baked in
64-
- `Runtime Type Checking` with `io-ts` (optional)
65-
- `DateTime` with `luxon` + Material Luxon adapter (optional)
66-
- `Angular CDK` (optional)
67-
- `Angular Material` (optional)
68-
- If selected, optionally install:
69-
- `@proangular/pro-form` — drop-in standalone inputs, unified labels/hints/errors, helpers like scroll-to-first-error and focus-on-invalid
70-
- `@proangular/pro-table` — typed columns, selection, copy on click, expandable rows, intent-based sorting, and more
71-
- `@proangular/ngx-scroll-top` — lightweight back-to-top button
72-
- `@proangular/ngx-gist` — Material + Highlight.js styled box for gists and local snippets
73-
- `Angular Animations` wiring (optional)
74-
- `Opinionated src/app structure` with README placeholders for:
75-
`components`, `constants`, `decorators`, `directives`, `enums`, `guards`, `layout`, `models`, `pages`, `pipes`, `providers`, `routing`, `services`, `signals`, `styles`, `types`, `utilities` (optional)
76-
- `Opinionated Code Formatting (Prettier)` (optional)
77-
- `Code Checks (ESLint)` (optional)
78-
- `Husky Git Hooks` for pre-commit linting and formatting (optional)
79-
- Ensures a working `ng serve` target and a writable project directory
113+
Perfect for new apps, rapid prototypes, or just skipping the boring setup
114+
steps—leaving you to focus on real features.
80115

81-
<p align="right">[ <a href="#index">Index</a> ]</p>
116+
<p align="right">[ <a href="#index">🔍 Index</a> ]</p>
82117

83118
<!---------------------------------------------------------------------------->
84119
<!---------------------------------------------------------------------------->
85120
<!---------------------------------------------------------------------------->
86121

87-
## Quick Start <a name="quick-start"></a>
122+
## 🚀 Quick Start <a name="quick-start"></a>
88123

89124
First, install [Node.js][node-js] v20+. Then, run the following command:
90125

@@ -108,15 +143,15 @@ npm run start
108143

109144
Then open your browser to `http://localhost:4200` to see your new Angular application in action!
110145

111-
<p align="right">[ <a href="#index">Index</a> ]</p>
146+
<p align="right">[ <a href="#index">🔍 Index</a> ]</p>
112147

113148
<!---------------------------------------------------------------------------->
114149
<!---------------------------------------------------------------------------->
115150
<!---------------------------------------------------------------------------->
116151

117-
## Development & Contribution <a name="development--contribution"></a>
152+
## 🔨 Development & Contribution <a name="development--contribution"></a>
118153

119-
### Prerequisites
154+
### 📋 Prerequisites <a name="prerequisites"></a>
120155

121156
1. Install [Node.js][node-js].
122157

@@ -126,13 +161,13 @@ Then open your browser to `http://localhost:4200` to see your new Angular applic
126161
npm install
127162
```
128163

129-
<p align="right">[ <a href="#index">Index</a> ]</p>
164+
<p align="right">[ <a href="#index">🔍 Index</a> ]</p>
130165

131166
<!---------------------------------------------------------------------------->
132167
<!---------------------------------------------------------------------------->
133168
<!---------------------------------------------------------------------------->
134169

135-
### Update and Test <a name="update-and-test"></a>
170+
### 🧪 Update and Test <a name="update-and-test"></a>
136171

137172
1. Update source code in `src`.
138173

@@ -142,13 +177,13 @@ Then open your browser to `http://localhost:4200` to see your new Angular applic
142177

143178
4. Add your changes to git and create a pull request.
144179

145-
<p align="right">[ <a href="#index">Index</a> ]</p>
180+
<p align="right">[ <a href="#index">🔍 Index</a> ]</p>
146181

147182
<!---------------------------------------------------------------------------->
148183
<!---------------------------------------------------------------------------->
149184
<!---------------------------------------------------------------------------->
150185

151-
### Project Layout <a name="project-layout"></a>
186+
### 📁 Project Layout <a name="project-layout"></a>
152187

153188
.
154189
├─ .github/ # GitHub workflows, actions, and related automation files.
@@ -170,13 +205,26 @@ Then open your browser to `http://localhost:4200` to see your new Angular applic
170205
├─ README.md # This file.
171206
└─ tsconfig.json # TypeScript configuration file.
172207

173-
<p align="right">[ <a href="#index">Index</a> ]</p>
208+
<p align="right">[ <a href="#index">🔍 Index</a> ]</p>
209+
210+
<!---------------------------------------------------------------------------->
211+
<!---------------------------------------------------------------------------->
212+
<!---------------------------------------------------------------------------->
213+
214+
## ⚖️ Licensing <a name="licensing"></a>
215+
216+
This project is licensed under the **MIT** License. See the
217+
[LICENSE](LICENSE.md) file for the pertaining license text.
218+
219+
`SPDX-License-Identifier: MIT`
220+
221+
<p align="right">[ <a href="#index">🔍 Index</a> ]</p>
174222

175223
<!---------------------------------------------------------------------------->
176224
<!---------------------------------------------------------------------------->
177225
<!---------------------------------------------------------------------------->
178226

179-
## Wrapping Up <a name="wrapping-up"></a>
227+
## 🏁 Wrapping Up <a name="wrapping-up"></a>
180228

181229
Thank you to the entire Angular team and community for such a great framework to
182230
build upon. If you have any questions, please let me know by opening an issue

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@proangular/pro-ject",
3-
"version": "1.0.1",
3+
"version": "20.0.0",
44
"description": "A lightweight Node CLI that guides `ng new` and scaffolds an Angular 20+ workspace with opinionated structure and best-practice defaults.",
55
"author": "Pro Angular <webmaster@proangular.com>",
66
"private": false,

0 commit comments

Comments
 (0)