Skip to content

Latest commit

 

History

132 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dnd-mapp/template-app-angular

Template repository for bootstrapping new Angular-based dnd-mapp repositories, with shared tooling, CI, and browser-based testing pre-configured.

Prerequisites

  • Node.js and pnpm: versions are pinned in package.json's devEngines field.
  • mise (recommended): manages the Node.js and pnpm versions above automatically. Run mise install after installing it to pick up matching versions.
  • mkcert: generates the locally trusted HTTPS certificate the dev server uses (see Installation).

Installation

Click Use this template on GitHub to create a new repository from this one. In the new repository, generate the dev server's certificate, then install dependencies (this also sets up the Husky git hooks) and the Chromium browser used for tests:

mkcert -install
mkcert -cert-file .ssl/cert.pem -key-file .ssl/key.pem localhost.www.dndmapp.dev
pnpm install
pnpm playwright-install-browsers

Then update package.json's name and description, and this README, to match the new repository. Also reset CHANGELOG.md: remove this template's entries and leave just the header and an empty ## [Unreleased] section, so the new repository starts its own history from scratch.

Release workflow setup

The release workflow (release-prepare.yml, release-publish.yml, release-retry-tag.yml) is scaffolded into every repository created from this template. Two grants don't carry over automatically, though, and must be set up once by an org owner before the first release:

  • Grant the new repository access to the DMA_BOT_SSH_SIGNING_KEY organization secret (organization Settings → Secrets and variables → Actions → DMA_BOT_SSH_SIGNING_KEY → add the repository to its access list). It's scoped to an explicit repository allowlist, currently just template-app-angular.
  • Add the dnd-mapp GitHub App as a bypass actor on the new repository's main branch ruleset (repository Settings → Rules → Rulesets → main → bypass list). Configure it the same way it's configured on template-app-angular.

Everything else the workflow depends on is already organization-wide and needs no per-repository setup: the App's contents:write/packages:write/discussions:write permissions, and the Docker Hub credentials.

See Release Process for how the workflow itself works once these are in place.

Guides

  • Editor setup: configuring Prettier, ESLint, and Stylelint to run in VS Code or WebStorm.
  • Usage: available pnpm scripts, the dev server's HTTPS/hosts-file setup, and what runs in CI.
  • Docker: building and running the app's image, docker buildx bake, and the image lifecycle in CI.

Contributing

See Creating a Pull Request for how to open a pull request in any dnd-mapp repository, and Angular & TypeScript Conventions for this repo's coding conventions.

License

MIT

About

Template repository for bootstrapping Angular-based dnd-mapp projects, with shared tooling, CI, and browser-based testing pre-configured.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Packages

Contributors

Languages