Skip to content

Switch from create-elm-app to Parcel and add CI/CD workflows#1

Merged
adamnfish merged 3 commits into
mainfrom
modernise-build
Apr 13, 2026
Merged

Switch from create-elm-app to Parcel and add CI/CD workflows#1
adamnfish merged 3 commits into
mainfrom
modernise-build

Conversation

@adamnfish
Copy link
Copy Markdown
Owner

  • Replace create-elm-app with Parcel 2 + @parcel/transformer-elm
  • Add GitHub Actions deploy workflow (Pages artifact, not docs/ branch)
  • Add CI workflow running elm-test on PRs and pushes to main
  • Remove service worker
  • Remove committed docs/ build output
  • Update elm.json: elm 0.19.1, elm/core 1.0.5, elm-explorations/test 2.0.0
  • Add local dev instructions to README

- Replace create-elm-app with Parcel 2 + @parcel/transformer-elm
- Add GitHub Actions deploy workflow (Pages artifact, not docs/ branch)
- Add CI workflow running elm-test on PRs and pushes to main
- Remove service worker
- Remove committed docs/ build output
- Update elm.json: elm 0.19.1, elm/core 1.0.5, elm-explorations/test 2.0.0
- Add local dev instructions to README

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Migrate the Elm app build/deploy setup from create-elm-app (with committed docs/ output + service worker) to Parcel 2, and add GitHub Actions workflows for CI (elm-test) and GitHub Pages deployment via the Pages artifact flow.

Changes:

  • Replace CRA-era bootstrapping (service worker, %PUBLIC_URL% assets, public/ manifest) with Parcel-oriented src/index.html + module entrypoint.
  • Add CI workflow running Elm tests and deploy workflow publishing the Parcel dist/ output to GitHub Pages.
  • Remove committed build artifacts under docs/ and remove service worker setup.

Reviewed changes

Copilot reviewed 16 out of 26 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
src/registerServiceWorker.js Removed service worker registration code.
src/index.js Removed service worker import/registration; keeps Elm init.
src/index.html Updated asset paths and added module script entrypoint for Parcel.
src/manifest.json Added web app manifest under src/.
src/favicon.ico Added favicon in src/ to be bundled by Parcel.
public/manifest.json Removed old manifest location used by create-elm-app.
elmapp.config.js Removed create-elm-app config.
elm.json Updated Elm/test dependency versions and indirect test deps.
package.json Added Parcel/Elm tooling scripts and dev dependencies.
docs/static/js/vendors~main.7b45496b.chunk.js.map Removed committed build artifact.
docs/static/js/vendors~main.7b45496b.chunk.js Removed committed build artifact.
docs/static/js/runtime~main.538a88e8.js.map Removed committed build artifact.
docs/static/js/runtime~main.538a88e8.js Removed committed build artifact.
docs/static/js/main.7ba80f70.chunk.js Removed committed build artifact.
docs/static/css/main.f98b609c.chunk.css.map Removed committed build artifact.
docs/static/css/main.f98b609c.chunk.css Removed committed build artifact.
docs/service-worker.js Removed committed service worker artifact.
docs/index.html Removed committed build artifact entry HTML.
docs/asset-manifest.json Removed committed build artifact manifest.
README.md Updated Pages URL and added local dev/build/test instructions.
.gitignore Ignored Parcel outputs (dist/, .parcel-cache/).
.github/workflows/deploy.yml Added GitHub Pages build+deploy workflow.
.github/workflows/ci.yml Added CI workflow running Elm tests.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread package.json
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@adamnfish adamnfish merged commit 3c9c050 into main Apr 13, 2026
1 check passed
@adamnfish adamnfish deleted the modernise-build branch April 13, 2026 21:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants