Smoke-test the create-*-app output on every PR

Open
#1,258 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
github-actions, nextjs, node.js, typescript
Domain
ci-cd

Research direction

Start with the workflow file code-npm_node-PR_verify.yml and the existing Verdaccio setup used to serve local packages. Then look at the create() generator for the WebSockets and Azure templates to see what it writes. Done means a CI job that installs, type-checks, lints, builds the frontend and gets 200 from GET /api/v1/health for both templates. Ask in the thread before choosing whether the job is required on template changes.

Written by the indexing model from the issue text.

Description

internal

Summary

Add a CI job that generates the quickstart apps, installs them, builds them and starts the backend, so dependency updates cannot silently break them. In 5.7.1 they do not install, build or start (#1257).

Basic example

A job in code-npm_node-PR_verify.yml that, for each template (WebSockets and Azure):

  1. Builds the packages and serves them from a local registry. The repo already has a Verdaccio setup, and npm pack would also work.
  2. Generates the frontend and the backend with create(), with no prompts.
  3. Runs npm install with no extra flags.
  4. Runs tsc --noEmit and npm run lint, and next build for the frontend.
  5. Starts the backend and checks that GET /api/v1/health returns 200.
Motivation

Nothing in CI runs the generated apps today. The Next.js 14 → 16 upgrade (#1160) and a new postprocessing release, which broke the install with no change in this repo, are two of the causes. I ran steps 2 to 5 by hand with the published 5.7.1 packages, and they catch every problem in #1257.

This is a small first step towards #1135. Browser and collaboration tests stay out of scope.

Open question: should the job be required on every PR that changes a template's package.json?

Dominant language
TypeScript
Stars
276
Forks
26
Avg merge
1d 10h
Merged PRs (30d)
47

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from InditexTech/weavejs

All issues in InditexTech/weavejs

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.