From 124a7679b3495e979649ce5d2d9048848f88f4a1 Mon Sep 17 00:00:00 2001 From: "alexei.dolgolyov" Date: Fri, 10 Apr 2026 19:39:27 +0300 Subject: [PATCH] chore: release v0.0.1 - Rename CI workflow to test.yml (lint & test only) - Add release.yml (Docker push + Gitea release on v* tag) - Add README.md and RELEASE_NOTES.md - Bump version to 0.0.1 --- .facts-sync.json | 8 ++ .gitea/workflows/release.yml | 129 ++++++++++++++++++++++++++ .gitea/workflows/{ci.yml => test.yml} | 11 +-- README.md | 51 ++++++++++ RELEASE_NOTES.md | 99 ++++++++++++++++++++ package-lock.json | 4 +- package.json | 2 +- 7 files changed, 291 insertions(+), 13 deletions(-) create mode 100644 .facts-sync.json create mode 100644 .gitea/workflows/release.yml rename .gitea/workflows/{ci.yml => test.yml} (83%) create mode 100644 README.md create mode 100644 RELEASE_NOTES.md diff --git a/.facts-sync.json b/.facts-sync.json new file mode 100644 index 0000000..849ca37 --- /dev/null +++ b/.facts-sync.json @@ -0,0 +1,8 @@ +{ + "last_commit": "8bdbcec7052a7838c2f9ef025548fb4a37679748", + "last_sync": "2026-04-10T12:00:00Z", + "tracked_files": { + "gitea-python-ci-cd.md": "sha256:30bb3e8d1487fdfed67472eaf11c641f4126a282e03200f3bbee589a7ec727f0", + "gitea-release-workflow.md": "sha256:5eb64789fca062b2138ca7661b942c9fc9c304f63326844ff6f6724e7e05b08c" + } +} diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml new file mode 100644 index 0000000..4037abc --- /dev/null +++ b/.gitea/workflows/release.yml @@ -0,0 +1,129 @@ +name: Release + +on: + push: + tags: + - 'v*' + +jobs: + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '22' + cache: 'npm' + + - name: Install dependencies + run: npm ci + + - name: Generate Prisma client + run: npx prisma generate + + - name: Lint + run: npm run lint + + - name: Type check + run: npm run check + + - name: Run tests + run: npm test + + docker: + runs-on: ubuntu-latest + needs: test + steps: + - uses: actions/checkout@v4 + + - name: Set image metadata + id: meta + run: | + TAG="${{ gitea.ref_name }}" + VERSION="${TAG#v}" + REGISTRY="${{ gitea.server_url }}" + # Strip https:// for registry address + REGISTRY="${REGISTRY#https://}" + REGISTRY="${REGISTRY#http://}" + IMAGE="${REGISTRY}/${{ gitea.repository }}" + echo "version=${VERSION}" >> "$GITHUB_OUTPUT" + echo "image=${IMAGE}" >> "$GITHUB_OUTPUT" + echo "tag=${TAG}" >> "$GITHUB_OUTPUT" + + - name: Login to Gitea Container Registry + run: | + echo "${{ secrets.DEPLOY_TOKEN }}" | docker login "${{ gitea.server_url }}" -u "${{ gitea.repository_owner }}" --password-stdin + + - name: Build and push Docker image + run: | + IMAGE="${{ steps.meta.outputs.image }}" + VERSION="${{ steps.meta.outputs.version }}" + docker build \ + -t "${IMAGE}:${VERSION}" \ + -t "${IMAGE}:latest" \ + . + docker push "${IMAGE}:${VERSION}" + docker push "${IMAGE}:latest" + + release: + runs-on: ubuntu-latest + needs: docker + steps: + - name: Fetch RELEASE_NOTES.md only + uses: actions/checkout@v4 + with: + sparse-checkout: RELEASE_NOTES.md + sparse-checkout-cone-mode: false + + - name: Create Gitea release + env: + DEPLOY_TOKEN: ${{ secrets.DEPLOY_TOKEN }} + run: | + TAG="${{ gitea.ref_name }}" + VERSION="${TAG#v}" + BASE_URL="${{ gitea.server_url }}/api/v1/repos/${{ gitea.repository }}" + + # Detect pre-release (alpha/beta/rc) + IS_PRE="false" + if echo "$TAG" | grep -qE '(alpha|beta|rc)'; then + IS_PRE="true" + fi + + # Read release notes if present + if [ -f RELEASE_NOTES.md ]; then + export RELEASE_NOTES=$(cat RELEASE_NOTES.md) + echo "Found RELEASE_NOTES.md" + else + export RELEASE_NOTES="" + echo "No RELEASE_NOTES.md found — release will have no body" + fi + + BODY_JSON=$(python3 -c " + import json, os + notes = os.environ.get('RELEASE_NOTES', '') + print(json.dumps(notes.strip())) + ") + + # Create release via Gitea API + RELEASE=$(curl -s -X POST "$BASE_URL/releases" \ + -H "Authorization: token $DEPLOY_TOKEN" \ + -H "Content-Type: application/json" \ + -d "{ + \"tag_name\": \"$TAG\", + \"name\": \"$VERSION\", + \"body\": $BODY_JSON, + \"draft\": false, + \"prerelease\": $IS_PRE + }") + + # Fallback: if release already exists for this tag, reuse it + RELEASE_ID=$(echo "$RELEASE" | python3 -c "import sys,json; print(json.load(sys.stdin)['id'])" 2>/dev/null) + if [ -z "$RELEASE_ID" ]; then + echo "::warning::Release already exists for tag $TAG — reusing existing release" + RELEASE=$(curl -s "$BASE_URL/releases/tags/$TAG" \ + -H "Authorization: token $DEPLOY_TOKEN") + RELEASE_ID=$(echo "$RELEASE" | python3 -c "import sys,json; print(json.load(sys.stdin)['id'])") + fi + echo "Created release $RELEASE_ID for $TAG" diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/test.yml similarity index 83% rename from .gitea/workflows/ci.yml rename to .gitea/workflows/test.yml index 3eb6eb4..1a48973 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/test.yml @@ -1,4 +1,4 @@ -name: CI +name: Lint & Test on: push: @@ -53,12 +53,3 @@ jobs: - name: Run tests run: npm test - - docker-build: - runs-on: ubuntu-latest - needs: test - steps: - - uses: actions/checkout@v4 - - - name: Build Docker image - run: docker build -t web-app-launcher:ci . diff --git a/README.md b/README.md new file mode 100644 index 0000000..5ad74b8 --- /dev/null +++ b/README.md @@ -0,0 +1,51 @@ +# Web App Launcher + +A self-hosted dashboard for organizing, monitoring, and launching web applications. Built with SvelteKit, Prisma (SQLite), and Tailwind CSS. + +## Features + +- **App registry** — add apps with icons, tags, and categories; automatic healthcheck monitoring with sparkline history +- **Boards & widgets** — customizable dashboards with drag-and-drop, resizable widget columns, and inline WYSIWYG editing +- **Service integrations** — connect to media services, Planka, and more to display live data in widgets +- **Authentication** — local accounts + OAuth/Authentik; per-board access control +- **Localization** — English and Russian +- **PWA** — installable, multi-tab sync, auto-discovery bookmarklet +- **SQLite backup/restore** — full database backup from the admin panel + +## Quick Start + +```bash +# Clone and run with Docker Compose +git clone https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher.git +cd web-app-launcher +docker compose up -d +``` + +The app is available at `http://localhost:3000`. On first launch, create an admin account at the setup page. + +## Configuration + +Environment variables (set in `docker-compose.yml` or `.env`): + +| Variable | Default | Description | +|----------|---------|-------------| +| `APP_PORT` | `3000` | Port to expose | +| `JWT_SECRET` | — | Secret for JWT signing (change in production!) | +| `GUEST_MODE` | `true` | Allow unauthenticated access | +| `HEALTHCHECK_CRON` | `*/5 * * * *` | App healthcheck interval | +| `HEALTHCHECK_TIMEOUT_MS` | `5000` | Healthcheck request timeout | +| `OAUTH_CLIENT_ID` | — | OAuth provider client ID | +| `OAUTH_CLIENT_SECRET` | — | OAuth provider client secret | +| `OAUTH_DISCOVERY_URL` | — | OpenID Connect discovery URL | + +## Development + +```bash +npm install +npx prisma generate +npm run dev +``` + +## License + +MIT diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md new file mode 100644 index 0000000..13537c1 --- /dev/null +++ b/RELEASE_NOTES.md @@ -0,0 +1,99 @@ +## v0.0.1 (2026-04-10) + +Initial release of Web App Launcher — a self-hosted dashboard for organizing, monitoring, and launching web applications. + +### Features + +- **Dashboard system** — boards, sections, and widgets with drag-and-drop reordering ([b0d77d3](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/b0d77d3), [a6b09aa](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/a6b09aa)) +- **App registry & healthcheck** — register apps with icons, tags, categories; automatic status monitoring with sparkline history ([4d941f5](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/4d941f5), [c5f5f84](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/c5f5f84)) +- **Authentication** — local auth + OAuth/Authentik integration ([2c001df](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/2c001df), [bf4e508](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/bf4e508)) +- **Per-board access control** — role-based board visibility ([5bb4fbc](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/5bb4fbc)) +- **Service integrations** — media services, Planka, and six additional integration types ([114dee5](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/114dee5), [d73fb9c](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/d73fb9c), [55e220b](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/55e220b)) +- **Widget system** — multi-entity picker, column span resizing, visual app selector grid ([5af670f](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/5af670f), [f559c93](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/f559c93), [17c8407](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/17c8407)) +- **WYSIWYG inline editing** — edit dashboards in-place ([a6b09aa](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/a6b09aa)) +- **SQLite database backup** — replace JSON import/export with full DB backup ([b0439e3](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/b0439e3)) +- **Admin panel** — user management with deletion confirmation ([c5166ba](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/c5166ba), [65783e3](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/65783e3)) +- **Localization** — English and Russian ([477c0e4](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/477c0e4)) +- **PWA support** — installable app with auto-discovery and multi-tab sync ([dd6958b](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/dd6958b)) +- **UI polish** — ambient backgrounds, user theme overrides, bits-ui dropdown, collapsible sidebar ([0bd30c5](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/0bd30c5), [c6a7de8](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/c6a7de8), [b5166d9](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/b5166d9)) + +### Bug Fixes + +- SSRF protection on URL preview endpoint ([d90507a](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/d90507a)) +- Enforce API token scope on requests ([215c8fd](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/215c8fd)) +- HLS.js for fullscreen camera stream ([819283f](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/819283f)) +- Search dialog and store fixes ([c62ca79](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/c62ca79), [bcde710](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/bcde710)) +- SVG favicon and PWA manifest ([4326d95](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/4326d95)) +- Polish empty states and status page layout ([76ce85c](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/76ce85c)) + +### Performance + +- Batch-load app status history to eliminate N+1 requests ([aedc91e](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/aedc91e), [92eeead](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/92eeead)) +- Optimize cold start with lazy-loading icons and parallel DB queries ([1e3a04f](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/1e3a04f)) + +--- + +### Development / Internal + +- CI/CD pipeline: lint & test workflow, release workflow with Docker push and Gitea releases +- Prisma schema and migrations for all entities +- Linter and a11y warning cleanup ([44e1849](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/44e1849)) +- Security review fixes ([5a6002b](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/5a6002b)) + +--- + +
+All Commits + +| Hash | Message | Author | +|------|---------|--------| +| [76ce85c](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/76ce85c) | fix: polish empty states and status page layout | alexei.dolgolyov | +| [aedc91e](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/aedc91e) | perf: batch-load app status history server-side to eliminate N+1 requests | alexei.dolgolyov | +| [b5166d9](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/b5166d9) | refactor: header user menu with bits-ui dropdown, collapsible sidebar boards | alexei.dolgolyov | +| [44e1849](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/44e1849) | fix: resolve all linter errors and a11y warnings | alexei.dolgolyov | +| [f96cbbc](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/f96cbbc) | chore(i18n): add locale keys for widget resize, delete user, multi-picker | alexei.dolgolyov | +| [5af670f](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/5af670f) | feat: multi-entity picker for status widget app selection | alexei.dolgolyov | +| [f559c93](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/f559c93) | feat: widget column span resizing with visual size picker | alexei.dolgolyov | +| [65783e3](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/65783e3) | feat: user deletion confirmation modal | alexei.dolgolyov | +| [1e3a04f](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/1e3a04f) | perf: optimize cold start by lazy-loading icons and parallelizing DB queries | alexei.dolgolyov | +| [17c8407](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/17c8407) | feat(widget-config): visual app selector grid with search and icons | alexei.dolgolyov | +| [c5f5f84](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/c5f5f84) | feat(app-form): icon picker, tag/category autocomplete, typography | alexei.dolgolyov | +| [a6b09aa](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/a6b09aa) | feat(inline-edit): add WYSIWYG inline dashboard editing mode | alexei.dolgolyov | +| [b0439e3](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/b0439e3) | feat(backup): replace JSON import/export with SQLite database backup system | alexei.dolgolyov | +| [d479726](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/d479726) | feat: add app edit page with pre-populated form | alexei.dolgolyov | +| [44bbf7b](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/44bbf7b) | fix(service-integrations): resolve type errors and test failures | alexei.dolgolyov | +| [55e220b](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/55e220b) | feat(service-integrations): phases 9-10 — media integrations + Planka | alexei.dolgolyov | +| [d73fb9c](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/d73fb9c) | feat(service-integrations): phases 3-8 — six service integrations | alexei.dolgolyov | +| [50e8519](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/50e8519) | feat(service-integrations): phase 2 — integration widget & app form UI | alexei.dolgolyov | +| [114dee5](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/114dee5) | feat(service-integrations): phase 1 — integration architecture foundation | alexei.dolgolyov | +| [c62ca79](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/c62ca79) | fix: delay search dialog close so link navigation fires first | alexei.dolgolyov | +| [bcde710](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/bcde710) | fix: search store now parses API envelope response correctly | alexei.dolgolyov | +| [92eeead](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/92eeead) | perf: batch-load app history to eliminate N+1 fetches on board load | alexei.dolgolyov | +| [4326d95](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/4326d95) | fix: use SVG icon for favicon and PWA manifest | alexei.dolgolyov | +| [d90507a](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/d90507a) | fix: add SSRF protection to URL preview endpoint | alexei.dolgolyov | +| [819283f](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/819283f) | fix: use HLS.js for fullscreen camera stream | alexei.dolgolyov | +| [215c8fd](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/215c8fd) | fix: enforce API token scope on requests | alexei.dolgolyov | +| [014de02](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/014de02) | fix: address final review blockers | alexei.dolgolyov | +| [1c0a7cb](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/1c0a7cb) | feat: Phases 4-7 — Full Feature Expansion (26 features) | alexei.dolgolyov | +| [8d78478](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/8d78478) | feat: add IconGrid, EntityPicker controls and enhance search panel | alexei.dolgolyov | +| [395ed82](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/395ed82) | fix: address all final review findings for Phase 3 | alexei.dolgolyov | +| [7d8a8fb](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/7d8a8fb) | feat(phase3): phase 7 - integration & polish | alexei.dolgolyov | +| [dd6958b](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/dd6958b) | feat(phase3): PWA, auto-discovery, bookmarklet, multi-tab sync | alexei.dolgolyov | +| [c6a7de8](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/c6a7de8) | feat(phase3): import/export, sparklines, user theme overrides | alexei.dolgolyov | +| [cba160e](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/cba160e) | fix: address all code review findings | alexei.dolgolyov | +| [5a6002b](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/5a6002b) | fix: address security findings from final review | alexei.dolgolyov | +| [87ed928](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/87ed928) | feat(phase2): phase 6 - integration & polish | alexei.dolgolyov | +| [5bb4fbc](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/5bb4fbc) | feat(phase2): per-board access control UI | alexei.dolgolyov | +| [477c0e4](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/477c0e4) | feat(phase2): localization EN/RU + additional widget types | alexei.dolgolyov | +| [bf4e508](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/bf4e508) | feat(phase2): OAuth/Authentik integration + drag-and-drop reordering | alexei.dolgolyov | +| [bb3b1a5](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/bb3b1a5) | fix: resolve runtime errors and missing routes | alexei.dolgolyov | +| [e6b50fb](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/e6b50fb) | feat(mvp): phase 8 - integration, testing & deployment | alexei.dolgolyov | +| [0bd30c5](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/0bd30c5) | feat(mvp): phase 7 - UI polish & ambient backgrounds | alexei.dolgolyov | +| [c5166ba](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/c5166ba) | feat(mvp): phase 6 - admin panel | alexei.dolgolyov | +| [b0d77d3](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/b0d77d3) | feat(mvp): phase 5 - board, section & widget system | alexei.dolgolyov | +| [4d941f5](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/4d941f5) | feat(mvp): phase 4 - app registry & healthcheck | alexei.dolgolyov | +| [2c001df](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/2c001df) | feat(mvp): phase 3 - authentication system | alexei.dolgolyov | +| [f1b1aa5](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/f1b1aa5) | feat(mvp): phase 2 - database schema & services layer | alexei.dolgolyov | +| [cf6bde2](https://git.dolgolyov-family.by/alexei.dolgolyov/web-app-launcher/commit/cf6bde2) | feat(mvp): phase 1 - project scaffolding & tooling | alexei.dolgolyov | + +
diff --git a/package-lock.json b/package-lock.json index aa6be20..68bad9d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "web-app-launcher", - "version": "0.1.0", + "version": "0.0.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "web-app-launcher", - "version": "0.1.0", + "version": "0.0.1", "dependencies": { "@sveltejs/adapter-node": "^5.2.0", "@sveltejs/kit": "^2.16.0", diff --git a/package.json b/package.json index d98fe3c..ab315d2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "web-app-launcher", - "version": "0.1.0", + "version": "0.0.1", "private": true, "type": "module", "scripts": {