sveltejs / sveltejs/cli

Guide devs on the various happy paths of an add-on lifecycle

Open
#1,043 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

documentation
Dominant language
TypeScript
Stars
506
Forks
107
Avg merge
5d 15h
Merged PRs (30d)
28

Description

create - clean workspace
add (update) - compatibility checks
addx2 (incremental update) - detect dependency, possibly bail.

For an add-on like eslint, it most likely has to bail as soon as it detects a discrepency during add and addx2. Loosely coupled packages like component libraries could be able to handle all 3, addx2 could be bumping dependencies and running codemod.

Not sure if this comes in the form of an API, util or just a pattern (and docs) we should to add to the official add-ons.

This came up in #1034. It wasn't immediately obvious to me that I should handle these cases.

Contributor guide

Open the contributing guide

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.

Research direction

Start with issue #1034 and the add-on lifecycle cases named here: create, add, and addx2; no file or test is specified. Compare how official add-ons handle clean workspaces, compatibility checks, dependency detection, and codemods. Done means the lifecycle guidance and the agreed API, utility, pattern, or documentation scope are explicit.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
cli, developer-experience, documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.