-
-
Notifications
You must be signed in to change notification settings - Fork 59
draft: chore: add docs #71
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 6 commits
Commits
Show all changes
16 commits
Select commit
Hold shift + click to select a range
cc00578
sample / showcase docs
manuel3108 21eed3a
improve
manuel3108 0361044
add more docs
manuel3108 4ccad3e
Update documentation/docs/10-getting-started/10-commands.md
manuel3108 118d3b3
Update documentation/docs/10-getting-started/10-commands.md
manuel3108 90903c7
copy over readmes
benmccann 9ac2409
capitalize headings and flesh out missing sections
benmccann 4e69aa1
Update documentation/docs/10-getting-started/10-commands.md
benmccann 89d6b10
Update documentation/docs/10-getting-started/10-commands.md
benmccann dae3f60
make migrate/check documents valid, make titles consistent
Rich-Harris beacf93
restructure
Rich-Harris 1c08b25
update some stuff
Rich-Harris b246039
Update documentation/docs/30-community-adders/30-submission.md
benmccann ca38e40
Update documentation/docs/20-commands/10-sv-create.md
benmccann 99daddb
we don't install adders
benmccann 0fd1908
typo
benmccann File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
--- | ||
title: Commands | ||
--- | ||
|
||
## Intorduction | ||
|
||
`sv`, the Svelte CLI, aims to combine multiple tools into one single easy to remember command. | ||
|
||
## Usage | ||
|
||
The best way to use our cli is to run one of the following commands, depending on your package manager | ||
|
||
```bash | ||
npx sv <command> <args> | ||
pnpx sv <command> <args> | ||
# todo: should we add other package managers or just leave npx? Same goes for all other snippets | ||
``` | ||
|
||
## Commands | ||
|
||
| Command | Sample usage | Description | | ||
| ------------------ | -------------------------------- | ---------------------------------------------- | | ||
| [`create`](create) | `npx sv create ./my-project` | Scaffolds new projects | | ||
| [add](add) | `npx sv add tailwindcss` | Customize your projects to add different tools | | ||
| migrate | `npx sv migrate {migrationName}` | Migrate your project | | ||
benmccann marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| check | `npx sv check` | Typecheck your Svelte files | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
--- | ||
title: Create a project | ||
--- | ||
|
||
## overview | ||
|
||
some cool description about the `create` command and it's capabilities | ||
|
||
## usage | ||
|
||
```bash | ||
npx sv create | ||
``` | ||
|
||
```bash | ||
npx sv create ./my/path | ||
``` | ||
|
||
## available options | ||
|
||
| Option | option values | default | description | | ||
| ------------- | ------------------------------- | --------- | ---------------------------------------------------------- | | ||
| --check-types | typescript \| checkjs \| none | typescipt | determine if type checking should be added to this project | | ||
| --template | skeleton \| skeletonlib \| demo | skeleton | project template | | ||
| --no-adders | - | - | skips interactive adder installer | | ||
| --no-install | - | - | skips installing dependencies | | ||
|
||
## programatic interface | ||
|
||
```js | ||
// todo: this gives error in the docs site when commented in, seems to be related that this package is not published to the registry at this point in time, as it seems to be trying to check types | ||
// import { create } from 'sv'; | ||
|
||
// // todo: check if this is right | ||
// create(cwd, { | ||
// // add your options here | ||
// // todo: list available option | ||
// }); | ||
``` |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,77 @@ | ||
--- | ||
title: Customize your project | ||
--- | ||
|
||
## overview | ||
|
||
some cool description about the `add` command and it's capabilities | ||
|
||
## usage | ||
|
||
```bash | ||
npx sv add | ||
``` | ||
|
||
```bash | ||
npx sv add tailwindcss | ||
``` | ||
|
||
```bash | ||
npx sv add tailwindcss --cwd ./my/path | ||
``` | ||
|
||
## available options | ||
|
||
| Option | option values | default | description | | ||
| ------------------ | ------------------------------------------ | ------- | -------------------------------------------- | | ||
| -C, --cwd | - | ./ | path to the root of your svelte(kit) project | | ||
| --no-install | - | - | skips installing dependencies | | ||
| --no-preconditions | - | - | skips checking preconditions | | ||
| --no-preconditions | - | - | skips checking preconditions | | ||
| --community | [community adder names](#community-adders) | - | adds community adders | | ||
|
||
## available adders | ||
|
||
// todo: add unmerged adders | ||
|
||
drizzle | ||
|
||
eslint | ||
|
||
lucia | ||
|
||
mdsvex | ||
|
||
playwright | ||
|
||
prettier | ||
|
||
routify | ||
|
||
storybook | ||
|
||
tailwindcss | ||
|
||
vitest | ||
|
||
## community adders | ||
|
||
> The Svelte maintainers have not reviewed community adders for malicious code. Use at your discretion. | ||
|
||
```bash | ||
npx sv add --community # interactive community adder selection | ||
``` | ||
|
||
```bash | ||
npx sv add --community shadcn-svelte #test | ||
``` | ||
|
||
```bash | ||
npx sv add --community shadcn-svelte --cwd ./my/path | ||
``` | ||
|
||
```bash | ||
npx sv add --community npm:your-custom-adder-published-to-npm --cwd ./my/path | ||
``` | ||
|
||
// todo: list of community adders??? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
# sv migrate | ||
|
||
A CLI for migrating Svelte(Kit) codebases. | ||
|
||
Run it using | ||
|
||
``` | ||
npx sv migrate [migration] | ||
``` | ||
|
||
## Migrations | ||
|
||
| Migration | From | To | Guide | | ||
| ------------- | --------------------- | --------------------- | --------------------------------------------------------------- | | ||
| `svelte-5` | Svelte 4 | Svelte 5 | [Website](https://svelte.dev/docs/v5-migration-guide) | | ||
| `sveltekit-2` | SvelteKit 1.0 | SvelteKit 2.0 | [Website](https://kit.svelte.dev/docs/migrating-to-sveltekit-2) | | ||
| `svelte-4` | Svelte 3 | Svelte 4 | [Website](https://svelte.dev/docs/v4-migration-guide) | | ||
| `package` | `@sveltejs/package@1` | `@sveltejs/package@2` | [#8922](https://github.com/sveltejs/kit/pull/8922) | | ||
| `routes` | SvelteKit pre-1.0 | SvelteKit 1.0 | [#5774](https://github.com/sveltejs/kit/discussions/5774) | | ||
|
||
Some migrations may annotate your codebase with tasks for completion that you can find by searching for `@migration`. | ||
|
||
## Changelog | ||
|
||
[The Changelog for this package is available on GitHub](https://github.com/sveltejs/kit/blob/main/packages/migrate/CHANGELOG.md). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,123 @@ | ||
# Check your code with sv check | ||
|
||
Provides CLI diagnostics checks for: | ||
|
||
- Unused CSS | ||
- Svelte A11y hints | ||
- JavaScript/TypeScript compiler errors | ||
|
||
Requires Node 16 or later. | ||
|
||
### Usage: | ||
|
||
#### Local / in your project | ||
|
||
Installation: | ||
|
||
`npm i svelte-check --save-dev` | ||
|
||
Package.json: | ||
|
||
```json | ||
{ | ||
// ... | ||
"scripts": { | ||
"sv": "npx sv" | ||
// ... | ||
}, | ||
// ... | ||
"devDependencies": { | ||
"svelte-check": "..." | ||
// ... | ||
} | ||
} | ||
``` | ||
|
||
Usage: | ||
|
||
`npm run sv check` | ||
|
||
### Args: | ||
|
||
| Flag | Description | | ||
| --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | ||
| `--workspace <path>` | Path to your workspace. All subdirectories except node_modules and those listed in `--ignore` are checked | | ||
| `--output <human\|human-verbose\|machine\|machine-verbose>` | | ||
| `--watch` | Will not exit after one pass but keep watching files for changes and rerun diagnostics | | ||
| `--preserveWatchOutput` | Do not clear the screen in watch mode | | ||
| `--tsconfig <path>` | Pass a path to a tsconfig or jsconfig file. The path can be relative to the workspace path or absolute. Doing this means that only files matched by the files/include/exclude pattern of the config file are diagnosed. It also means that errors from TypeScript and JavaScript files are reported. If not given, will do an upwards traversal looking for the next jsconfig/tsconfig.json | | ||
| `--no-tsconfig` | Use this if you only want to check the Svelte files found in the current directory and below and ignore any JS/TS files (they will not be type-checked) | | ||
| `--ignore <path1,path2>` | Only has an effect when used in conjunction with `--no-tsconfig`. Files/folders to ignore - relative to workspace root, comma-separated, inside quotes. Example: `--ignore "dist,build"`. When used in conjunction with `--tsconfig`, this will only have effect on the files watched, not on the files that are diagnosed, which is then determined by the `tsconfig.json` | | ||
| `--fail-on-warnings` | Will also exit with error code when there are warnings | | ||
| `--compiler-warnings <code1:error\|ignore,code2:error\|ignore>` | A list of Svelte compiler warning codes. Each entry defines whether that warning should be ignored or treated as an error. Warnings are comma-separated, between warning code and error level is a colon; all inside quotes. Example: `--compiler-warnings "css-unused-selector:ignore,unused-export-let:error"` | | ||
| `--diagnostic-sources <js,svelte,css>` | A list of diagnostic sources which should run diagnostics on your code. Possible values are `js` (includes TS), `svelte`, `css`. Comma-separated, inside quotes. By default all are active. Example: `--diagnostic-sources "js,svelte"` | | ||
| `--threshold <error\|warning>` | Filters the diagnostics to display. `error` will output only errors while `warning` will output warnings and errors. | | ||
|
||
### FAQ | ||
|
||
#### Why is there no option to only check specific files (for example only staged files)? | ||
|
||
`svelte-check` needs to know the whole project to do valid checks. Imagine you alter a component property `export let foo` to `export let bar`, but you don't update any of the component usages. They all have errors now but you would not catch them if you only run checks on changed files. | ||
|
||
### More docs, preprocessor setup and troubleshooting | ||
|
||
[See here](/docs/README.md). | ||
|
||
### Machine-Readable Output | ||
|
||
Setting the `--output` to `machine` or `machine-verbose` will format output in a way that is easier to read | ||
by machines, e.g. inside CI pipelines, for code quality checks, etc. | ||
|
||
Each row corresponds to a new record. Rows are made up of columns that are separated by a | ||
single space character. The first column of every row contains a timestamp in milliseconds | ||
which can be used for monitoring purposes. The second column gives us the "row type", based | ||
on which the number and types of subsequent columns may differ. | ||
|
||
The first row is of type `START` and contains the workspace folder (wrapped in quotes). | ||
|
||
###### Example: | ||
|
||
``` | ||
1590680325583 START "/home/user/language-tools/packages/language-server/test/plugins/typescript/testfiles" | ||
``` | ||
|
||
Any number of `ERROR` or `WARNING` records may follow. Their structure is identical and depends on the output argoument. | ||
|
||
If the argument is `machine` it will tell us the filename, the starting line and column numbers, and the error message. The filename is relative to the workspace directory. The filename and the message are both wrapped in quotes. | ||
|
||
###### Example: | ||
|
||
``` | ||
1590680326283 ERROR "codeactions.svelte" 1:16 "Cannot find module 'blubb' or its corresponding type declarations." | ||
1590680326778 WARNING "imported-file.svelte" 0:37 "Component has unused export property 'prop'. If it is for external reference only, please consider using `export const prop`" | ||
``` | ||
|
||
If the argument is `machine-verbose` it will tell us the filename, the starting line and column numbers, the ending line and column numbers, the error message, the code of diagnostic, the human-friendly description of the code and the human-friendly source of the diagnostic (eg. svelte/typescript). The filename is relative to the workspace directory. Each diagnostic is represented as an [ndjson](https://en.wikipedia.org/wiki/JSON_streaming#Newline-Delimited_JSON) line prefixed by the timestamp of the log. | ||
|
||
###### Example: | ||
|
||
``` | ||
1590680326283 {"type":"ERROR","fn":"codeaction.svelte","start":{"line":1,"character":16},"end":{"line":1,"character":23},"message":"Cannot find module 'blubb' or its corresponding type declarations.","code":2307,"source":"js"} | ||
1590680326778 {"type":"WARNING","filename":"imported-file.svelte","start":{"line":0,"character":37},"end":{"line":0,"character":51},"message":"Component has unused export property 'prop'. If it is for external reference only, please consider using `export | ||
const prop`","code":"unused-export-let","source":"svelte"} | ||
``` | ||
|
||
The output concludes with a `COMPLETED` message that summarizes total numbers of files, errors and warnings that were encountered during the check. | ||
|
||
###### Example: | ||
|
||
``` | ||
1590680326807 COMPLETED 20 FILES 21 ERRORS 1 WARNINGS 3 FILES_WITH_PROBLEMS | ||
``` | ||
|
||
If the application experiences a runtime error, this error will appear as a `FAILURE` record. | ||
|
||
###### Example: | ||
|
||
``` | ||
1590680328921 FAILURE "Connection closed" | ||
``` | ||
|
||
### Credits | ||
|
||
- Vue's [VTI](https://github.com/vuejs/vetur/tree/master/vti) which laid the foundation for `svelte-check` |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
--- | ||
title: Getting started | ||
--- |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
--- | ||
title: Usage | ||
--- | ||
|
||
## Before we begin | ||
|
||
> The Svelte maintainers have not reviewed community adders for malicious code. Use at your discretion. | ||
|
||
That being said, we still want the community to be able to enhance the experience while creating new projects. That's why everyone is allowed to create community adders. The documentation for creating a new community adder can be found [here](docs) | ||
|
||
## usage | ||
|
||
```bash | ||
npx sv add --community # interactive list | ||
npx sv add --community supabase # apply supabase adder | ||
npx sv add --community npm:your-npm-package # apply any adder from npm | ||
npx sv add --community file:./path-to-your-adder # for local testing | ||
``` | ||
|
||
## requirements | ||
|
||
technical requirements: | ||
|
||
- all adders must have exactly one dependency: `@sveltejs/add-core` | ||
- if they need to include any other dependencies they will need to do some bundeling on their side | ||
- the major version of the referenced `@sveltejs/add-core` library must match with the major version `sv` the user is currently executing | ||
|
||
See [submission](submission#requirements) to find additional requirements if you want list your community adder inside `sv` for the ease of use of other community members |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
--- | ||
title: Docs | ||
--- | ||
|
||
## community adder template | ||
|
||
We have a [community adder template](https://github.com/sveltejs/cli/tree/main/community-adder-template) that lives inside our GitHub monorepo. This should be a starting point for all new community adders. | ||
|
||
We do not provide any TS template, as the types provided by all the helper methods we expose should be enough to fullfill your needs! If you still want to use typescript, nobody will prevent you. | ||
|
||
## basic usage | ||
|
||
add example usage for our 5 common files (index.js, config/adder.js, config/options.js, config/check.js, config/test.js) and explain what they are. Ommitted at this point, since the code templates do not work | ||
|
||
Do we need to explain more? I think most of the things should be pretty self explanatory and can be added on demand |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
--- | ||
title: Submission | ||
--- | ||
|
||
## overview | ||
|
||
normal text | ||
|
||
## requirements | ||
|
||
- must benefit the overall svelte ecosystem and the community | ||
- must not be too specific to one presons needs | ||
- todo: whatever else we can think of | ||
|
||
## process | ||
|
||
- create a fork of `sveltejs/cli` | ||
- modify file `todo` to add your community adder | ||
- create a PR | ||
- once merged, it might take a while before we draft a new release of `sv`, only then your new community adder will be available |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
--- | ||
title: Community adders | ||
--- |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
--- | ||
title: CLI | ||
--- |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.