forked from jampe/kp2bw
-
Notifications
You must be signed in to change notification settings - Fork 2
feat(docs): add migration planner site #35
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
Changes from all commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
89f2097
feat(docs): add migration planner site
kjanat 82a14e1
feat(docs): tighten migration planner UX
kjanat b1a5ddd
chore: update deps
kjanat af1a49b
docs: describe migration planner
kjanat 082c8f2
ci(docs): deploy planner to pages
kjanat e5a76e7
fix(docs): address planner review nits
kjanat 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,18 @@ | ||
| name: Pages | ||
| on: { push: { branches: [master], paths: [docs/**, .github/workflows/pages.yml, bun.lock, package.json] }, workflow_dispatch: {} } | ||
| permissions: { contents: read, pages: write, id-token: write } | ||
| concurrency: { group: pages, cancel-in-progress: false } | ||
| jobs: | ||
| pages: | ||
|
coderabbitai[bot] marked this conversation as resolved.
|
||
| environment: { name: github-pages, url: "${{ steps.deploy.outputs.page_url }}" } | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v7 | ||
| - uses: kjanat/runner@master | ||
| - uses: oven-sh/setup-bun@v2 | ||
| - run: runner --dir=docs install build | ||
| env: { BASE_PATH: "/${{ github.event.repository.name }}", RUNNER_PM: bun } | ||
| - uses: actions/upload-pages-artifact@v5 | ||
| with: { path: docs/build } | ||
| - id: deploy | ||
| uses: actions/deploy-pages@v5 | ||
|
coderabbitai[bot] marked this conversation as resolved.
|
||
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 |
|---|---|---|
|
|
@@ -18,8 +18,8 @@ dist/ | |
| downloads/ | ||
| eggs/ | ||
| .eggs/ | ||
| lib/ | ||
| lib64/ | ||
| /lib/ | ||
| /lib64/ | ||
| parts/ | ||
| sdist/ | ||
| var/ | ||
|
|
||
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,8 @@ | ||
| { | ||
| "mcpServers": { | ||
| "svelte": { | ||
| "type": "http", | ||
| "url": "https://mcp.svelte.dev/mcp" | ||
| } | ||
| } | ||
| } |
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 @@ | ||
| engine-strict=true |
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,6 @@ | ||
| { | ||
| "$schema": "https://opencode.ai/config.json", | ||
| "plugin": [ | ||
| "@sveltejs/opencode" | ||
| ] | ||
| } |
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 @@ | ||
| { | ||
| "$schema": "https://svelte.dev/opencode/schema.json" | ||
| } |
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
Large diffs are not rendered by default.
Oops, something went wrong.
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,23 @@ | ||
| node_modules | ||
|
|
||
| # Output | ||
| .output | ||
| .vercel | ||
| .netlify | ||
| .wrangler | ||
| /.svelte-kit | ||
| /build | ||
|
|
||
| # OS | ||
| .DS_Store | ||
| Thumbs.db | ||
|
|
||
| # Env | ||
| .env | ||
| .env.* | ||
| !.env.example | ||
| !.env.test | ||
|
|
||
| # Vite | ||
| vite.config.js.timestamp-* | ||
| vite.config.ts.timestamp-* |
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,34 @@ | ||
| ## Project Configuration | ||
|
|
||
| - **Language**: TypeScript | ||
| - **Package Manager**: bun | ||
| - **Add-ons**: mcp, vitest, eslint | ||
|
|
||
| --- | ||
|
|
||
| You are able to use the Svelte MCP server, where you have access to comprehensive Svelte 5 and SvelteKit documentation. | ||
| Here's how to use the available tools effectively: | ||
|
|
||
| ## Available Svelte MCP Tools: | ||
|
|
||
| ### 1. list-sections | ||
|
|
||
| Use this FIRST to discover all available documentation sections. Returns a structured list with titles, use_cases, and | ||
| paths. When asked about Svelte or SvelteKit topics, ALWAYS use this tool at the start of the chat to find relevant | ||
| sections. | ||
|
|
||
| ### 2. get-documentation | ||
|
|
||
| Retrieves full documentation content for specific sections. Accepts single or multiple sections. After calling the | ||
| list-sections tool, you MUST analyze the returned documentation sections (especially the use_cases field) and then use | ||
| the get-documentation tool to fetch ALL documentation sections that are relevant for the user's task. | ||
|
|
||
| ### 3. svelte-autofixer | ||
|
|
||
| Analyzes Svelte code and returns issues and suggestions. You MUST use this tool whenever writing Svelte code before | ||
| sending it to the user. Keep calling it until no issues or suggestions are returned. | ||
|
|
||
| ### 4. playground-link | ||
|
|
||
| Generates a Svelte Playground link with the provided code. After completing the code, ask the user if they want a | ||
| playground link. Only call this tool after user confirmation and NEVER if code was written to files in their project. |
|
kjanat marked this conversation as resolved.
|
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,32 @@ | ||
| # kp2bw Migration Planner | ||
|
|
||
| This docs site helps you choose the safest KeePass-to-Bitwarden migration shape before running `kp2bw`. | ||
|
|
||
| Open these pages in the docs site: | ||
|
|
||
| - [Migration planner](https://kjanat.github.io/kp2bw/): choose options, preview the trees, copy the command. | ||
| - [Detailed option guide](https://kjanat.github.io/kp2bw/docs/): learn what each choice means before running it. | ||
|
coderabbitai[bot] marked this conversation as resolved.
|
||
|
|
||
| Source routes: | ||
|
|
||
| - [Planner route](./src/routes/+page.svelte) | ||
| - [Details route](./src/routes/docs/+page.svelte) | ||
|
|
||
| The planner shows the source KeePass tree beside the Bitwarden result tree and turns your choices into the exact `.env` | ||
| values and `kp2bw` command to run. | ||
|
|
||
| ## What It Helps Decide | ||
|
|
||
| - Personal vault import with folders, or a flat personal import. | ||
| - Organization import into nested collections, top-level collections, one fixed collection, or no generated hierarchy. | ||
| - Whether an organization import should also create personal folders with `--folder`. | ||
| - Whether a rerun should protect Bitwarden edits, skip updates, or force KeePass to win. | ||
| - Which tags, expired entries, and Recycle Bin entries are included. | ||
|
|
||
| ## Important Defaults | ||
|
|
||
| - Personal vault is the no-flag default: `kp2bw vault.kdbx`. | ||
| - Organization imports default to collections only; personal folders stay off unless `--folder` is selected. | ||
| - Expired entries are included unless `--skip-expired` is selected. | ||
| - Recycle Bin entries are excluded unless `--include-recycle-bin` is selected. | ||
| - Tag-filtered commands include `--` before the KeePass file so the file path is not parsed as another tag. | ||
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,38 @@ | ||
| import js from '@eslint/js'; | ||
| import svelte from 'eslint-plugin-svelte'; | ||
| import { defineConfig, includeIgnoreFile } from 'eslint/config'; | ||
| import globals from 'globals'; | ||
| import path from 'node:path'; | ||
| import ts from 'typescript-eslint'; | ||
|
|
||
| const gitignorePath = path.resolve(import.meta.dirname, '.gitignore'); | ||
|
|
||
| export default defineConfig( | ||
| includeIgnoreFile(gitignorePath), | ||
| js.configs.recommended, | ||
| ts.configs.recommended, | ||
| svelte.configs.recommended, | ||
| { | ||
| languageOptions: { globals: { ...globals.browser, ...globals.node } }, | ||
| rules: { | ||
| // typescript-eslint strongly recommend that you do not use the no-undef lint rule on TypeScript projects. | ||
| // see: https://typescript-eslint.io/troubleshooting/faqs/eslint/#i-get-errors-from-the-no-undef-rule-about-global-variables-not-being-defined-even-though-there-are-no-typescript-errors | ||
| 'no-undef': 'off', | ||
| }, | ||
| }, | ||
| { | ||
| files: ['**/*.svelte', '**/*.svelte.ts', '**/*.svelte.js'], | ||
| languageOptions: { | ||
| parserOptions: { | ||
| projectService: true, | ||
| extraFileExtensions: ['.svelte'], | ||
| parser: ts.parser, | ||
| }, | ||
| }, | ||
| }, | ||
| { | ||
| // Override or add rule settings here, such as: | ||
| // 'svelte/button-has-type': 'error' | ||
| rules: {}, | ||
| }, | ||
| ); |
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,37 @@ | ||
| { | ||
| "name": "docs", | ||
| "private": true, | ||
| "version": "0.0.1", | ||
| "type": "module", | ||
| "scripts": { | ||
| "dev": "vite dev", | ||
| "build": "vite build", | ||
| "preview": "vite preview", | ||
| "prepare": "svelte-kit sync 2>&1", | ||
| "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", | ||
| "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", | ||
| "test:unit": "vitest", | ||
| "test": "run test:unit run", | ||
|
kjanat marked this conversation as resolved.
|
||
| "lint": "eslint" | ||
| }, | ||
| "devDependencies": { | ||
| "@eslint/js": "^10.0.1", | ||
| "@sveltejs/adapter-static": "^3.0.10", | ||
| "@sveltejs/kit": "^2.63.0", | ||
| "@sveltejs/vite-plugin-svelte": "^7.1.2", | ||
| "@types/node": "^24", | ||
| "@vitest/browser-playwright": "^4.1.8", | ||
| "eslint": "^10.4.1", | ||
| "eslint-plugin-svelte": "^3.19.0", | ||
| "globals": "^17.6.0", | ||
| "playwright": "^1.60.0", | ||
| "runner-run": "catalog:", | ||
| "svelte": "^5.56.1", | ||
| "svelte-check": "^4.6.0", | ||
| "typescript": "^6.0.3", | ||
| "typescript-eslint": "^8.60.1", | ||
| "vite": "^8.0.16", | ||
| "vitest": "^4.1.8", | ||
| "vitest-browser-svelte": "^2.1.1" | ||
| } | ||
| } | ||
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,13 @@ | ||
| // See https://svelte.dev/docs/kit/types#app.d.ts | ||
| // for information about these interfaces | ||
| declare global { | ||
| namespace App { | ||
| // interface Error {} | ||
| // interface Locals {} | ||
| // interface PageData {} | ||
| // interface PageState {} | ||
| // interface Platform {} | ||
| } | ||
| } | ||
|
|
||
| export {}; |
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,12 @@ | ||
| <!DOCTYPE html> | ||
| <html lang="en"> | ||
| <head> | ||
| <meta charset="utf-8"> | ||
| <meta name="viewport" content="width=device-width, initial-scale=1"> | ||
| <meta name="text-scale" content="scale"> | ||
|
coderabbitai[bot] marked this conversation as resolved.
|
||
| %sveltekit.head% | ||
| </head> | ||
| <body data-sveltekit-preload-data="hover"> | ||
| <div style="display: contents">%sveltekit.body%</div> | ||
| </body> | ||
| </html> | ||
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.
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.