Skip to content

Conversation

@Inglan
Copy link
Member

@Inglan Inglan commented Oct 1, 2025

Summary by CodeRabbit

  • New Features
    • Added tools: QR Code Generator, Base64 Converter, JSON Formatter, Color Picker, URL Tools, Hash Generator, Lorem Generator, ASCII Art, Markdown Preview, Regex Tester.
  • Refactor
    • Updated navigation to include new tools; refined sidebar and header with a command/search trigger.
    • Experimental visuals toggle: conditional particles and layout tweaks on home page and sidebar.
  • Chores
    • Removed Mirrors pages and related navigation.
    • Upgraded dependencies; updated build/deploy workflows to newer pnpm action; removed legacy Infinityfree deploy.
    • Added pnpm workspace config for built dependencies.

Inglan and others added 29 commits September 24, 2025 22:18
Bumps [bits-ui](https://github.com/huntabyte/bits-ui) from 2.8.11 to 2.11.4.
- [Release notes](https://github.com/huntabyte/bits-ui/releases)
- [Commits](https://github.com/huntabyte/bits-ui/compare/bits-ui@2.8.11...bits-ui@2.11.4)

---
updated-dependencies:
- dependency-name: bits-ui
  dependency-version: 2.11.4
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [layerchart](https://github.com/techniq/layerchart) from 2.0.0-next.37 to 2.0.0-next.40.
- [Release notes](https://github.com/techniq/layerchart/releases)
- [Commits](https://github.com/techniq/layerchart/compare/layerchart@2.0.0-next.37...layerchart@2.0.0-next.40)

---
updated-dependencies:
- dependency-name: layerchart
  dependency-version: 2.0.0-next.40
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
…mponents

Co-authored-by: Inglan <96573515+Inglan@users.noreply.github.com>
…atures, fix layout issues

Co-authored-by: Inglan <96573515+Inglan@users.noreply.github.com>
…1d-454c-b5c9-26c0aef6d481

feat: Add 10 new educational tools using Svelte 5 runes and shadcn components
…/layerchart-2.0.0-next.40

Bump layerchart from 2.0.0-next.37 to 2.0.0-next.40
…/bits-ui-2.11.4

Bump bits-ui from 2.8.11 to 2.11.4
@vercel
Copy link

vercel bot commented Oct 1, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
edutools Ready Ready Preview Comment Oct 1, 2025 7:09am

@Inglan Inglan enabled auto-merge October 1, 2025 07:09
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 1, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

Updates CI to pnpm/action-setup v10 and removes an Infinityfree deploy step. Adds commandOpen shared state and gates some UI by experimentalFeatures. Expands navigation and landing layout. Removes mirrors feature and config. Introduces multiple new tools pages and minor state refactors in existing tools. Updates dependencies and pnpm workspace config.

Changes

Cohort / File(s) Summary
CI workflow updates
.github/workflows/beta_deploy.yml, .github/workflows/build.yml, .github/workflows/format.yml, .github/workflows/deploy.yml
Bump pnpm/action-setup v9→v10 across workflows; remove “Deploy to Infinityfree” step from deploy.yml.
Dependencies & workspace
package.json, pnpm-workspace.yaml
Bump various deps (e.g., svelte, tailwindcss, vite, posthog-js); add onlyBuiltDependencies list: @tailwindcss/oxide, core-js, esbuild.
Shared state & sidebar/layout
src/lib/state.svelte.ts, src/lib/components/app-sidebar.svelte, src/routes/+layout.svelte, src/routes/+page.svelte
Add exported commandOpen = $state({ current: false }); refactor sidebar/controls to use commandOpen.current; add experimentalFeatures gating in sidebar, layout header, and home hero/containers.
Navigation updates
src/lib/navigation.ts
Add multiple Tools items (QR, Base64, JSON, Color, URL, Hash, Lorem, ASCII Art, Markdown, Regex); remove Mirrors/Host a mirror entries.
Remove mirrors feature
src/routes/mirrors/+page.svelte, src/routes/mirrors/host/+page.svelte, src/routes/mirrors/mirrors.config.ts
Delete Mirrors page UI, Host page content, and mirrors config (type and array).
New Tools pages
src/routes/tools/ascii-art/+page.svelte, .../base64-converter/+page.svelte, .../color-picker/+page.svelte, .../hash-generator/+page.svelte, .../json-formatter/+page.svelte, .../lorem-generator/+page.svelte, .../markdown-preview/+page.svelte, .../qr-code-generator/+page.svelte, .../regex-tester/+page.svelte, .../url-tools/+page.svelte
Add new standalone tool pages implementing respective UIs and logic (input handling, actions, clipboard, derived outputs).
Existing Tools tweaks
src/routes/tools/converter/+page.svelte, src/routes/tools/calculator/+page.svelte, src/routes/tools/random-number-generator/+page.svelte
Switch several locals to $state(...); wrap reactive reset via run(...) in converter; initial display via $state('0') in calculator; state wrapping for RNG inputs/outputs.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  actor User
  participant Layout as +layout.svelte
  participant State as state.svelte.ts (commandOpen)
  participant Sidebar as app-sidebar.svelte
  User->>Layout: Click Search button
  Layout->>State: commandOpen.current = true
  Sidebar->>State: Bind Command.Dialog open to commandOpen.current
  State-->>Sidebar: current = true (dialog opens)
  User->>Sidebar: Close dialog
  Sidebar->>State: commandOpen.current = false
  State-->>Sidebar: current = false (dialog closes, input reset)
Loading
sequenceDiagram
  autonumber
  actor User
  participant Page as URL Tools (+page.svelte)
  participant API as TinyURL API
  User->>Page: Enter URL and click Shorten
  Page->>Page: Validate URL
  alt valid
    Page->>API: POST/GET shorten request
    API-->>Page: Short URL or error
    alt success
      Page->>Page: Set outputUrl, clear error
    else failure
      Page->>Page: Set error, clear outputUrl
    end
  else invalid
    Page->>Page: Show validation error
  end
  User->>Page: Copy result (if present)
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

Possibly related PRs

  • change some stuff #544 — Also introduces/exported commandOpen and updates sidebar/layout gating; overlaps with state and UI changes here.
  • Add better mirrors page #425 — Adds mirrors pages and config that this PR removes; directly related to mirrors feature lifecycle.
  • some changes #526 — Modifies CI pnpm setup similar to the v9→v10 bumps in this PR; overlaps in workflow files.

Suggested reviewers

  • nathblade16
✨ Finishing touches
  • 📝 Generate Docstrings
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch main

📜 Recent review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 9c59b58 and 98dc57b.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (27)
  • .github/workflows/beta_deploy.yml (1 hunks)
  • .github/workflows/build.yml (1 hunks)
  • .github/workflows/deploy.yml (1 hunks)
  • .github/workflows/format.yml (1 hunks)
  • package.json (1 hunks)
  • pnpm-workspace.yaml (1 hunks)
  • src/lib/components/app-sidebar.svelte (6 hunks)
  • src/lib/navigation.ts (1 hunks)
  • src/lib/state.svelte.ts (1 hunks)
  • src/routes/+layout.svelte (2 hunks)
  • src/routes/+page.svelte (2 hunks)
  • src/routes/mirrors/+page.svelte (0 hunks)
  • src/routes/mirrors/host/+page.svelte (0 hunks)
  • src/routes/mirrors/mirrors.config.ts (0 hunks)
  • src/routes/tools/ascii-art/+page.svelte (1 hunks)
  • src/routes/tools/base64-converter/+page.svelte (1 hunks)
  • src/routes/tools/calculator/+page.svelte (1 hunks)
  • src/routes/tools/color-picker/+page.svelte (1 hunks)
  • src/routes/tools/converter/+page.svelte (2 hunks)
  • src/routes/tools/hash-generator/+page.svelte (1 hunks)
  • src/routes/tools/json-formatter/+page.svelte (1 hunks)
  • src/routes/tools/lorem-generator/+page.svelte (1 hunks)
  • src/routes/tools/markdown-preview/+page.svelte (1 hunks)
  • src/routes/tools/qr-code-generator/+page.svelte (1 hunks)
  • src/routes/tools/random-number-generator/+page.svelte (1 hunks)
  • src/routes/tools/regex-tester/+page.svelte (1 hunks)
  • src/routes/tools/url-tools/+page.svelte (1 hunks)

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@cloudflare-workers-and-pages
Copy link

Deploying edutools-testing with  Cloudflare Pages  Cloudflare Pages

Latest commit: 0342a2d
Status: ✅  Deploy successful!
Preview URL: https://2add7a5d.edutools-testing.pages.dev
Branch Preview URL: https://main.edutools-testing.pages.dev

View logs

@Inglan Inglan merged commit 5feb111 into prod Oct 1, 2025
5 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants