├── .npmrc ├── src ├── routes │ ├── +layout.js │ ├── +page.js │ ├── +layout.svelte │ └── +page.svelte ├── app.css ├── app.html └── lib │ └── components │ └── BackTop.svelte ├── .prettierignore ├── static ├── img │ ├── dark.jpg │ └── light.jpg ├── favicon.svg └── data.json ├── postcss.config.js ├── vite.config.js ├── .prettierrc ├── .gitignore ├── svelte.config.js ├── jsconfig.json ├── tailwind.config.js ├── eslint.config.js ├── .github └── workflows │ └── build-and-deploy.yml ├── package.json ├── LICENSE ├── README.md └── pnpm-lock.yaml /.npmrc: -------------------------------------------------------------------------------- 1 | engine-strict=true 2 | -------------------------------------------------------------------------------- /src/routes/+layout.js: -------------------------------------------------------------------------------- 1 | export const prerender = true -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | # Package Managers 2 | package-lock.json 3 | pnpm-lock.yaml 4 | yarn.lock 5 | -------------------------------------------------------------------------------- /static/img/dark.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wefantasy/collector/HEAD/static/img/dark.jpg -------------------------------------------------------------------------------- /static/img/light.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wefantasy/collector/HEAD/static/img/light.jpg -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {} 5 | } 6 | }; 7 | -------------------------------------------------------------------------------- /src/app.css: -------------------------------------------------------------------------------- 1 | @import 'tailwindcss/base'; 2 | @import 'tailwindcss/components'; 3 | @import 'tailwindcss/utilities'; 4 | -------------------------------------------------------------------------------- /src/routes/+page.js: -------------------------------------------------------------------------------- 1 | export async function load({ fetch }) { 2 | const response = await fetch('/data.json'); 3 | const data = await response.json(); 4 | return { 5 | data 6 | }; 7 | } -------------------------------------------------------------------------------- /vite.config.js: -------------------------------------------------------------------------------- 1 | import { sveltekit } from '@sveltejs/kit/vite'; 2 | import { defineConfig } from 'vite'; 3 | 4 | export default defineConfig({ 5 | server: { 6 | host: '0.0.0.0', 7 | port: 8888 8 | }, 9 | plugins: [ 10 | sveltekit() 11 | ] 12 | }); 13 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "useTabs": true, 3 | "singleQuote": true, 4 | "trailingComma": "none", 5 | "printWidth": 160, 6 | "plugins": ["prettier-plugin-svelte", "prettier-plugin-tailwindcss"], 7 | "overrides": [ 8 | { 9 | "files": "*.svelte", 10 | "options": { 11 | "parser": "svelte" 12 | } 13 | } 14 | ] 15 | } 16 | -------------------------------------------------------------------------------- /src/routes/+layout.svelte: -------------------------------------------------------------------------------- 1 | 13 | 14 | {@render children()} 15 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | 3 | # Output 4 | .output 5 | .vercel 6 | .netlify 7 | .wrangler 8 | /.svelte-kit 9 | /build 10 | 11 | # OS 12 | .DS_Store 13 | Thumbs.db 14 | 15 | # Env 16 | .env 17 | .env.* 18 | !.env.example 19 | !.env.test 20 | 21 | # Vite 22 | vite.config.js.timestamp-* 23 | vite.config.ts.timestamp-* 24 | 25 | # Paraglide 26 | src/lib/paraglide -------------------------------------------------------------------------------- /src/app.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | %sveltekit.head% 8 | 9 | 10 |
%sveltekit.body%
11 | 12 | 13 | -------------------------------------------------------------------------------- /svelte.config.js: -------------------------------------------------------------------------------- 1 | import adapter from '@sveltejs/adapter-static'; 2 | 3 | /** @type {import('@sveltejs/kit').Config} */ 4 | const config = { 5 | kit: { 6 | // adapter-auto only supports some environments, see https://svelte.dev/docs/kit/adapter-auto for a list. 7 | // If your environment is not supported, or you settled on a specific environment, switch out the adapter. 8 | // See https://svelte.dev/docs/kit/adapters for more information about adapters. 9 | adapter: adapter() 10 | } 11 | }; 12 | 13 | export default config; 14 | -------------------------------------------------------------------------------- /jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./.svelte-kit/tsconfig.json", 3 | "compilerOptions": { 4 | "allowJs": true, 5 | "checkJs": false, 6 | "moduleResolution": "bundler" 7 | } 8 | // Path aliases are handled by https://svelte.dev/docs/kit/configuration#alias 9 | // except $lib which is handled by https://svelte.dev/docs/kit/configuration#files 10 | // 11 | // If you want to overwrite includes/excludes, make sure to copy over the relevant includes/excludes 12 | // from the referenced tsconfig.json - TypeScript does not merge them in 13 | } 14 | -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- 1 | const { addDynamicIconSelectors } = require('@iconify/tailwind'); 2 | 3 | /** @type {import('tailwindcss').Config} */ 4 | export default { 5 | content: ['./src/**/*.{html,js,svelte,ts}'], 6 | daisyui: { 7 | themes: [ 8 | { 9 | light: { 10 | ...require('daisyui/src/theming/themes')['corporate'] 11 | } 12 | }, 13 | { 14 | dark: { 15 | ...require('daisyui/src/theming/themes')['business'] 16 | } 17 | } 18 | ] 19 | }, 20 | theme: { 21 | extend: {} 22 | }, 23 | plugins: [require('daisyui'), addDynamicIconSelectors()] 24 | }; 25 | -------------------------------------------------------------------------------- /static/favicon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /eslint.config.js: -------------------------------------------------------------------------------- 1 | import prettier from 'eslint-config-prettier'; 2 | import js from '@eslint/js'; 3 | import { includeIgnoreFile } from '@eslint/compat'; 4 | import svelte from 'eslint-plugin-svelte'; 5 | import globals from 'globals'; 6 | import { fileURLToPath } from 'node:url'; 7 | const gitignorePath = fileURLToPath(new URL('./.gitignore', import.meta.url)); 8 | 9 | /** @type {import('eslint').Linter.Config[]} */ 10 | export default [ 11 | includeIgnoreFile(gitignorePath), 12 | js.configs.recommended, 13 | ...svelte.configs['flat/recommended'], 14 | prettier, 15 | ...svelte.configs['flat/prettier'], 16 | { 17 | languageOptions: { 18 | globals: { 19 | ...globals.browser, 20 | ...globals.node 21 | } 22 | } 23 | } 24 | ]; 25 | -------------------------------------------------------------------------------- /src/lib/components/BackTop.svelte: -------------------------------------------------------------------------------- 1 | 21 | 22 | 29 | -------------------------------------------------------------------------------- /.github/workflows/build-and-deploy.yml: -------------------------------------------------------------------------------- 1 | name: Build and Deploy 2 | 3 | on: 4 | push: 5 | branches: [main] 6 | workflow_dispatch: 7 | 8 | jobs: 9 | build-and-deploy: 10 | runs-on: ubuntu-latest 11 | permissions: 12 | contents: write 13 | steps: 14 | - name: Checkout code 15 | uses: actions/checkout@v4 16 | - name: Setup Node.js 17 | uses: actions/setup-node@v4 18 | with: 19 | node-version: "22.16.0" 20 | - name: Install dependencies 21 | run: npm ci 22 | - name: Build project 23 | run: npm run build 24 | - name: deploy 25 | uses: peaceiris/actions-gh-pages@v4 26 | with: 27 | github_token: ${{ secrets.GITHUB_TOKEN }} 28 | publish_dir: ./build 29 | publish_branch: gh-pages 30 | full_commit_message: ${{ github.event.head_commit.message }} -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "collector", 3 | "private": true, 4 | "version": "0.0.1", 5 | "type": "module", 6 | "scripts": { 7 | "dev": "vite dev", 8 | "build": "vite build", 9 | "preview": "vite preview", 10 | "format": "prettier --write .", 11 | "lint": "prettier --check . && eslint ." 12 | }, 13 | "devDependencies": { 14 | "@eslint/compat": "^1.2.5", 15 | "@eslint/js": "^9.18.0", 16 | "@sveltejs/adapter-static": "^3.0.8", 17 | "@sveltejs/kit": "^2.16.1", 18 | "@sveltejs/vite-plugin-svelte": "^5.0.3", 19 | "autoprefixer": "^10.4.20", 20 | "daisyui": "^4.12.23", 21 | "eslint": "^9.18.0", 22 | "eslint-config-prettier": "^10.0.1", 23 | "eslint-plugin-svelte": "^2.46.1", 24 | "globals": "^15.14.0", 25 | "prettier": "^3.4.2", 26 | "prettier-plugin-svelte": "^3.3.3", 27 | "prettier-plugin-tailwindcss": "^0.6.10", 28 | "svelte": "^5.19.1", 29 | "tailwindcss": "^3.4.17", 30 | "vite": "^6.0.11" 31 | }, 32 | "dependencies": { 33 | "@iconify/json": "^2.2.299", 34 | "@iconify/tailwind": "^1.2.0", 35 | "fuse.js": "^7.0.0", 36 | "theme-change": "^2.5.0" 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2025 风色幻想 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Collector 2 | 3 | [![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) 4 | 5 | Collector 是一个简约个人导航站点,帮助您高效管理和分类收藏的网站。 6 | 7 | ## 功能特性 8 | 9 | - 📁 网站多级分类管理 10 | - 🔍 标题、描述模糊检索 11 | - 🎨 主题切换 12 | - 📱 响应式设计 13 | - ⚙️ 自定义配置 14 | 15 | ## 示例 16 | 17 | ![example-light](./static/img/light.jpg) 18 | ![example-dark](./static/img/dark.jpg) 19 | 20 | ## 技术栈 21 | 22 | - **前端框架**: [Svelte](https://svelte.dev) v5 + [SvelteKit](https://kit.svelte.dev) v2 23 | - **构建工具**: [Vite](https://vitejs.dev) v6 24 | - **UI库**: [DaisyUI](https://daisyui.com) v4 + [TailwindCSS](https://tailwindcss.com) v3 25 | - **图标库**: [Iconify](https://iconify.design) 26 | - **搜索**: [Fuse.js](https://fusejs.io) 27 | 28 | ## 使用方法 29 | 30 | 1. [点此 Fork](https://github.com/wefantasy/collector/fork) 这个项目到你的 GitHub 账户 31 | 2. 在你 Fork 的仓库下点击 `Actions` -> `I understand my workflows, go ahead and enable them` 启动流水线 32 | 3. 点击 `Actions` -> `Build and Deploy` -> `Run workflow`,选择 `main` 分支并运行流水线,**等待运行完成** 33 | 4. 在 `Settings` -> `Pages` -> `Branch` 中选择 `gh-pages` 分支并 `Save` 34 | 5. 修改 `static/data.json` 文件并push到 `main` 分支 35 | 6. 访问你的站点:`https://your-github-username.github.io/collector/` 36 | 37 | ## 开发环境准备 38 | 39 | 1. 确认已安装 [Node.js](https://nodejs.org) (≥18.x) 40 | 2. 安装 pnpm: 41 | ```bash 42 | npm install -g pnpm 43 | ``` 44 | 3. 克隆项目: 45 | ```bash 46 | git clone https://github.com/wefantasy/collector.git 47 | ``` 48 | 4. 安装依赖: 49 | ```bash 50 | pnpm install 51 | ``` 52 | 5. 启动开发服务器: 53 | ```bash 54 | pnpm run dev 55 | ``` 56 | 57 | ## 项目结构 58 | 59 | ``` 60 | collector/ 61 | ├── src/ # 源代码 62 | │ ├── lib/ # 共享工具和组件 63 | │ ├── routes/ # 页面路由 64 | │ └── app.css # 全局样式 65 | ├── static/ # 静态资源 66 | ├── package.json # 项目依赖 67 | ├── vite.config.js # Vite 配置 68 | └── tailwind.config.js # Tailwind 配置 69 | ``` 70 | 71 | ## 贡献指南 72 | 73 | 欢迎贡献代码、报告问题或提出改进建议! 74 | 75 | 1. `Fork` 这个仓库 76 | 2. 创建你的特性分支 (`git checkout -b feature/amazing-feature`) 77 | 3. 提交你的改动 (`git commit -m 'Add some amazing feature`) 78 | 4. 推送到分支 (`git push origin feature/amazing-feature`) 79 | 5. 提交 `Pull Request` 80 | 81 | 82 | ## 许可证 83 | 84 | 本项目采用 [MIT 许可证](LICENSE)。 -------------------------------------------------------------------------------- /src/routes/+page.svelte: -------------------------------------------------------------------------------- 1 | 186 | 187 | 188 | Collector 189 | 190 | 191 | 247 | 248 | {#if isAsideVisible} 249 |
{ 252 | isAsideVisible = !isAsideVisible; 253 | }} 254 | >
255 | {/if} 256 | 257 | 292 | 293 |
294 |
295 | 310 | 311 |
312 | {#if searchResults.length > 0} 313 | {#each searchResults as result (result.item.url)} 314 |
315 | 316 | favicon 321 |
322 |

323 | {@html result.matches?.find((m) => m.key === 'title') 324 | ? highlightText(result.item.title, result.matches.find((m) => m.key === 'title').indices) 325 | : result.item.title} 326 |

327 |

328 | {result.item.url} 329 |

330 |
331 |
332 |
333 |

334 | {@html result.matches?.find((m) => m.key === 'description') 335 | ? highlightText(result.item.description, result.matches.find((m) => m.key === 'description').indices) 336 | : result.item.description} 337 |

338 |
339 |
340 | {/each} 341 | {:else} 342 | {#each filteredResults as item (item.url || item.path + '%' + item.title)} 343 | {#if item.type === 'folder'} 344 | handleFolderClick(item.path + '%' + item.title)} 348 | > 349 | 350 |

{item.title}

351 |
352 | {:else} 353 |
354 | 355 | favicon 360 |
361 |

{item.title}

362 |

{item.url}

363 |
364 |
365 |
366 |

{item.description}

367 |
368 |
369 | {/if} 370 | {/each} 371 | {/if} 372 |
373 |
374 | 375 | 376 | 377 |
378 |
379 | © 2025 collector, Design by 380 | wefantasy 381 |
382 |
383 |
384 | -------------------------------------------------------------------------------- /static/data.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "title": "生活办公", 4 | "type": "folder", 5 | "children": [ 6 | { 7 | "title": "Glance - 一个自托管的信息聚合仪表盘", 8 | "url": "https://github.com/glanceapp/glance", 9 | "icon": "", 10 | "categories": "生活办公", 11 | "tags": "自托管,仪表盘,信息聚合,RSS阅读器,首页管理", 12 | "description": "Glance 是一个自托管的仪表盘工具,能够将多个信息源汇聚到一个页面,包括 RSS 订阅、Subreddit 帖子、Hacker News 资讯、天气预报、YouTube 频道更新、Twitch 频道、市场价格、Docker 容器状态、服务器统计等。它轻量、快速,并支持多种自定义选项。" 13 | }, 14 | { 15 | "title": "深言达意 – 找词找句", 16 | "url": "https://www.shenyandayi.com/", 17 | "icon": "", 18 | "categories": "生活办公", 19 | "tags": "词汇检索,句子查找,素材库,AI辅助,写作工具", 20 | "description": "深言达意是一个提供词汇检索和句子查找的在线平台,帮助用户快速找到合适的词语和句子,提升写作效率。" 21 | }, 22 | { 23 | "title": "LocalSend: 开源跨平台的AirDrop替代方案", 24 | "url": "https://github.com/localsend/localsend", 25 | "icon": "https://github.com/favicon.ico", 26 | "categories": "生活办公", 27 | "tags": "文件共享,开源,跨平台,局域网,安全通信", 28 | "description": "LocalSend是一款免费开源的应用程序,允许您通过本地网络在附近设备之间安全地共享文件和消息,无需互联网连接。" 29 | }, 30 | { 31 | "title": "Weawow - Weather forecast & Photos", 32 | "url": "https://weawow.com/", 33 | "icon": "", 34 | "categories": "生活办公", 35 | "tags": "天气预报,照片分享,天气小部件,气象服务", 36 | "description": "Weawow是一款提供天气预报和照片分享服务的网站,用户可以查看实时天气信息,并上传和分享与天气相关的照片。" 37 | }, 38 | { 39 | "title": "Syncthing", 40 | "url": "https://syncthing.net/", 41 | "icon": "https://syncthing.net/img/favicon.png", 42 | "categories": "生活办公", 43 | "tags": "文件同步,数据安全,开源软件", 44 | "description": "Syncthing 是一个持续文件同步程序。它在两台或多台计算机之间实时同步文件,确保数据安全,不会被窥探。" 45 | }, 46 | { 47 | "title": "万彩办公大师官网-免费的办公工具百宝箱OfficeBox,绿色无广告无捆绑", 48 | "url": "https://www.wofficebox.com/", 49 | "icon": "http://www.wofficebox.com/favicon.ico", 50 | "categories": "生活办公", 51 | "tags": "办公工具,PDF工具,格式转换,图片处理,文件处理", 52 | "description": "万彩办公大师是一款免费的办公工具百宝箱,集合了60多个无广告的小工具,涵盖PDF处理、格式转换、图片编辑、文件处理等多种功能,适合各种办公需求。" 53 | }, 54 | { 55 | "title": "uTools官网 - 新一代效率工具平台", 56 | "url": "https://u.tools/", 57 | "icon": "https://u.tools/favicon.ico", 58 | "categories": "生活办公", 59 | "tags": "效率工具,插件,文件搜索,翻译,OCR,Markdown", 60 | "description": "uTools 是一个新一代的效率工具平台,提供多种插件应用,如本地文件搜索、在线翻译、OCR文字识别、Markdown笔记等,帮助用户提升工作效率。" 61 | }, 62 | { 63 | "title": "Pushbullet - Your devices working better together", 64 | "url": "https://www.pushbullet.com/", 65 | "icon": "https://www.pushbullet.com/favicon.ico", 66 | "categories": "生活办公", 67 | "tags": "设备连接,通知同步,文件传输,消息发送", 68 | "description": "Pushbullet 连接您的设备,使它们感觉像一个整体。您可以在电脑上发送和接收短信,查看手机通知,分享链接,聊天,发送文件等。" 69 | }, 70 | { 71 | "title": "OpenStreetMap", 72 | "url": "https://www.openstreetmap.org/about", 73 | "icon": "", 74 | "categories": "生活办公", 75 | "tags": "地图,开源,社区,地理信息系统", 76 | "description": "OpenStreetMap 是一个由地图制作爱好者组成的社区,提供并维护世界各地关于道路、小道、咖啡馆、铁路车站等各种各样的数据。它强调使用本地知识,社区驱动,并且数据开放。" 77 | }, 78 | { 79 | "title": "FreshRSS: A free, self-hostable news aggregator", 80 | "url": "https://github.com/FreshRSS/FreshRSS", 81 | "icon": "", 82 | "categories": "生活办公", 83 | "tags": "RSS,自托管,新闻聚合,多用户,自定义标签,API,命令行接口,WebSub,推送通知,Web抓取,JSON文档,HTML,OPML,登录方法,扩展", 84 | "description": "FreshRSS 是一个自托管的 RSS 聚合器。它轻量、易用、功能强大且可定制。支持多用户和匿名阅读模式,提供 API 和命令行接口,支持 WebSub 标准和基本的 Web 抓取,能够接收来自兼容源的即时推送通知。" 85 | }, 86 | { 87 | "title": "多寻地图 - 高铁、公交线路辐射图", 88 | "url": "https://bus.daibor.com/", 89 | "icon": "", 90 | "categories": "生活办公", 91 | "tags": "高铁,公交,线路,辐射图", 92 | "description": "多寻地图提供高铁和公交线路的辐射图,帮助用户查找和规划出行路线。" 93 | }, 94 | { 95 | "title": "Reactive Resume: 一个独特的简历生成器,注重隐私,完全安全、可定制、便携、开源且永久免费", 96 | "url": "https://github.com/AmruthPillai/Reactive-Resume", 97 | "icon": "", 98 | "categories": "生活办公", 99 | "tags": "简历生成器,开源,隐私保护,自定义,多语言", 100 | "description": "Reactive Resume 是一个免费且开源的简历生成器,简化了创建、更新和分享简历的过程。平台注重用户隐私,无广告追踪,支持多语言,提供实时编辑、拖放自定义、与OpenAI集成等功能。用户可以通过个性化链接分享简历,并跟踪其浏览和下载情况。" 101 | }, 102 | { 103 | "title": "一个基于 Android 调试 API + 百度地图实现的虚拟定位工具,并且同时实现了一个可以自由移动的摇杆", 104 | "url": "https://github.com/ZCShou/GoGoGo", 105 | "icon": "", 106 | "categories": "生活办公", 107 | "tags": "虚拟定位,安卓,摇杆,百度地图,调试API", 108 | "description": "影梭是一个基于 Android 调试 API + 百度地图及定位 SDK 实现的安卓定位修改工具,并且同时实现了一个可以自由控制移动的摇杆。使用影梭,不需要 ROOT 权限就可以随意修改自己的当前位置以及模拟移动。" 109 | }, 110 | { 111 | "title": "Macro Recorder for Windows/Mac - No more repetitive tasks", 112 | "url": "https://www.macrorecorder.com/", 113 | "icon": "https://www.macrorecorder.com/site/assets/files/1226/mrc_favicon.57x57.png", 114 | "categories": "生活办公", 115 | "tags": "宏录制,自动化,鼠标键盘录制,桌面自动化", 116 | "description": "Macro Recorder 是一款适用于 Windows 和 Mac 的桌面自动化软件。它可以捕捉鼠标事件和按键操作,帮助用户自动化重复性任务。该软件还集成了 OpenAI/ChatGPT 和自托管的 Ollama AI,以增强自动化功能。" 117 | }, 118 | { 119 | "title": "在线麦克风测试", 120 | "url": "https://www.onlinemictest.com/zh/", 121 | "icon": "", 122 | "categories": "生活办公", 123 | "tags": "麦克风测试,在线工具,故障排除", 124 | "description": "使用此在线工具检测您的麦克风是否设置正确。该网站提供简单有效的方法来快速测试麦克风,并提供故障排除指南。" 125 | }, 126 | { 127 | "title": "huginn/huginn: Create agents that monitor and act on your behalf.", 128 | "url": "https://github.com/huginn/huginn", 129 | "icon": "", 130 | "categories": "生活办公", 131 | "tags": "自动化,监控,数据处理", 132 | "description": "Huginn 是一个构建代理系统的工具,可以为您在线执行自动化任务。它可以读取网页、监控事件并代表您采取行动。" 133 | }, 134 | { 135 | "title": "imfile-io/imfile-desktop: A full-featured download manager.", 136 | "url": "https://github.com/imfile-io/imfile-desktop", 137 | "icon": "", 138 | "categories": "生活办公", 139 | "tags": "下载管理,开源软件,多线程下载", 140 | "description": "imFile 是一个功能齐全的下载管理器,支持 HTTP、FTP、BitTorrent、Magnet 等多种下载协议。界面简洁易用,支持多任务并发下载、速度限制、自动更新追踪器列表等功能。" 141 | }, 142 | { 143 | "title": "Ashinch/ReadYou: An Android RSS reader presented in Material You style.", 144 | "url": "https://github.com/Ashinch/ReadYou", 145 | "icon": "https://github.com/favicon.ico", 146 | "categories": "生活办公", 147 | "tags": "RSS阅读器,安卓,Material You,开源", 148 | "description": "Read You 是一个以 Material You 风格呈现的 Android RSS 阅读器。它支持订阅 RSS 链接、导入或导出 OPML 文件、新文章通知、文章可读性优化、全文解析、多账户支持、Bionic Reading、朗读功能和 Android 小部件等。" 149 | }, 150 | { 151 | "title": "Calibre - 电子书管理", 152 | "url": "https://calibre-ebook.com/", 153 | "icon": "https://calibre-ebook.com/favicon.png", 154 | "categories": "生活办公", 155 | "tags": "电子书,管理,阅读", 156 | "description": "Calibre 是一个功能强大的电子书管理软件,支持电子书的下载、管理、转换和阅读。" 157 | }, 158 | { 159 | "title": "一键导出PC微信聊天记录工具", 160 | "url": "https://github.com/git-jiadong/wechatDataBackup", 161 | "icon": "", 162 | "categories": "生活办公", 163 | "tags": "微信,聊天记录,导出工具", 164 | "description": "wechatDataBackup 是一个基于wails开发的PC微信聊天记录导出工具,支持图片、视频、链接、语音、文件等多种消息类型的导出,并提供按类型、日期、群成员等多种检索方式。" 165 | }, 166 | { 167 | "title": "PDF to Markdown with vision models", 168 | "url": "https://github.com/getomni-ai/zerox", 169 | "icon": "", 170 | "categories": "生活办公", 171 | "tags": "OCR,PDF,Markdown,视觉模型,开源", 172 | "description": "Zerox 是一个开源项目,提供了一种简单的方法将 PDF、DOCX、图片等文件转换为 Markdown 格式。它使用视觉模型进行 OCR 处理,支持 Node 和 Python 包。" 173 | }, 174 | { 175 | "title": "Focalboard: 开源自托管项目管理工具", 176 | "url": "https://github.com/mattermost-community/focalboard?tab=readme-ov-file", 177 | "icon": "", 178 | "categories": "生活办公", 179 | "tags": "开源,项目管理,自托管,Trello替代品,Notion替代品,Asana替代品", 180 | "description": "Focalboard 是一个开源的、多语言的、自托管的项目管理工具,是 Trello、Notion 和 Asana 的替代品。它帮助个人和团队定义、组织、跟踪和管理工作。" 181 | }, 182 | { 183 | "title": "全球液晶屏交易中心 - 屏库", 184 | "url": "https://www.panelook.cn/index_cn.php", 185 | "icon": "https://www.panelook.cn/favicon.ico", 186 | "categories": "生活办公", 187 | "tags": "液晶屏,显示模组,工业显示", 188 | "description": "屏库是一个全球液晶屏交易中心,提供各种液晶屏、显示模组、触摸屏等产品的销售和采购服务,适用于工业显示、商业显示等多种应用场景。" 189 | }, 190 | { 191 | "title": "医保政策导航", 192 | "url": "https://yibao.233h.com/", 193 | "icon": "", 194 | "categories": "生活办公", 195 | "tags": "医保政策,居民职工报销,政策查询,地区分类,特殊群体指南", 196 | "description": "一站式医保政策查询平台,提供基础知识、参保指南及政策详解,涵盖地区分类、常见问题解答和特殊群体使用指南,方便用户快速查找并了解医保相关信息。" 197 | } 198 | ] 199 | }, 200 | { 201 | "title": "编程开发", 202 | "type": "folder", 203 | "children": [ 204 | { 205 | "title": "Golang", 206 | "type": "folder", 207 | "children": [ 208 | { 209 | "title": "《Go语言定制指南》", 210 | "url": "https://github.com/chai2010/go-ast-book", 211 | "icon": "", 212 | "categories": "编程开发", 213 | "tags": "Go语言,语法树,编程,开源", 214 | "description": "《Go语言定制指南》是一本开源免费图书,介绍了Go语言语法树的相关知识和使用方法,适合有一定Go语言基础的开发者阅读。" 215 | }, 216 | { 217 | "title": "Go 程序员面试笔试宝典", 218 | "url": "https://golang.design/go-questions/", 219 | "icon": "", 220 | "categories": "编程开发", 221 | "tags": "Go语言,面试,笔试,编程,开发", 222 | "description": "本站包含了《Go 程序员面试笔试宝典》纸质版图书中的部分内容、对纸质版图书内容的部分更新以及勘误。推荐读者购买实体书籍配合本站共同使用。" 223 | }, 224 | { 225 | "title": "《Go语言四十二章经》详细讲述Go语言规范与语法细节及开发中常见的误区", 226 | "url": "https://github.com/ffhelicopter/Go42", 227 | "icon": "", 228 | "categories": "编程开发", 229 | "tags": "Go语言,编程,开发,规范,语法", 230 | "description": "《Go语言四十二章经》详细讲述Go语言规范与语法细节及开发中常见的误区,通过研读标准库等经典代码设计模式,启发读者深刻理解Go语言的核心思维,进入Go语言开发的更高阶段。" 231 | }, 232 | { 233 | "title": "深入Go语言之旅", 234 | "url": "https://go.cyub.vip/", 235 | "icon": "https://go.cyub.vip/favicon.png", 236 | "categories": "编程开发", 237 | "tags": "Go语言,编程,并发编程,内存管理,调度机制", 238 | "description": "《深入Go语言之旅》是一本从Go语言源码出发,分析Goroutine调度流程、通道、上下文等源码,以及defer、panic等语言特性的书籍,帮助读者更好地理解Go语言的设计与实现机制。" 239 | }, 240 | { 241 | "title": "golang | 学习笔记", 242 | "url": "https://blog.haohtml.com/golang", 243 | "icon": "", 244 | "categories": "编程开发", 245 | "tags": "Golang,编程,数据结构,算法,编程语言", 246 | "description": "《golang | 学习笔记》是一个涵盖Golang编程语言的学习资源网站,提供从入门到高级的教程、命令详解、编译器原理、内存管理、并发编程等内容,帮助编程爱好者深入理解和掌握Golang。" 247 | }, 248 | { 249 | "title": "前言 - Go gRPC 简明指南", 250 | "url": "https://jergoo.github.io/go-grpc-tutorial/", 251 | "icon": "https://jergoo.github.io/go-grpc-tutorial/favicon.svg", 252 | "categories": "编程开发", 253 | "tags": "gRPC,Go语言,分布式系统,编程,协议", 254 | "description": "《Go gRPC 简明指南》是一个高性能、开源、通用的 RPC 框架教程,旨在通过简单示例帮助新手快速学会使用 gRPC,内容包含 gRPC 常用功能特性及生态工具。" 255 | }, 256 | { 257 | "title": "Go 语言设计与实现", 258 | "url": "https://draveness.me/golang/", 259 | "icon": "", 260 | "categories": "编程开发", 261 | "tags": "Go语言,编程,编译原理,并发编程,内存管理", 262 | "description": "《Go 语言设计与实现》是一本深入分析 Go 语言设计与实现原理的书籍,涵盖编译原理、运行时、基础知识和进阶知识,帮助读者全面理解 Go 语言的设计与实现。" 263 | }, 264 | { 265 | "title": "前景 · Go语言中文文档", 266 | "url": "https://www.topgoer.com/", 267 | "icon": "", 268 | "categories": "编程开发", 269 | "tags": "Go语言,编程,并发编程,内存管理,调度机制", 270 | "description": "《前景 · Go语言中文文档》是一个全面的Go语言学习资源网站,涵盖从基础到高级的Go语言知识,包括并发编程、内存管理、调度机制等,帮助编程爱好者深入理解和掌握Go语言。" 271 | }, 272 | { 273 | "title": "Go语言高级编程", 274 | "url": "https://chai2010.cn/advanced-go-programming-book/", 275 | "icon": "", 276 | "categories": "编程开发", 277 | "tags": "Go语言,编程,CGO,汇编语言,RPC,Web开发,分布式系统", 278 | "description": "《Go语言高级编程》是一本涵盖CGO、Go汇编语言、RPC实现、Web框架实现、分布式系统等高阶主题的书籍,适合有一定Go语言经验的开发人员深入学习。" 279 | }, 280 | { 281 | "title": "最全空降golang资料补给包(满血战斗),包含文章,书籍,作者论文,理论分析,开源框架,云原生,大佬视频,大厂实战分享ppt", 282 | "url": "https://github.com/0voice/Introduction-to-Golang", 283 | "icon": "https://github.com/favicon.ico", 284 | "categories": "编程开发", 285 | "tags": "Golang,编程,服务器端,云原生,开源框架", 286 | "description": "0voice/Introduction-to-Golang 是一个提供全面Golang资料的开源项目,包含文章、书籍、作者论文、理论分析、开源框架、云原生、大佬视频和大厂实战分享PPT,旨在帮助开发者全面学习和掌握Golang。" 287 | } 288 | ] 289 | }, 290 | { 291 | "title": "Game", 292 | "type": "folder", 293 | "children": [ 294 | { 295 | "title": "扣哒世界 - 在场景化编程中学习Python,JavaScript和C++", 296 | "url": "https://codecombat.com/home", 297 | "icon": "", 298 | "categories": "编程开发", 299 | "tags": "编程,教育,游戏化学习,AI,计算机科学", 300 | "description": "扣哒世界通过创新的游戏体验,让学生在玩乐中学习编程和人工智能。平台提供多种编程语言和AI工具,适用于教育工作者、家长和学生,涵盖从基础编程到高级计算机科学课程。" 301 | }, 302 | { 303 | "title": "Grid Garden - 学习CSS Grid的游戏", 304 | "url": "https://cssgridgarden.com/", 305 | "icon": "https://cssgridgarden.com/favicon.ico", 306 | "categories": "编程开发", 307 | "tags": "CSS,编程,教育,游戏化学习,网页设计", 308 | "description": "Grid Garden 是一个通过游戏化体验学习CSS Grid布局的在线平台。用户通过编写CSS代码来种植胡萝卜,逐步掌握CSS Grid的使用技巧。适合网页设计师、前端开发者和编程爱好者。" 309 | }, 310 | { 311 | "title": "Flexbox Froggy - 学习CSS Flexbox的游戏", 312 | "url": "https://flexboxfroggy.com/", 313 | "icon": "https://flexboxfroggy.com/favicon.ico", 314 | "categories": "编程开发", 315 | "tags": "CSS,编程,教育,游戏化学习,网页设计", 316 | "description": "Flexbox Froggy 是一个通过游戏化体验学习CSS Flexbox布局的在线平台。用户通过编写CSS代码来引导青蛙到达荷叶,逐步掌握CSS Flexbox的使用技巧。适合网页设计师、前端开发者和编程爱好者。" 317 | }, 318 | { 319 | "title": "CheckiO - 编程游戏和挑战", 320 | "url": "https://checkio.org/", 321 | "icon": "", 322 | "categories": "编程开发", 323 | "tags": "编程游戏,Python,TypeScript,编程挑战", 324 | "description": "本站提供了一个互动式的编程游戏平台,通过有趣的挑战和任务,帮助初学者和高级程序员提升编程技能,支持Python和TypeScript。" 325 | }, 326 | { 327 | "title": "Coding Games and Programming Challenges to Code Better", 328 | "url": "https://www.codingame.com/start/", 329 | "icon": "https://www.codingame.com/favicon.ico", 330 | "categories": "编程开发", 331 | "tags": "编程游戏,编程挑战,代码提升", 332 | "description": "本站提供了一个互动式的编程游戏平台,通过游戏、谜题和挑战,帮助开发者提升编程技能。支持多种编程语言,并提供虚拟逃脱室和竞争性活动。" 333 | }, 334 | { 335 | "title": "Screeps - MMO strategy sandbox game for programmers", 336 | "url": "https://screeps.com/", 337 | "icon": "", 338 | "categories": "编程开发", 339 | "tags": "编程游戏,JavaScript,沙盒游戏,MMO", 340 | "description": "本站提供了一个开放源码的MMO沙盒游戏,核心机制是编写单位的AI。玩家通过编写JavaScript代码来控制自己的殖民地,提升编程技能。" 341 | } 342 | ] 343 | }, 344 | { 345 | "title": "Smithery - Model Context Protocol Registry", 346 | "url": "https://smithery.ai/", 347 | "icon": "", 348 | "categories": "编程开发", 349 | "tags": "AI集成,开发工具,模型协议,技能扩展", 350 | "description": "Smithery 是一个用于 AI 代理的集成工具,提供 7252 个技能和扩展组件,帮助开发者将 AI 与 Supabase、Mem0 Memory Tool、Vapi MCP Server 等服务进行无缝对接。它支持 GitHub API、Slack、Notion 等服务,并提供强大的工作流管理能力。" 351 | }, 352 | { 353 | "title": "gitignore.io - 为你的项目创建必要的 .gitignore 文件", 354 | "url": "https://www.toptal.com/developers/gitignore", 355 | "icon": "https://www.toptal.com/developers/gitignore/img/lightning.svg", 356 | "categories": "编程开发", 357 | "tags": "gitignore,编程,开发,版本控制", 358 | "description": "gitignore.io 是一个在线工具,可以为你的项目创建必要的 .gitignore 文件,支持多种操作系统、IDEs 和编程语言。" 359 | }, 360 | { 361 | "title": "开源许可证选择器 - 找到你的完美许可证", 362 | "url": "https://open-source-license-chooser.toolsnav.top/zh/", 363 | "icon": "", 364 | "categories": "编程开发", 365 | "tags": "开源,许可证,编程,开发", 366 | "description": "开源许可证选择器是一个在线工具,通过回答一系列问题,帮助用户找到最适合其项目的开源许可证。" 367 | }, 368 | { 369 | "title": "drawdb-io/drawdb: Free, simple, and intuitive online database diagram editor and SQL generator.", 370 | "url": "https://github.com/drawdb-io/drawdb", 371 | "icon": "", 372 | "categories": "编程开发", 373 | "tags": "数据库,图表,SQL,编程,开发", 374 | "description": "drawdb 是一个免费、简单且直观的在线数据库图表编辑器和 SQL 生成器。用户可以在浏览器中构建图表,导出 SQL 脚本,自定义编辑器等,无需创建账户。" 375 | }, 376 | { 377 | "title": "Compiler Explorer", 378 | "url": "https://godbolt.org/", 379 | "icon": "https://godbolt.org/favicon.ico", 380 | "categories": "编程开发", 381 | "tags": "编译器,代码,编程,开发", 382 | "description": "Compiler Explorer 是一个在线工具,允许用户编写、编译和查看代码的汇编输出,支持多种编程语言和编译器。" 383 | }, 384 | { 385 | "title": "Random User Generator", 386 | "url": "https://randomuser.me/", 387 | "icon": "", 388 | "categories": "编程开发", 389 | "tags": "随机用户,API,编程,开发", 390 | "description": "Random User Generator 是一个免费、开源的 API,用于生成随机用户数据,类似于 Lorem Ipsum,但用于人。" 391 | }, 392 | { 393 | "title": "NGINX配置生成器", 394 | "url": "https://github.com/digitalocean/nginxconfig.io", 395 | "icon": "", 396 | "categories": "编程开发", 397 | "tags": "NGINX,配置生成器,开源工具,DigitalOcean", 398 | "description": "NGINX配置生成器是一个强大的工具,旨在帮助用户生成最佳的NGINX配置。它支持多种功能,包括HTTPS、HTTP/2、IPv6、Certbot、HSTS、安全头、SSL配置、OCSP解析、缓存、Gzip、Brotli、回退路由、反向代理、CDN、PHP、Node.js和Python服务器等。" 399 | }, 400 | { 401 | "title": "DBeaver Community | 免费的通用数据库工具", 402 | "url": "https://dbeaver.io/", 403 | "icon": "https://dbeaver.io/favicon.png", 404 | "categories": "编程开发", 405 | "tags": "数据库,开源,跨平台,SQL,NoSQL", 406 | "description": "DBeaver Community 是一个免费的跨平台数据库工具,适用于开发人员、数据库管理员、分析师和所有与数据打交道的人。它支持所有流行的SQL数据库,如MySQL、MariaDB、PostgreSQL、SQLite、Apache Family等。" 407 | }, 408 | { 409 | "title": "Apifox - API 文档、调试、Mock、测试一体化协作平台", 410 | "url": "https://apifox.com/", 411 | "icon": "https://www.apifox.cn/favicon.ico", 412 | "categories": "编程开发", 413 | "tags": "API文档,接口调试,Mock,自动化测试,协作平台", 414 | "description": "Apifox 是一个集 API 文档、调试、Mock 和测试于一体的协作平台,旨在提升接口开发、测试和联调效率。它支持可视化 API 设计、自动化测试、Mock 数据生成等功能,适用于开发人员和测试人员。" 415 | }, 416 | { 417 | "title": "Notepad++", 418 | "url": "https://notepad-plus-plus.org/", 419 | "icon": "https://notepad-plus-plus.org/favicon.ico", 420 | "categories": "编程开发", 421 | "tags": "文本编辑器,代码编辑器,开源软件", 422 | "description": "Notepad++ 是一个免费的源代码编辑器和 Notepad 替代品,支持多种语言。它基于强大的 Scintilla 编辑组件,使用 C++ 编写,采用纯 Win32 API 和 STL,确保更高的执行速度和更小的程序体积。通过优化尽可能多的例程而不失用户友好性,Notepad++ 努力减少世界二氧化碳排放。" 423 | }, 424 | { 425 | "title": "muety/wakapi: A minimalist, self-hosted WakaTime-compatible backend for coding statistics", 426 | "url": "https://github.com/muety/wakapi", 427 | "icon": "", 428 | "categories": "编程开发", 429 | "tags": "自托管, 编码统计, WakaTime兼容, 开源, 开发者工具", 430 | "description": "Wakapi 是一个极简的、自托管的、兼容 WakaTime 的编码统计后端。它为项目、语言、编辑器、主机和操作系统提供统计数据,并支持 Prometheus 导出和 REST API。" 431 | }, 432 | { 433 | "title": "GrapesJS - Free and Open source Web Builder Framework", 434 | "url": "https://github.com/GrapesJS/grapesjs", 435 | "icon": "", 436 | "categories": "编程开发", 437 | "tags": "Web Builder, HTML模板, 开源, 无代码, 拖放", 438 | "description": "GrapesJS 是一个免费且开源的网页构建框架,帮助用户快速轻松地构建HTML模板,适用于网站、新闻通讯或移动应用。主要设计用于CMS中,以加速动态模板的创建。" 439 | }, 440 | { 441 | "title": "StackTrends 概览", 442 | "url": "https://stacktrends.dev/overview/", 443 | "icon": "", 444 | "categories": "编程开发", 445 | "tags": "技术趋势,编程语言,前端框架,后端框架,数据库管理系统", 446 | "description": "StackTrends 提供了关于技术趋势的详细数据,包括编程语言、前端框架、后端框架、数据库管理系统等的使用情况和变化趋势。" 447 | }, 448 | { 449 | "title": "OI Wiki", 450 | "url": "https://oi-wiki.org/", 451 | "icon": "https://oi-wiki.org/favicon.ico", 452 | "categories": "编程开发", 453 | "tags": "编程竞赛,信息学奥林匹克,ICPC,ACM竞赛,编程知识", 454 | "description": "OI Wiki 是一个致力于编程竞赛知识整合的免费开放站点,提供竞赛基础知识、常见题型、解题思路及常用工具,帮助学习编程竞赛相关知识。" 455 | }, 456 | { 457 | "title": "代码随想录", 458 | "url": "https://www.programmercarl.com/", 459 | "icon": "", 460 | "categories": "编程开发", 461 | "tags": "刷题,算法,编程,LeetCode,编程竞赛", 462 | "description": "代码随想录是一个致力于帮助编程爱好者高效刷题和学习算法的站点,提供详细的题解和刷题顺序,帮助用户循序渐进地掌握编程知识。" 463 | }, 464 | { 465 | "title": "Hello 算法", 466 | "url": "https://www.hello-algo.com/", 467 | "icon": "https://www.hello-algo.com/assets/images/favicon.png", 468 | "categories": "编程开发", 469 | "tags": "数据结构,算法,编程,动画图解,编程语言", 470 | "description": "Hello 算法是一本通俗易懂的数据结构与算法入门书,提供动画图解和一键运行的代码,帮助读者快速入门数据结构与算法。" 471 | }, 472 | { 473 | "title": "免费在线学习代码重构和设计模式", 474 | "url": "https://refactoringguru.cn/", 475 | "icon": "https://refactoringguru.cn/favicon.ico", 476 | "categories": "编程开发", 477 | "tags": "代码重构,设计模式,SOLID原则,编程,软件开发", 478 | "description": "Refactoring.Guru 是一个致力于免费在线学习代码重构、设计模式和SOLID原则的站点,提供详细的教程和示例,帮助开发者优化代码和设计。" 479 | }, 480 | { 481 | "title": "Java 面试指南", 482 | "url": "https://javaguide.cn/", 483 | "icon": "https://javaguide.cn/favicon.ico", 484 | "categories": "编程开发", 485 | "tags": "Java,面试指南,编程,技术博客,开源项目", 486 | "description": "Java 面试指南是一个涵盖 Java 程序员需要掌握的核心知识的站点,提供面试指南、开源项目、技术书籍等资源,帮助编程爱好者提升技能。" 487 | }, 488 | { 489 | "title": "凤凰架构:构建可靠的大型分布式系统", 490 | "url": "http://icyfenix.cn/", 491 | "icon": "http://icyfenix.cn/favicon.ico", 492 | "categories": "编程开发", 493 | "tags": "分布式系统,架构设计,微服务,云原生,软件开发", 494 | "description": "凤凰架构是一个致力于构建可靠的大型分布式系统的开源文档,提供从单体架构到微服务、服务网格、无服务架构的全面知识,帮助开发人员系统性地整理现代软件架构的各条分支知识点。" 495 | }, 496 | { 497 | "title": "Rust/Go/C/NASM 学习笔记", 498 | "url": "https://github.com/qyuhen/book", 499 | "icon": "https://github.com/favicon.ico", 500 | "categories": "编程开发", 501 | "tags": "学习笔记,编程,技术博客,开源项目", 502 | "description": "qyuhen/book 是一个涵盖多种编程语言和技术的学习笔记站点,提供详细的学习资源和教程,帮助编程爱好者提升技能。" 503 | }, 504 | { 505 | "title": "Auth Wiki", 506 | "url": "https://auth.wiki/zh", 507 | "icon": "https://auth.wiki/_astro/cover.BnyXQmpl.png", 508 | "categories": "编程开发", 509 | "tags": "认证,授权,身份管理,访问控制,安全", 510 | "description": "Auth Wiki 是一个致力于认证、授权、身份和访问管理(IAM)相关知识的站点,提供关于 OpenID Connect、OAuth 2.0 和 SAML 等开放标准的详细定义和解释,帮助用户理解和应用这些技术。" 511 | }, 512 | { 513 | "title": "Learn Git Branching", 514 | "url": "https://learngitbranching.js.org/?locale=zh_CN", 515 | "icon": "", 516 | "categories": "编程开发", 517 | "tags": "Git,版本控制,编程教程", 518 | "description": "本站提供了一个互动式的Git教程,通过沙盒环境和一系列关卡挑战,帮助用户深入学习Git的强大功能。" 519 | }, 520 | { 521 | "title": "深入架构原理与实践", 522 | "url": "https://www.thebyte.com.cn/", 523 | "icon": "", 524 | "categories": "编程开发", 525 | "tags": "架构设计,云原生,高可用系统,分布式系统,容器技术", 526 | "description": "《深入架构原理与实践》是一本关于架构设计的开源书籍,内容涵盖云原生技术、网络服务优化、Linux内核网络技术、负载均衡与代理技术、数据一致性与分布式事务、分布式共识与算法、容器编排技术、服务网格技术、系统可观测性以及应用的封装与交付等多个方面。" 527 | }, 528 | { 529 | "title": "系统设计入门:学习如何设计大规模系统,准备系统设计面试", 530 | "url": "https://github.com/donnemartin/system-design-primer", 531 | "icon": "", 532 | "categories": "编程开发", 533 | "tags": "系统设计,面试准备,开源项目,Anki闪卡", 534 | "description": "系统设计入门项目旨在帮助学习者掌握大规模系统设计的知识,并为系统设计面试做好准备。项目包含丰富的资源、示例问题及解决方案,以及Anki闪卡,适合希望提升系统设计能力的工程师。" 535 | }, 536 | { 537 | "title": "在线JSON工具 - 轻松格式化、编辑、验证和查看JSON", 538 | "url": "https://www.online-json.com/", 539 | "icon": "", 540 | "categories": "编程开发", 541 | "tags": "JSON,格式化,编辑,验证,查看", 542 | "description": "在线JSON工具提供强大的功能,帮助用户轻松格式化、验证、编辑和可视化JSON数据。该工具旨在提高生产力,确保数据完整性,并简化工作流程。用户可以在浏览器中快速、安全地管理JSON数据,享受便捷的操作体验。" 543 | }, 544 | { 545 | "title": "FreeFrontend", 546 | "url": "https://freefrontend.com/", 547 | "icon": "", 548 | "categories": "编程开发", 549 | "tags": "前端开发, HTML, CSS, JavaScript, 编程资源", 550 | "description": "FreeFrontend是一个为前端开发者提供丰富资源的综合平台,包含HTML、CSS、JavaScript等技术的免费代码片段,助力开发者构建更优秀的网站项目。" 551 | }, 552 | { 553 | "title": "JETBRA.IN CHECKER | IPFS", 554 | "url": "https://3.jetbra.in/", 555 | "icon": "", 556 | "categories": "编程开发", 557 | "tags": "IPFS,节点检查,Jetbran,分布式存储", 558 | "description": "JETBRA.IN CHECKER 是一个用于科学使用 JetBrains 产品的工具" 559 | }, 560 | { 561 | "title": "正则表达式可视化-Visual Regexp:在线测试、学习、构建正则表达式", 562 | "url": "https://wangwl.net/static/projects/visualRegex#", 563 | "icon": "", 564 | "categories": "编程开发", 565 | "tags": "正则表达式,工具,在线测试,正则语法,编程辅助", 566 | "description": "Visual Regexp 是一个用于正则表达式的可视化工具,提供在线测试、语法学习和正则表达式构建功能,为开发者提供便捷的编程辅助。" 567 | }, 568 | { 569 | "title": "Smithery - Model Context Protocol Registry", 570 | "url": "https://smithery.ai/", 571 | "icon": "", 572 | "categories": "编程开发", 573 | "tags": "MCP服务器,工具集成,动态路由,模型扩展,注册表", 574 | "description": "Smithery 提供基于模型上下文协议的服务器集成服务,让代理具备更多能力。用户可动态路由至注册表中的所有MCP,支持配置工具回调,涵盖编程开发和任务自动化等功能,提升效率与扩展性。" 575 | }, 576 | { 577 | "title": "DeepWiki", 578 | "url": "https://deepwiki.com/", 579 | "icon": "", 580 | "categories": "编程开发", 581 | "tags": "开源,代码库,知识共享", 582 | "description": "DeepWiki是一个帮助用户了解代码仓库的工具,分析仓库架构、生成架构文档,如Visual Studio Code、LangChain等热门开源项目。这是一个以知识共享为核心的开放平台。" 583 | }, 584 | { 585 | "title": "GitHub Trends", 586 | "url": "https://www.github-trends.dev/", 587 | "icon": "", 588 | "categories": "编程开发", 589 | "tags": "开源,GitHub,趋势分析", 590 | "description": "GitHub Trends 是一个帮助开发者分析开源项目趋势的网站,可以比较 GitHub 仓库的星标增长、提交次数、发布版本等数据,为开发者决策提供参考。" 591 | } 592 | ] 593 | }, 594 | { 595 | "title": "系统优化", 596 | "type": "folder", 597 | "children": [ 598 | { 599 | "title": "Kopia: 跨平台备份工具,支持快速增量备份、客户端端到端加密、压缩和数据去重", 600 | "url": "https://github.com/kopia/kopia", 601 | "icon": "", 602 | "categories": "系统优化", 603 | "tags": "备份,加密,数据去重,跨平台,开源", 604 | "description": "Kopia 是一个快速、安全的开源备份/恢复工具,支持创建数据的加密快照,并将快照保存到远程或云存储、网络附加存储或本地机器。Kopia 提供 CLI 和 GUI 版本,适合高级用户和普通用户。" 605 | }, 606 | { 607 | "title": "WizTree - The Fastest Disk Space Analyzer", 608 | "url": "https://www.diskanalyzer.com/", 609 | "icon": "https://www.diskanalyzer.com/favicon.ico", 610 | "categories": "系统优化", 611 | "tags": "磁盘空间,文件管理,快速扫描", 612 | "description": "WizTree是一款极快的磁盘空间分析工具,能够帮助用户快速找到占用硬盘空间最多的文件和文件夹。它免费供个人使用,并且被许多大型组织所信赖。" 613 | }, 614 | { 615 | "title": "Rapid Environment Editor", 616 | "url": "https://www.rapidee.com/en/about", 617 | "icon": "", 618 | "categories": "系统优化", 619 | "tags": "环境变量,编辑器,Windows", 620 | "description": "Rapid Environment Editor 是一个环境变量编辑器。它包括一个易于使用的图形用户界面,取代了Windows的小而不便的编辑框。支持多种Windows版本,包括XP、Vista、7、8和10。" 621 | }, 622 | { 623 | "title": "Ventoy: 一个新的可启动USB解决方案", 624 | "url": "https://github.com/ventoy/Ventoy", 625 | "icon": "", 626 | "categories": "系统优化", 627 | "tags": "USB启动, 多系统启动, 开源工具, ISO文件, UEFI支持", 628 | "description": "Ventoy是一个开源工具,用于创建可启动的USB驱动器,支持ISO/WIM/IMG/VHD(x)/EFI文件。无需反复格式化磁盘,只需将镜像文件复制到USB驱动器并启动。支持多种操作系统,包括Windows、Linux、Unix等。" 629 | }, 630 | { 631 | "title": "PC Builds 门户网站", 632 | "url": "https://pc-builds.com/zh/", 633 | "icon": "", 634 | "categories": "系统优化", 635 | "tags": "PC构建, 瓶颈计算器, 显卡比较", 636 | "description": "PC Builds 门户网站提供多种计算器,帮助用户构建完美的PC,减少计算机瓶颈,并查看可以运行的游戏。" 637 | } 638 | ] 639 | }, 640 | { 641 | "title": "网络安全", 642 | "type": "folder", 643 | "children": [ 644 | { 645 | "title": "BUGBANK 官方网站 | 领先的网络安全漏洞发现品牌", 646 | "url": "https://skills.bugbank.cn/", 647 | "icon": "", 648 | "categories": "网络安全", 649 | "tags": "漏洞发现,网络安全,渗透测试", 650 | "description": "BUGBANK 是一个领先的网络安全漏洞发现平台,致力于开放安全的提出与倡导。该平台提供了丰富的技能树和教程,涵盖基础知识、进阶技术、代码审计、漏洞分析等多个方面,适用于网络安全研究和渗透测试。" 651 | }, 652 | { 653 | "title": "第1章 Linux安全渗透简介 | 大学霸 Kali Linux 安全渗透教程", 654 | "url": "https://wizardforcel.gitbooks.io/daxueba-kali-linux-tutorial/content/0.html", 655 | "icon": "", 656 | "categories": "网络安全", 657 | "tags": "安全渗透, Kali Linux, 渗透测试", 658 | "description": "本教程介绍了Linux安全渗透的基础知识和工具,包括Kali Linux的安装、更新与升级、基本设置等内容,适用于网络安全研究和渗透测试。" 659 | }, 660 | { 661 | "title": "VirusTotal - Home", 662 | "url": "https://www.virustotal.com/gui/home/upload", 663 | "icon": "https://www.virustotal.com/favicon.ico", 664 | "categories": "网络安全", 665 | "tags": "病毒检测,恶意软件分析,安全社区", 666 | "description": "VirusTotal 是一个在线服务,用于分析可疑文件、域名、IP地址和URL,以检测恶意软件和其他安全漏洞,并自动与安全社区共享分析结果。" 667 | }, 668 | { 669 | "title": "RainbowCrack - List of Rainbow Tables", 670 | "url": "http://project-rainbowcrack.com/table.htm", 671 | "icon": "", 672 | "categories": "网络安全", 673 | "tags": "彩虹表,哈希破解,密码安全", 674 | "description": "RainbowCrack 是一个用于生成和使用彩虹表进行哈希破解的工具。该页面列出了各种算法的彩虹表,包括NTLM、MD5和SHA1等,提供了详细的表格规格和性能数据。" 675 | }, 676 | { 677 | "title": "CTF Wiki - 简介", 678 | "url": "https://ctf-wiki.org/", 679 | "icon": "", 680 | "categories": "网络安全", 681 | "tags": "CTF,网络安全,学习资源", 682 | "description": "CTF Wiki 是一个专注于CTF(夺旗赛)相关知识和技术的在线资源库,旨在帮助初学者系统性地学习CTF相关领域的知识。" 683 | }, 684 | { 685 | "title": "T00ls | 低调求发展 - 潜心习安全 - T00ls.Com", 686 | "url": "https://www.t00ls.com/", 687 | "icon": "https://www.t00ls.cc/favicon.ico", 688 | "categories": "网络安全", 689 | "tags": "网络安全,漏洞检测,渗透测试", 690 | "description": "T00ls 是一个专注于网络安全的社区,提供安全资讯、漏洞监测、技术文章和安全工具等资源,旨在帮助用户提升网络安全技能。" 691 | }, 692 | { 693 | "title": "Attack Surface Management and Threat Hunting Solutions | Censys", 694 | "url": "https://censys.com/", 695 | "icon": "https://censys.io/favicon.ico", 696 | "categories": "网络安全", 697 | "tags": "攻击面管理,威胁狩猎,互联网情报", 698 | "description": "Censys 是一个领先的互联网情报平台,专注于威胁狩猎和攻击面管理。它为安全团队提供最全面、准确和最新的互联网地图,以防御攻击面和寻找威胁。" 699 | }, 700 | { 701 | "title": "网络空间测绘,网络空间安全搜索引擎,网络空间搜索引擎,安全态势感知 - FOFA网络空间测绘系统", 702 | "url": "https://fofa.info/", 703 | "icon": "", 704 | "categories": "网络安全", 705 | "tags": "网络空间测绘,安全搜索引擎,态势感知", 706 | "description": "FOFA网络空间测绘系统是一个网络空间安全搜索引擎,提供网络空间测绘和安全态势感知服务,帮助用户了解和监控网络空间的安全状况。" 707 | }, 708 | { 709 | "title": "Shodan 搜索引擎", 710 | "url": "https://www.shodan.io/", 711 | "icon": "", 712 | "categories": "网络安全", 713 | "tags": "互联网,设备搜索,网络安全,监控", 714 | "description": "Shodan 是世界上第一个用于互联网连接设备的搜索引擎。它可以帮助用户发现从电厂、手机、冰箱到 Minecraft 服务器等各种设备,并提供全面的网络暴露监控和互联网情报。" 715 | }, 716 | { 717 | "title": "Aegis:一个免费的、安全的开源安卓应用,用于管理你的两步验证令牌", 718 | "url": "https://github.com/beemdevelopment/Aegis", 719 | "icon": "https://getaegis.app/images/icon.png", 720 | "categories": "网络安全", 721 | "tags": "安卓,开源,2FA,安全,加密", 722 | "description": "Aegis Authenticator 是一个免费的、安全的开源安卓应用,用于管理你的两步验证令牌。它旨在为你的在线服务提供一个安全的身份验证器,同时还包括一些现有身份验证器应用中缺失的功能,如适当的加密和备份。Aegis 支持 HOTP 和 TOTP,使其兼容数千种服务。" 723 | }, 724 | { 725 | "title": "ZeroTier | 全球联网解决方案", 726 | "url": "https://www.zerotier.com/", 727 | "icon": "https://www.zerotier.com/favicon.ico", 728 | "categories": "网络安全", 729 | "tags": "全球联网, IoT, SD-WAN, VPN, 安全网络, 设备连接", 730 | "description": "ZeroTier 提供简单的全球联网解决方案,适用于 IoT 设备、SD-WAN 和 VPN。通过轻量级代理和独特的网络结构,用户可以轻松连接和管理设备,确保数据的端到端加密和设备的可信连接。" 731 | }, 732 | { 733 | "title": "VeraCrypt - 免费开源磁盘加密软件,提供强大安全性", 734 | "url": "https://veracrypt.fr/en/Home.html", 735 | "icon": "https://veracrypt.fr/favicon.ico", 736 | "categories": "网络安全", 737 | "tags": "磁盘加密,开源软件,数据安全", 738 | "description": "VeraCrypt 是一款免费开源的磁盘加密软件,适用于 Windows、Mac OSX 和 Linux 系统。它可以创建虚拟加密磁盘、加密整个分区或存储设备,并提供预启动身份验证。VeraCrypt 增强了加密算法的安全性,解决了 TrueCrypt 的许多漏洞和安全问题。" 739 | }, 740 | { 741 | "title": "Cheat Engine", 742 | "url": "https://www.cheatengine.org/", 743 | "icon": "", 744 | "categories": "网络安全", 745 | "tags": "Cheat Engine,游戏修改,内存编辑", 746 | "description": "Cheat Engine 是一个开源的内存编辑工具,主要用于修改单机游戏的内存数据,从而实现游戏作弊。它提供了多种功能,包括内存扫描、调试、反汇编等,适合编程开发和游戏爱好者使用。" 747 | } 748 | ] 749 | }, 750 | { 751 | "title": "人工智障", 752 | "type": "folder", 753 | "children": [ 754 | { 755 | "title": "SuperCLUE中文大模型测评基准——评测榜单", 756 | "url": "https://www.superclueai.com/", 757 | "icon": "", 758 | "categories": "科研教育", 759 | "tags": "大模型,人工智能,测评基准,排行榜,模型评测", 760 | "description": "SuperCLUE是一个针对中文大模型的综合性测评基准,提供多个维度的模型测评结果,包括视觉推理、忠实性幻觉、文生图、智能体等。最新发布的2025年5月测评成绩涵盖多家机构的大模型表现,为行业提供参考。" 761 | }, 762 | { 763 | "title": "AI Model & API Providers Analysis", 764 | "url": "https://artificialanalysis.ai/", 765 | "icon": "", 766 | "categories": "人工智障", 767 | "tags": "AI模型,API提供商,独立分析", 768 | "description": "本站提供对AI模型和API提供商的独立分析,帮助用户了解AI领域的最新动态,选择最适合其使用场景的模型和提供商。" 769 | }, 770 | { 771 | "title": "Chatbot Arena: Free AI Chat to Compare & Test Best AI Chatbots", 772 | "url": "https://lmarena.ai/", 773 | "icon": "", 774 | "categories": "人工智障", 775 | "tags": "AI,聊天机器人,比较,测试,排行榜", 776 | "description": "Chatbot Arena是一个由UC Berkeley SkyLab和LMArena研究人员开发的开放平台,用于众包AI基准测试。该平台通过Bradley-Terry模型生成实时排行榜,评估最佳LLM和AI聊天机器人。" 777 | }, 778 | { 779 | "title": "LiblibAI-哩布哩布AI - 中国领先的AI创作平台", 780 | "url": "https://www.liblib.art/", 781 | "icon": "", 782 | "categories": "人工智障", 783 | "tags": "AI,创作平台,生成式人工智能,模型训练,灵感", 784 | "description": "LiblibAI是中国领先的AI创作平台,提供多种生成式人工智能服务,包括模型训练、在线生图、工作流等,帮助用户实现创作灵感。" 785 | }, 786 | { 787 | "title": "AI图像高档 - 免费放大和增强您的照片", 788 | "url": "https://www.upscale.media/zh", 789 | "icon": "", 790 | "categories": "人工智障", 791 | "tags": "AI,图像增强,图像放大,照片修复,图像处理", 792 | "description": "AI图像高档是一个利用人工智能技术免费放大和增强图像的平台,支持多种图像格式,提供批量转换和API集成等功能,帮助用户提升图像质量。" 793 | }, 794 | { 795 | "title": "Fix Noisy and Degraded Images - Pix Fix", 796 | "url": "https://pixfix.com/", 797 | "icon": "", 798 | "categories": "人工智障", 799 | "tags": "图像修复,降噪,图像增强,照片处理,在线工具", 800 | "description": "Pix Fix是一个免费在线工具,使用专有算法修复受噪声和过度JPEG压缩损坏的图像,支持批量处理,确保图像安全。" 801 | }, 802 | { 803 | "title": "SiliconFlow, Accelerate AGI to Benefit Humanity", 804 | "url": "https://siliconflow.cn/zh-cn/", 805 | "icon": "https://framerusercontent.com/images/4li2PjWxZJmoGkzXRMJWU1rJmI.svg", 806 | "categories": "人工智障", 807 | "tags": "AGI,生成式人工智能,高效推理", 808 | "description": "SiliconFlow 提供快速高效的生成式人工智能推理软件栈,旨在提高开发效率并降低使用成本。其技术栈包括快速图像生成能力和低时延高吞吐的LLM推理能力。" 809 | }, 810 | { 811 | "title": "SWE-bench: Can Language Models Resolve Real-World GitHub Issues?", 812 | "url": "https://www.swebench.com/", 813 | "icon": "", 814 | "categories": "人工智障", 815 | "tags": "GitHub,自动化,编程,AI,机器学习", 816 | "description": "SWE-bench 是一个测试系统自动解决 GitHub 问题的数据集。该数据集收集了 12 个流行 Python 仓库中的 2294 个 Issue-Pull Request 对。评估通过单元测试验证,使用 PR 后的行为作为参考解决方案。" 817 | }, 818 | { 819 | "title": "LiveBench: A Challenging, Contamination-Free LLM Benchmark", 820 | "url": "https://livebench.ai/#/", 821 | "icon": "", 822 | "categories": "人工智障", 823 | "tags": "LLM,排行榜,基准测试,人工智能", 824 | "description": "LiveBench 是一个为大语言模型(LLM)设计的基准测试平台,旨在通过每月发布新问题和基于最新数据集、论文、新闻文章和电影简介的问题来限制潜在的污染。每个问题都有可验证的客观答案,允许准确和自动评分。" 825 | }, 826 | { 827 | "title": "Open LLM Leaderboard", 828 | "url": "https://huggingface.co/spaces/open-llm-leaderboard/open_llm_leaderboard#/", 829 | "icon": "", 830 | "categories": "人工智障", 831 | "tags": "LLM,排行榜,机器学习,人工智能", 832 | "description": "Open LLM Leaderboard 是一个展示和比较不同大语言模型(LLM)性能的排行榜。" 833 | }, 834 | { 835 | "title": "Bylo.ai:最佳免费AI图像生成器", 836 | "url": "https://bylo.ai/zh-CN", 837 | "icon": "", 838 | "categories": "人工智障", 839 | "tags": "AI图像生成,文本生成图像,自定义图像,Flux AI", 840 | "description": "Bylo.ai 是一个高级AI图像生成器,用户可以免费、快速且可定制地将文本描述转换为高质量图像。支持负面提示和多种模型(包括流行的Flux AI图像生成器),适用于需要精确控制视觉输出的用户。" 841 | }, 842 | { 843 | "title": "edge-tts: 使用微软Edge的在线文本转语音服务 - Python", 844 | "url": "https://github.com/rany2/edge-tts", 845 | "icon": "", 846 | "categories": "人工智障", 847 | "tags": "文本转语音,Python模块,微软Edge,tts,编程工具", 848 | "description": "edge-tts 是一个Python模块,可使用微软Edge的在线文本转语音服务,无需微软Edge浏览器或Windows系统。" 849 | }, 850 | { 851 | "title": "OpenMMLab", 852 | "url": "https://openmmlab.com/", 853 | "icon": "", 854 | "categories": "科研教育", 855 | "tags": "计算机视觉,开源项目,学术研究,工业应用", 856 | "description": "OpenMMLab 是一个开源项目平台,涵盖了计算机视觉的广泛研究主题,如分类、检测、分割和超分辨率。" 857 | }, 858 | { 859 | "title": "【布客】PyTorch 中文翻译", 860 | "url": "https://pytorch.apachecn.org/", 861 | "icon": "", 862 | "categories": "科研教育", 863 | "tags": "PyTorch,深度学习,中文文档,教程", 864 | "description": "【布客】PyTorch 中文翻译提供了 PyTorch 的中文文档和教程,涵盖了多个版本的 PyTorch,旨在帮助中文用户更好地理解和使用 PyTorch 进行深度学习研究和开发。" 865 | }, 866 | { 867 | "title": "蘑菇书EasyRL", 868 | "url": "https://datawhalechina.github.io/easy-rl/#/", 869 | "icon": "", 870 | "categories": "科研教育", 871 | "tags": "强化学习,深度学习,教程,开源项目", 872 | "description": "蘑菇书EasyRL 是一本关于强化学习的中文教程,涵盖了从基础到高级的强化学习理论和实践,适合想要入门和深入学习强化学习的读者。" 873 | }, 874 | { 875 | "title": "Datawhale-学用AI,从此开始", 876 | "url": "https://www.datawhale.cn/home", 877 | "icon": "https://oss.linklearner.com/SEO/logo.png", 878 | "categories": "科研教育", 879 | "tags": "AI学习,开源项目,数据分析,计算机视觉,自然语言处理,推荐系统", 880 | "description": "Datawhale 是一个致力于通过开源学习模式,推动AI人才培养的平台。它提供了丰富的AI学习资源,包括数据分析、计算机视觉、自然语言处理和推荐系统等学习路径,适合初学者和开发者。" 881 | } 882 | ] 883 | }, 884 | { 885 | "title": "影音娱乐", 886 | "type": "folder", 887 | "children": [ 888 | { 889 | "title": "小鱼.🐟 | TV-LIVE", 890 | "url": "https://xuanzi.ggff.net/", 891 | "icon": "", 892 | "categories": "影音娱乐", 893 | "tags": "在线影视, 直播, 视频资源", 894 | "description": "该网站提供多种在线影视和直播资源,包括流媒体观看地址及相关资源的接口链接,为用户带来丰富的视频娱乐内容。" 895 | }, 896 | { 897 | "title": "Movie metadata scraper", 898 | "url": "https://github.com/sqzw-x/mdcx", 899 | "icon": "https://github.com/favicon.ico", 900 | "categories": "影音娱乐", 901 | "tags": "Python,元数据,爬虫,电影,Emby,Jellyfin", 902 | "description": "MDCx 是一个基于 Python 的电影元数据抓取工具,支持 Emby 和 Jellyfin 等媒体服务器。" 903 | }, 904 | { 905 | "title": "Open Broadcaster Software | OBS", 906 | "url": "https://obsproject.com/", 907 | "icon": "https://obsproject.com/favicon.ico", 908 | "categories": "影音娱乐", 909 | "tags": "视频录制,直播,开源软件", 910 | "description": "OBS Studio 是一款免费且开源的视频录制和直播软件,支持 Windows、Mac 和 Linux 平台。它提供高性能的实时视频/音频捕捉和混合功能,支持多种来源的场景创建和切换,具有直观的音频混音器和强大的配置选项。" 911 | }, 912 | { 913 | "title": "Legado 3.0 Book Reader with powerful controls & full functions❤️阅读3.0", 914 | "url": "https://github.com/gedoor/legado", 915 | "icon": "https://github.com/favicon.ico", 916 | "categories": "影音娱乐", 917 | "tags": "阅读,小说,开源,安卓", 918 | "description": "Legado 3.0 是一款功能强大的开源小说阅读器,适用于安卓系统。用户可以自定义来源阅读网络内容,为网络文学爱好者提供方便、快捷、舒适的阅读体验。" 919 | }, 920 | { 921 | "title": "阅读3服务器版,桌面端,iOS可用", 922 | "url": "https://github.com/hectorqin/reader", 923 | "icon": "", 924 | "categories": "影音娱乐", 925 | "tags": "阅读,服务器,桌面端,iOS,Spring Boot,Vue.js", 926 | "description": "阅读3服务器版是一款不需要手机的阅读软件,支持桌面端和iOS。后端使用Kotlin、Spring Boot、Vert.x和Coroutine,前端使用Vue.js和Element。" 927 | }, 928 | { 929 | "title": "基于自定义规则的番剧采集APP,支持流媒体在线观看,支持弹幕", 930 | "url": "https://github.com/Predidit/Kazumi", 931 | "icon": "", 932 | "categories": "影音娱乐", 933 | "tags": "番剧,流媒体,弹幕,自定义规则,跨平台", 934 | "description": "Kazumi 是一个使用 flutter 开发的基于自定义规则的番剧采集与在线观看程序。支持规则导入与分享,支持多平台,包括 Android、Windows、MacOS、Linux、iOS 和 HarmonyOS。" 935 | }, 936 | { 937 | "title": "M3U8 Downloader - 在线下载M3U8视频", 938 | "url": "https://m3u8.dev/", 939 | "icon": "", 940 | "categories": "影音娱乐", 941 | "tags": "M3U8,视频下载,在线视频,Chrome扩展", 942 | "description": "M3U8 Downloader 是一款在线工具,支持从YouTube、Twitter/X、Tiktok、Instagram、Loom、Reddit、Twitch等平台下载视频和音频。用户可以使用M3U8 Downloader Pro或免费在线屏幕录制工具下载视频。" 943 | }, 944 | { 945 | "title": "Updated list of public BitTorrent trackers", 946 | "url": "https://github.com/ngosang/trackerslist", 947 | "icon": "", 948 | "categories": "影音娱乐", 949 | "tags": "BitTorrent,trackers,公共追踪器,网络安全", 950 | "description": "该项目提供了一个每日更新的公共BitTorrent追踪器列表,帮助用户提高下载速度和连接稳定性。" 951 | }, 952 | { 953 | "title": "Alpha Coders - Your Source For Desktop Wallpapers, Phone Wallpapers, Gifs, PFP, and More!", 954 | "url": "https://alphacoders.com/", 955 | "icon": "", 956 | "categories": "影音娱乐", 957 | "tags": "壁纸, 动态图片, 头像, 设计, 创作", 958 | "description": "Alpha Coders 是一个提供桌面壁纸、手机壁纸、动态图片、头像等资源的网站。用户可以在这里找到各种高清壁纸、个性化头像和有趣的动态图片,并参与社区活动。" 959 | }, 960 | { 961 | "title": "[FILMGRAB]", 962 | "url": "https://film-grab.com/", 963 | "icon": "https://film-grab.com/favicon.ico", 964 | "categories": "影音娱乐", 965 | "tags": "电影,艺术,视觉", 966 | "description": "FILMGRAB 是一个专注于电影艺术和视觉效果的网站,提供各种电影的截图和视觉分析,适合电影爱好者和研究者。" 967 | }, 968 | { 969 | "title": "Free high resolution photography", 970 | "url": "https://www.lifeofpix.com/", 971 | "icon": "", 972 | "categories": "影音娱乐", 973 | "tags": "高分辨率,摄影,无版权限制,商业用途", 974 | "description": "Life of Pix 提供高分辨率摄影作品,且无版权限制,可用于商业用途。" 975 | }, 976 | { 977 | "title": "免费素材图片", 978 | "url": "https://www.pexels.com/zh-cn/", 979 | "icon": "https://www.pexels.com/favicon.ico", 980 | "categories": "影音娱乐", 981 | "tags": "免费图片,素材,摄影,视频", 982 | "description": "Pexels 是一个提供免费素材图片和视频的平台,摄影作者在这里免费分享最精彩的素材。" 983 | }, 984 | { 985 | "title": "Beautiful Free Images & Pictures", 986 | "url": "https://unsplash.com/", 987 | "icon": "", 988 | "categories": "影音娱乐", 989 | "tags": "免费图片,高质量图片,摄影,设计资源", 990 | "description": "Unsplash 是一个提供高质量免费图片和照片的网站,适用于设计师、摄影师和创意工作者。" 991 | }, 992 | { 993 | "title": "Gratisography - 免费高分辨率图库", 994 | "url": "https://gratisography.com/", 995 | "icon": "", 996 | "categories": "影音娱乐", 997 | "tags": "免费图片,高分辨率,图库,无版权限制", 998 | "description": "Gratisography 提供免费高分辨率的图库,所有图片均无版权限制,适用于各种创意设计项目。" 999 | }, 1000 | { 1001 | "title": "5.2 million+ Stunning Free Images to Use Anywhere - Pixabay", 1002 | "url": "https://pixabay.com/", 1003 | "icon": "https://pixabay.com/favicon.ico", 1004 | "categories": "影音娱乐", 1005 | "tags": "免费图片, 免版税, 图片分享, 视频, 音乐", 1006 | "description": "Pixabay是一个充满活力的创意社区,分享免版税的图片、视频、音频和其他媒体。所有内容均由Pixabay根据内容许可发布,可以安全使用,无需获得许可或给予艺术家信用,即使是某些商业用途。" 1007 | }, 1008 | { 1009 | "title": "Awesome Wallpapers - wallhaven.cc", 1010 | "url": "https://wallhaven.cc/", 1011 | "icon": "https://wallhaven.cc/favicon.ico", 1012 | "categories": "影音娱乐", 1013 | "tags": "壁纸,高清,艺术,动漫,游戏", 1014 | "description": "wallhaven.cc 提供了大量高质量的壁纸,用户可以浏览、搜索和下载各种主题的壁纸,包括艺术、动漫、游戏等。" 1015 | }, 1016 | { 1017 | "title": "电影推荐 · MVCAT", 1018 | "url": "https://www.mvcat.com/", 1019 | "icon": "https://www.mvcat.com/favicon.ico", 1020 | "categories": "影音娱乐", 1021 | "tags": "电影推荐,影评,电影分类,电影榜单", 1022 | "description": "MVCAT 是一个电影推荐网站,提供各种类型的电影推荐、影评、电影分类和电影榜单。用户可以根据自己的兴趣找到适合观看的电影。" 1023 | }, 1024 | { 1025 | "title": "聚焦中文字幕下载分享-奇下载字幕", 1026 | "url": "https://www.qixiazai.com/", 1027 | "icon": "http://www.qixiazai.com/favicon.ico", 1028 | "categories": "影音娱乐", 1029 | "tags": "中文字幕,字幕下载,电影字幕,美剧字幕,韩剧字幕", 1030 | "description": "奇下载字幕网站专注于提供各类影视剧的中文字幕下载,包括电影、美剧、韩剧、纪录片等。用户可以通过关键词搜索找到所需的字幕资源。" 1031 | }, 1032 | { 1033 | "title": "音范丝 | 首页——精选4K蓝光原盘下载,顶级收藏", 1034 | "url": "https://www.yinfans.net/", 1035 | "icon": "https://www.yinfans.me/wp-content/themes/Loos2/images/favicon.ico", 1036 | "categories": "影音娱乐", 1037 | "tags": "蓝光原盘,4K,电影下载,高清,收藏", 1038 | "description": "音范丝是一个提供精选4K蓝光原盘下载的网站,专注于顶级影音收藏。用户可以在这里找到最新的蓝光高清电影资源,包括电影、电视剧等。" 1039 | }, 1040 | { 1041 | "title": "SeedHub | 影视&动漫分享", 1042 | "url": "https://www.seedhub.cc/", 1043 | "icon": "https://ss7.seedhub.info/static/img/favicon.ico", 1044 | "categories": "影音娱乐", 1045 | "tags": "电影,动漫,剧集,分享", 1046 | "description": "SeedHub 是一个分享电影、动漫和剧集的网站,提供各种类型的影视资源,包括剧情、喜剧、惊悚、动作、爱情、犯罪、恐怖、悬疑、冒险、科幻、奇幻、纪录片等。用户可以在这里找到最新更新的影视作品,并根据豆瓣评分选择观看。" 1047 | }, 1048 | { 1049 | "title": "IMDb Top 250 Movies", 1050 | "url": "https://www.imdb.com/chart/top/", 1051 | "icon": "https://www.imdb.com/favicon.ico", 1052 | "categories": "影音娱乐", 1053 | "tags": "电影,排行榜,IMDb", 1054 | "description": "IMDb Top 250 Movies页面列出了由IMDb用户评分的前250部电影。" 1055 | }, 1056 | { 1057 | "title": "flysheep资源避难所-一个免费的二次元风格下载站", 1058 | "url": "https://www.flysheep6.com/", 1059 | "icon": "https://www.flysheep6.com/favicon.ico", 1060 | "categories": "影音娱乐", 1061 | "tags": "游戏下载,二次元,PC游戏,独立游戏,VR游戏", 1062 | "description": "flysheep资源避难所是一个提供各种PC单机大作、小游戏、独立游戏和VR游戏下载的免费二次元风格网站。" 1063 | }, 1064 | { 1065 | "title": "「喜加一」最新动态", 1066 | "url": "https://www.ithome.com/zt/xijiayi", 1067 | "icon": "https://www.ithome.com/favicon.ico", 1068 | "categories": "影音娱乐", 1069 | "tags": "Epic,游戏,限免,促销,Steam", 1070 | "description": "本站提供最新的Epic和Steam平台游戏限时免费领取和促销活动信息,帮助玩家及时获取免费游戏和优惠。" 1071 | }, 1072 | { 1073 | "title": "switch520--专业的switch游戏下载网站", 1074 | "url": "https://www.520switch.com/", 1075 | "icon": "https://www.520switch.com/favicon.ico", 1076 | "categories": "影音娱乐", 1077 | "tags": "Switch游戏,PS4游戏,PC游戏,游戏下载,破解工具", 1078 | "description": "switch520是一个专业的Switch游戏下载网站,提供Switch、PS4、PC等平台的游戏下载资源,致力于打造国人自己的游戏仓库,全站免费无广告。" 1079 | }, 1080 | { 1081 | "title": "Switch520", 1082 | "url": "https://www.gamer520.com/", 1083 | "icon": "", 1084 | "categories": "影音娱乐", 1085 | "tags": "Switch游戏,PC游戏,PS4游戏,PS5游戏,模拟器", 1086 | "description": "Switch520是一个提供Switch、PC、PS4、PS5游戏资源下载的网站,包含最新的热门游戏和模拟器资源。" 1087 | }, 1088 | { 1089 | "title": "IGGGAMES - 免费下载PC游戏 - 直接链接 - 种子", 1090 | "url": "https://igg-games.com/", 1091 | "icon": "https://igg-games.com/favicon.ico", 1092 | "categories": "影音娱乐", 1093 | "tags": "PC游戏,免费下载,种子,直接链接", 1094 | "description": "IGGGAMES 提供各种PC游戏的免费下载,包括动作、冒险、角色扮演、策略等多种类型。用户可以通过直接链接或种子下载游戏。" 1095 | }, 1096 | { 1097 | "title": "Poki (宝玩) - 免费在线小游戏", 1098 | "url": "https://poki.com/zh", 1099 | "icon": "https://poki.cn/favicon.ico", 1100 | "categories": "影音娱乐", 1101 | "tags": "免费游戏,在线游戏,休闲娱乐,多人游戏,单人游戏", 1102 | "description": "Poki (宝玩) 是一个提供免费在线小游戏的平台,拥有丰富的游戏种类,从单人休闲到多人合作,致力于为用户提供最有趣的游戏体验。无需下载、登录,无弹窗干扰,支持多种设备运行。" 1103 | }, 1104 | { 1105 | "title": "Yandex Games", 1106 | "url": "https://yandex.com/games/", 1107 | "icon": "https://yandex.com/favicon.ico", 1108 | "categories": "影音娱乐", 1109 | "tags": "游戏,休闲,娱乐", 1110 | "description": "Yandex Games 是一个提供各种在线游戏的平台,涵盖模拟器、休闲、赛车、冒险等多种类型,适合不同年龄段和兴趣的玩家。" 1111 | }, 1112 | { 1113 | "title": "Free Online Games on CrazyGames", 1114 | "url": "https://www.crazygames.com/", 1115 | "icon": "", 1116 | "categories": "影音娱乐", 1117 | "tags": "在线游戏, 免费游戏, 多人游戏, 休闲游戏, 动作游戏", 1118 | "description": "CrazyGames 提供超过 4000 款免费在线游戏,无需安装,适用于任何设备。用户可以与朋友一起玩各种类型的游戏,包括动作、冒险、益智、体育等。" 1119 | }, 1120 | { 1121 | "title": "小霸王,其乐无穷 。红白机,FC在线游戏,街机游戏,街机在线,NES games,NES games online,Super Mario", 1122 | "url": "https://www.yikm.net/", 1123 | "icon": "", 1124 | "categories": "影音娱乐", 1125 | "tags": "复古游戏,FC游戏,街机游戏,怀旧", 1126 | "description": "本站提供各种复古游戏的在线体验,包括FC、SFC、街机、GBA、NDS、MD、DOS等经典游戏,让用户重温童年的快乐。" 1127 | }, 1128 | { 1129 | "title": "在线 DOS 游戏", 1130 | "url": "https://dos.zczc.cz/", 1131 | "icon": "https://dos.zczc.cz/favicon.ico", 1132 | "categories": "影音娱乐", 1133 | "tags": "DOS游戏,在线游戏,经典游戏", 1134 | "description": "本站提供在线DOS游戏,包括金庸群侠传、大富翁3、三国志系列、仙剑奇侠传等经典游戏,用户可以直接在浏览器中畅玩。" 1135 | }, 1136 | { 1137 | "title": "天涯神贴播客 - 精选天涯论坛经典帖子音频版", 1138 | "url": "https://podcast.tianyashentie.org/", 1139 | "icon": "https://podcast.tianyashentie.org/favicon.svg", 1140 | "categories": "影音娱乐", 1141 | "tags": "天涯论坛, 神贴, 播客, 音频, 经典帖子", 1142 | "description": "天涯神贴播客提供精选的天涯论坛经典帖子音频版,用户可以通过购买网盘版或U盘版获取所有音频内容。" 1143 | }, 1144 | { 1145 | "title": "BTDigg DHT Search Engine: Free Search Engine For Free Torrent Content", 1146 | "url": "https://btdig.com/index.htm", 1147 | "icon": "https://btdig.com/favicon.ico", 1148 | "categories": "影音娱乐", 1149 | "tags": "DHT,搜索引擎,种子,内容搜索", 1150 | "description": "BTDigg 是一个免费的 DHT 搜索引擎,专注于提供免费的种子内容搜索服务。" 1151 | }, 1152 | { 1153 | "title": "Torrent downloads and distributions for IP 139.162.17.136", 1154 | "url": "https://iknowwhatyoudownload.com/en/peer/", 1155 | "icon": "", 1156 | "categories": "影音娱乐", 1157 | "tags": "IP地址,下载,分发,监控", 1158 | "description": "该网站提供了IP地址139.162.17.136的Torrent下载和分发信息,用户可以通过该网站监控和查看特定IP地址的下载活动。" 1159 | }, 1160 | { 1161 | "title": "Torrent Search Engine | 1337x.to", 1162 | "url": "https://1337x.to/", 1163 | "icon": "https://1337x.to/favicon.ico", 1164 | "categories": "影音娱乐", 1165 | "tags": "torrent,搜索引擎,下载,种子", 1166 | "description": "1337x.to 是一个提供种子搜索和下载服务的网站,用户可以在这里找到各种电影、电视节目、游戏、音乐、应用程序等资源。" 1167 | }, 1168 | { 1169 | "title": "fogleman/primitive: 用几何图形重现图像", 1170 | "url": "https://github.com/fogleman/primitive", 1171 | "icon": "", 1172 | "categories": "影音娱乐", 1173 | "tags": "图像处理,几何图形,算法,开源项目", 1174 | "description": "Primitive 是一个开源项目,通过几何图形来重现图像。用户可以提供目标图像,算法会逐步添加最优形状来最小化目标图像与绘制图像之间的误差。支持多种输出格式,包括 PNG、JPG、SVG 和 GIF。" 1175 | }, 1176 | { 1177 | "title": "New Generation Torrent Search Engine | Bitsearch", 1178 | "url": "https://bitsearch.to/", 1179 | "icon": "", 1180 | "categories": "影音娱乐", 1181 | "tags": "torrent,搜索引擎,下载,电影,音乐", 1182 | "description": "Bitsearch 是一个新一代的种子搜索引擎,提供电影、电视剧、动漫、音乐等多种资源的搜索和下载服务。" 1183 | } 1184 | ] 1185 | }, 1186 | { 1187 | "title": "科研教育", 1188 | "type": "folder", 1189 | "children": [ 1190 | { 1191 | "title": "回头是岸", 1192 | "type": "folder", 1193 | "children": [ 1194 | { 1195 | "title": "历年国考省考公务员/事业单位/教师招聘考试/教资笔试/面试试题及答案解析-金标尺题库", 1196 | "url": "https://www.gwysydw.com/", 1197 | "icon": "", 1198 | "categories": "科研教育", 1199 | "tags": "公考,省考,事业单位,教师招聘,试题解析", 1200 | "description": "金标尺题库为广大用户提供历年公务员、事业单位、教师招聘考试及教资笔试面试试题和答案解析,帮助考生轻松备考,提升考试通过率。" 1201 | }, 1202 | { 1203 | "title": "SaDuck - 免费公考知识库", 1204 | "url": "https://saduck.top/", 1205 | "icon": "", 1206 | "categories": "科研教育", 1207 | "tags": "公务员考试, 知识库, 学习技巧", 1208 | "description": "SaDuck提供全面覆盖的公务员考试全科目基础知识点,并融合高效学习策略,是备考的得力助手,永久免费使用。" 1209 | }, 1210 | { 1211 | "title": "公务员从入门到上岸,最佳程序员公考实践教程", 1212 | "url": "https://github.com/miss-mumu/developer2gwy", 1213 | "icon": "", 1214 | "categories": "科研教育", 1215 | "tags": "公务员考试,程序员,备考指南,体制内生活", 1216 | "description": "本项目由一群从程序员上岸成为公务员的朋友共同参与贡献,分享记录他们的上岸经历、体制内生活以及心路历程。" 1217 | }, 1218 | { 1219 | "title": "互联网首份程序员考公指南", 1220 | "url": "https://github.com/coder2gwy/coder2gwy", 1221 | "icon": "", 1222 | "categories": "科研教育", 1223 | "tags": "程序员,考公,指南", 1224 | "description": "互联网首份程序员考公指南,由3位已经进入体制内的前大厂程序员联合献上。指南内容包括程序员考公务员、事业编制和教师岗位的经验分享、备考最佳实践、常见问题解答等,适合想要进入体制内的程序员。" 1225 | } 1226 | ] 1227 | }, 1228 | { 1229 | "title": "通辽宇宙知识库 - 探索奇葩小国、硬核狠人与二次元谐音梗的互动知识平台", 1230 | "url": "https://www.tongliaouniverse.cn/", 1231 | "icon": "", 1232 | "categories": "科研教育", 1233 | "tags": "奇葩小国,硬核狠人,二次元谐音梗,历史", 1234 | "description": "通辽宇宙知识库是一个互动知识平台,汇集世界上各种奇葩小国、硬核狠人以及二次元谐音梗的内容。该平台整合了B站UP主小约翰可汗的视频内容,并通过AI辅助整理,提供结构化的信息资源,方便爱好者探索与查阅。" 1235 | }, 1236 | { 1237 | "title": "dblp: computer science bibliography", 1238 | "url": "https://dblp.org/", 1239 | "icon": "https://dblp.org/favicon.ico", 1240 | "categories": "科研教育", 1241 | "tags": "计算机科学, 文献数据库, 学术资源, 研究工具, 开放数据", 1242 | "description": "dblp 是一个计算机科学文献数据库,提供主要计算机科学期刊和会议的开放书目信息。最初由特里尔大学创建,现在由 Schloss Dagstuhl 运营和开发。" 1243 | }, 1244 | { 1245 | "title": "中国知网", 1246 | "url": "https://www.cnki.net/", 1247 | "icon": "https://chn.oversea.cnki.net/favicon.ico", 1248 | "categories": "科研教育", 1249 | "tags": "学术资源, 数据交易, AI增强检索, 出版服务, 学术研究", 1250 | "description": "中国知网(CNKI)是一个提供学术资源、数据交易和出版服务的平台,支持AI增强检索和学术研究。" 1251 | }, 1252 | { 1253 | "title": "SCI-Web of Science", 1254 | "url": "https://www.webofscience.com/wos/alldb/basic-search", 1255 | "icon": "", 1256 | "categories": "科研教育", 1257 | "tags": "学术资源, 数据库, 文献检索, 科研工具, 学术研究", 1258 | "description": "Web of Science 是一个提供学术资源和文献检索的数据库,旨在为科研人员提供高效的科研工具和学术研究支持。" 1259 | }, 1260 | { 1261 | "title": "EI-Engineering Village - Quick Search", 1262 | "url": "https://www.engineeringvillage.com/search/quick.url", 1263 | "icon": "", 1264 | "categories": "科研教育", 1265 | "tags": "工程学, 数据库, 文献检索, 科研工具, 学术资源", 1266 | "description": "Engineering Village 是一个工程学文献数据库,提供快速搜索功能,帮助科研人员高效检索和访问工程学领域的学术资源。" 1267 | }, 1268 | { 1269 | "title": "高级检索-【维普期刊官网】- 中文期刊服务平台", 1270 | "url": "https://qikan.cqvip.com/Qikan/Search/Advance", 1271 | "icon": "https://qikan.cqvip.com/favicon.ico", 1272 | "categories": "科研教育", 1273 | "tags": "期刊检索, 高级检索, 学术资源, 中文期刊, 数据库", 1274 | "description": "维普期刊官网提供高级检索功能,支持用户通过题名、关键词、作者等多种方式进行期刊检索,涵盖北大核心期刊、EI来源期刊、SCIE期刊等多种学术资源。" 1275 | }, 1276 | { 1277 | "title": "CitationStyles", 1278 | "url": "https://editor.citationstyles.org/about/", 1279 | "icon": "https://editor.citationstyles.org/images/favicon-32x32.png", 1280 | "categories": "科研教育", 1281 | "tags": "CSL, 引用样式, 编辑工具, 开源项目, 文献管理", 1282 | "description": "本页面介绍了Citation Style Language (CSL) 编辑器的功能,包括如何搜索、编辑和使用引用样式。用户可以通过名称或示例搜索样式,使用可视化编辑器进行修改,并将其应用于参考文献管理工具。" 1283 | }, 1284 | { 1285 | "title": "SCI期刊影响因子查询_2025年(2022年度) 影响因子_Justscience_中外核心期刊系统_友情价英文母语润色", 1286 | "url": "https://sci.justscience.cn/#0", 1287 | "icon": "https://sci.justscience.cn/resources/favicon.ico", 1288 | "categories": "科研教育", 1289 | "tags": "SCI期刊, 影响因子, 学术资源, 文献检索, 数据库", 1290 | "description": "SCI期刊影响因子查询平台提供2025年(2022年度)SCI期刊影响因子的查询服务,涵盖中外核心期刊系统,并提供英文母语润色服务。" 1291 | }, 1292 | { 1293 | "title": "信息技术最新国际会议和期刊列表 - Conference Partner (会伴)", 1294 | "url": "https://www.myhuiban.com/", 1295 | "icon": "", 1296 | "categories": "科研教育", 1297 | "tags": "国际会议, 期刊, 学术资源, 征稿信息, 科研人员", 1298 | "description": "Conference Partner (会伴) 是一个提供信息技术领域最新国际会议和期刊列表的平台,涵盖会议征稿信息、期刊排名、科研人员信息等,旨在为科研人员提供全面的学术资源和服务。" 1299 | }, 1300 | { 1301 | "title": "浙江图书馆", 1302 | "url": "https://www.zjlib.cn/", 1303 | "icon": "https://www.zjlib.cn/favicon.ico", 1304 | "categories": "科研教育", 1305 | "tags": "图书馆, 学术资源, 公共服务, 在线阅读, 文化活动", 1306 | "description": "浙江图书馆提供丰富的学术资源和公共服务,包括在线阅读、文化活动和文献检索等。" 1307 | }, 1308 | { 1309 | "title": "The latest in Machine Learning | Papers With Code", 1310 | "url": "https://paperswithcode.com/", 1311 | "icon": "https://paperswithcode.com/favicon.ico", 1312 | "categories": "科研教育", 1313 | "tags": "机器学习, 研究论文, 开源项目, 数据集, 方法", 1314 | "description": "Papers With Code 是一个提供最新机器学习研究论文、开源项目、数据集和方法的平台,旨在促进研究人员之间的交流与合作。机器学习经典论文代码实现" 1315 | }, 1316 | { 1317 | "title": "Espacenet – patent search", 1318 | "url": "https://worldwide.espacenet.com/patent/", 1319 | "icon": "https://worldwide.espacenet.com/favicon.ico", 1320 | "categories": "科研教育", 1321 | "tags": "专利搜索, 专利文档, EPO, 检索工具", 1322 | "description": "Espacenet 是一个提供免费访问超过1.5亿专利文档的平台,由欧洲专利局(EPO)提供支持。用户可以通过简单或高级检索功能查找专利信息,并获取相关的帮助和学习资源。" 1323 | }, 1324 | { 1325 | "title": "中国专利下载", 1326 | "url": "https://www.drugfuture.com/cnpat/cn_patent.asp", 1327 | "icon": "https://www.drugfuture.com/logo.png", 1328 | "categories": "科研教育", 1329 | "tags": "专利下载, 中国专利, PDF下载, TIF下载, 专利检索", 1330 | "description": "中国专利下载平台提供中国专利全文的打包下载服务,支持PDF和TIF格式,涵盖1985年至今的所有专利说明书。用户可以通过专利申请号或公开(公告)号进行检索,并选择极速版下载以提高下载速度。" 1331 | }, 1332 | { 1333 | "title": "整体结构 | Hyperledger 源码分析之 Fabric", 1334 | "url": "https://yeasy.gitbook.io/hyperledger_code_fabric/overview", 1335 | "icon": "", 1336 | "categories": "科研教育", 1337 | "tags": "Hyperledger,Fabric,区块链,分布式系统,开源项目", 1338 | "description": "《Hyperledger 源码分析之 Fabric》是一个详细分析 Hyperledger Fabric 架构和源码的站点,涵盖核心代码、源码相关工具、安装部署、配置脚本和文档等内容,帮助开发者深入理解和掌握 Hyperledger Fabric。" 1339 | }, 1340 | { 1341 | "title": "前言 | 区块链技术指南", 1342 | "url": "https://yeasy.gitbook.io/blockchain_guide", 1343 | "icon": "", 1344 | "categories": "科研教育", 1345 | "tags": "区块链,分布式系统,密码学,金融科技,超级账本", 1346 | "description": "《区块链技术指南》是一本详细介绍区块链技术的书籍,涵盖区块链的核心技术、典型应用场景以及超级账本的具体应用,帮助读者深入理解和掌握区块链技术。" 1347 | }, 1348 | { 1349 | "title": "在线LaTeX公式编辑器", 1350 | "url": "https://www.latexlive.com/", 1351 | "icon": "", 1352 | "categories": "科研教育", 1353 | "tags": "LaTeX,公式编辑器,在线工具,科研,教育", 1354 | "description": "在线LaTeX公式编辑器是一个方便的工具,允许用户在线编写和编辑LaTeX公式,支持多种符号和模板,适用于科研和教育领域。" 1355 | }, 1356 | { 1357 | "title": "FreeMdict - mdx mdd download", 1358 | "url": "https://freemdict.com/", 1359 | "icon": "", 1360 | "categories": "科研教育", 1361 | "tags": "词典,学习资料,多语种", 1362 | "description": "FreeMdict 提供多种语言学习资料和词典下载,包括英语、汉语、日语、德语、法语、西班牙语等。用户可以在论坛中交流和分享资源。" 1363 | }, 1364 | { 1365 | "title": "Kaggle: Your Machine Learning and Data Science Community", 1366 | "url": "https://www.kaggle.com/", 1367 | "icon": "", 1368 | "categories": "科研教育", 1369 | "tags": "机器学习,数据科学,竞赛,数据集,模型", 1370 | "description": "Kaggle是一个全球领先的机器学习和数据科学社区,提供丰富的数据集、预训练模型和竞赛平台,帮助用户提升技能并解决实际问题。" 1371 | }, 1372 | { 1373 | "title": "Dataset Search", 1374 | "url": "https://datasetsearch.research.google.com/", 1375 | "icon": "", 1376 | "categories": "科研教育", 1377 | "tags": "数据集,搜索,数据科学,机器学习,研究", 1378 | "description": "Dataset Search是一个由Google提供的平台,帮助用户搜索和发现各种数据集,适用于数据科学、机器学习和研究等领域。" 1379 | }, 1380 | { 1381 | "title": "解谜英语语法", 1382 | "url": "https://www.yinwang.org/blog-cn/2018/11/23/grammar", 1383 | "icon": "", 1384 | "categories": "科研教育", 1385 | "tags": "英语,语法,学习", 1386 | "description": "这篇文章旨在帮助那些正在为学习英语语法而痛苦挣扎的人们。作者分享了自己多年的英语学习经验,强调句子是语言的核心,动词是句子的核心,并详细介绍了如何造句和理解句子的方法。" 1387 | }, 1388 | { 1389 | "title": "从词性开始 | 英语语法", 1390 | "url": "https://hzpt-inet-club.github.io/english-note/guide/grammar.html", 1391 | "icon": "", 1392 | "categories": "科研教育", 1393 | "tags": "英语,语法,学习", 1394 | "description": "这篇文章介绍了英语语法的基础知识,从词性开始,详细讲解了十大词性及其在句子中的作用。" 1395 | }, 1396 | { 1397 | "title": "句乐部", 1398 | "url": "https://julebu.co/", 1399 | "icon": "https://earthworm.cuixueshe.com/favicon.ico", 1400 | "categories": "科研教育", 1401 | "tags": "英语学习,游戏化学习,语言学习", 1402 | "description": "句乐部是一款英语学习工具,通过连词成句、i+1、以终为始等学习理论,结合游戏化的形式,帮助用户习得英语。其功能包括实时反馈和进度跟踪、情境语言学习、提高语言表达能力、增强词汇保留率、掌握常用搭配和惯用表达等。" 1403 | }, 1404 | { 1405 | "title": "关于本指南 · A Programmer's Guide to English", 1406 | "url": "https://a-programmers-guide-to-english.harryyu.me/", 1407 | "icon": "", 1408 | "categories": "科研教育", 1409 | "tags": "英语学习,程序员,学习指南", 1410 | "description": "《A Programmer's Guide to English》是专为程序员编写的英语学习指南,旨在帮助英语基础较差的程序员通过系统的学习方法和训练,提升英语水平,满足留学和技术移民的要求。" 1411 | }, 1412 | { 1413 | "title": "简明字帖-练字字帖-汉字笔顺-汉字拼音-描字-描红-字帖生成器", 1414 | "url": "https://www.babawar.com/", 1415 | "icon": "https://www.babawar.com/favicon.ico", 1416 | "categories": "科研教育", 1417 | "tags": "练字,汉字,拼音,字帖", 1418 | "description": "本站提供多种字帖生成工具,包括练字字帖、汉字笔顺、汉字拼音、描字、描红等,帮助用户提高汉字书写能力。" 1419 | }, 1420 | { 1421 | "title": "MuscleWiki - Simplify your workout", 1422 | "url": "https://musclewiki.com/", 1423 | "icon": "https://musclewiki.com/favicon.ico", 1424 | "categories": "科研教育", 1425 | "tags": "健身,锻炼,健康", 1426 | "description": "MuscleWiki 是一个帮助用户简化锻炼过程的工具,提供各种锻炼计划、工具和文章,适合不同的健身需求。" 1427 | }, 1428 | { 1429 | "title": "GeoGebra 计算器和应用 - 免费下载", 1430 | "url": "https://www.geogebra.org/download", 1431 | "icon": "https://www.geogebra.org/favicon.ico", 1432 | "categories": "科研教育", 1433 | "tags": "数学,计算器,几何,代数,微积分", 1434 | "description": "GeoGebra 提供一系列免费的数学和科学计算器和应用,适用于所有设备和操作系统。用户可以使用这些工具进行函数探索、解方程、几何作图、3D 绘图、科学计算等。" 1435 | }, 1436 | { 1437 | "title": "Anki - 强大且智能的记忆卡片", 1438 | "url": "https://apps.ankiweb.net/", 1439 | "icon": "https://apps.ankiweb.net/favicon.ico", 1440 | "categories": "科研教育", 1441 | "tags": "记忆卡片,学习工具,效率提升", 1442 | "description": "Anki 是一个使记忆变得更加容易的程序。它比传统的学习方法更高效,可以大大减少学习时间或大大增加学习量。任何需要在日常生活中记住事物的人都可以从 Anki 中受益。它支持图片、音频、视频和科学标记(通过 LaTeX),应用场景包括语言学习、医学和法律考试准备、记忆人名和面孔、地理知识复习、长诗背诵甚至吉他和弦练习。" 1443 | }, 1444 | { 1445 | "title": "Zotero | 个人研究助手", 1446 | "url": "https://www.zotero.org/", 1447 | "icon": "https://www.zotero.org/favicon.ico", 1448 | "categories": "科研教育", 1449 | "tags": "文献管理, 研究工具, 引用管理", 1450 | "description": "Zotero 是一个免费且易于使用的工具,帮助您收集、组织、注释、引用和分享研究资料。它支持多种操作系统,并提供同步功能,方便您在不同设备上访问和管理研究数据。" 1451 | }, 1452 | { 1453 | "title": "ProWritingAid: The Storyteller's Toolkit", 1454 | "url": "https://prowritingaid.com/", 1455 | "icon": "", 1456 | "categories": "科研教育", 1457 | "tags": "写作,编辑,工具,提高效率", 1458 | "description": "ProWritingAid 是一个帮助作家提升写作质量的工具包,提供深入分析和可操作的反馈和语法检查,支持多种写作应用,确保写作安全。" 1459 | }, 1460 | { 1461 | "title": "程序员做饭指南", 1462 | "url": "https://github.com/Anduin2017/HowToCook", 1463 | "icon": "", 1464 | "categories": "科研教育", 1465 | "tags": "菜谱,程序员烹饪,开源项目,食品安全,社区维护", 1466 | "description": "一个针对程序员的家常菜烹饪指南,通过清晰精准的菜谱描述,让程序员在家做饭更加方便。该项目由社区驱动,提供从基础到高级的烹饪技巧,并支持本地部署及PDF下载,涵盖食品安全等多方面知识。" 1467 | } 1468 | ] 1469 | }, 1470 | { 1471 | "title": "设计创作", 1472 | "type": "folder", 1473 | "children": [ 1474 | { 1475 | "title": "Tailwind Awesome - 最佳Tailwind模板和UI套件", 1476 | "url": "https://www.tailwindawesome.com/", 1477 | "icon": "", 1478 | "categories": "设计创作", 1479 | "tags": "Tailwind,模板,UI套件,设计,前端开发", 1480 | "description": "Tailwind Awesome 是一个精心策划的最佳 Tailwind 模板和 UI 套件列表。我们积极搜索并策划最酷的资源,适用于各种技术和使用场景。" 1481 | }, 1482 | { 1483 | "title": "Framer Marketplace — Kickstart your website with Templates & Plugins", 1484 | "url": "https://www.framer.com/marketplace/", 1485 | "icon": "", 1486 | "categories": "设计创作", 1487 | "tags": "Framer,模板,插件,设计,前端开发", 1488 | "description": "Framer Marketplace 是一个提供最佳模板和插件的社区平台,帮助用户快速启动和优化他们的网站。" 1489 | }, 1490 | { 1491 | "title": "301+ Themes & Templates @ Creative Tim", 1492 | "url": "https://www.creative-tim.com/templates", 1493 | "icon": "", 1494 | "categories": "设计创作", 1495 | "tags": "Creative Tim,模板,主题,设计,前端开发", 1496 | "description": "Creative Tim 提供超过301个最佳主题和模板,帮助用户快速启动和优化他们的网站。" 1497 | }, 1498 | { 1499 | "title": "Iconify - home of open source icons", 1500 | "url": "https://icon-sets.iconify.design/", 1501 | "icon": "", 1502 | "categories": "设计创作", 1503 | "tags": "Iconify,开源图标,设计,前端开发", 1504 | "description": "Iconify 是一个开源图标的家园,提供各种图标集,适用于不同的设计和开发需求。" 1505 | }, 1506 | { 1507 | "title": "Favicon Generator for perfect icons on all browsers", 1508 | "url": "https://realfavicongenerator.net/", 1509 | "icon": "", 1510 | "categories": "设计创作", 1511 | "tags": "favicon,图标生成,设计,创作", 1512 | "description": "RealFaviconGenerator 是一个在线工具,帮助用户生成完美的 favicon 图标,支持所有浏览器和平台。用户可以上传图标图片,生成多种格式的 favicon,并获得相应的 HTML 标记和设置说明。" 1513 | }, 1514 | { 1515 | "title": "Convert PNG, JPG files to SVG vectors online - Vectorizer.AI", 1516 | "url": "https://vectorizer.ai/", 1517 | "icon": "", 1518 | "categories": "设计创作", 1519 | "tags": "AI,图像转换,矢量化,图像处理,SVG", 1520 | "description": "Vectorizer.AI是一个在线平台,使用AI技术将PNG和JPG图像快速转换为SVG矢量图,支持多种输出格式,适用于设计和创作。" 1521 | }, 1522 | { 1523 | "title": "PhotoFunia: 在线免费图片编辑器,带有图片效果和照片滤镜库", 1524 | "url": "https://photofunia.com/cn/", 1525 | "icon": "", 1526 | "categories": "设计创作", 1527 | "tags": "照片效果,照片编辑,滤镜,图像处理,在线工具", 1528 | "description": "PhotoFunia是一个提供免费图片编辑和照片效果的平台,拥有丰富的滤镜和效果库,帮助用户轻松编辑和美化照片。" 1529 | }, 1530 | { 1531 | "title": "Google Art & Culture Experiment - Art Palette", 1532 | "url": "https://artsexperiments.withgoogle.com/artpalette/", 1533 | "icon": "https://artsexperiments.withgoogle.com/favicon.ico", 1534 | "categories": "设计创作", 1535 | "tags": "艺术,颜色,实验,创意", 1536 | "description": "Google Art & Culture Experiment - Art Palette 是一个艺术实验项目,用户可以通过选择不同的颜色调色板来探索和发现与这些颜色相关的艺术作品。" 1537 | }, 1538 | { 1539 | "title": "Color Hunt - 设计师和艺术家的调色板", 1540 | "url": "https://colorhunt.co/", 1541 | "icon": "https://colorhunt.co/img/color-hunt-icon-ios.png", 1542 | "categories": "设计创作", 1543 | "tags": "调色板,色彩搭配,设计工具", 1544 | "description": "Color Hunt 是一个为设计师和艺术家提供调色板的网站,用户可以发现最新的手工挑选的调色板,适用于各种设计和创作场景。" 1545 | }, 1546 | { 1547 | "title": "Image Baker - Create Android and iOS assets online", 1548 | "url": "https://www.img-bak.in/", 1549 | "icon": "https://www.img-bak.in/favicon.ico", 1550 | "categories": "设计创作", 1551 | "tags": "图像生成,安卓,苹果,资源管理", 1552 | "description": "Image Baker 是一个在线生成 iOS 和 Android 资源的工具。用户可以通过简单的三步操作生成所需的所有尺寸的优化图像,并将其下载为 zip 文件。" 1553 | }, 1554 | { 1555 | "title": "Flowchart Maker & Online Diagram Software", 1556 | "url": "https://app.diagrams.net/", 1557 | "icon": "https://app.diagrams.net/favicon.ico", 1558 | "categories": "设计创作", 1559 | "tags": "流程图,图表,在线工具", 1560 | "description": "diagrams.net 是一个在线流程图和图表制作工具,适用于各种场景。" 1561 | }, 1562 | { 1563 | "title": "中国色 - 传统颜色", 1564 | "url": "https://www.zhongguose.com/", 1565 | "icon": "http://zhongguose.com/favicon.ico", 1566 | "categories": "设计创作", 1567 | "tags": "中国色,传统颜色,色彩,设计,艺术", 1568 | "description": "中国色网站展示了中国传统颜色的丰富多样性,提供了每种颜色的名称、色值和相关信息,是设计和艺术创作的宝贵资源。" 1569 | }, 1570 | { 1571 | "title": "Collection of Free English/Chinese Fonts for Commercial Use. 收录可商用的免费英文/汉字字体。", 1572 | "url": "https://github.com/jaywcjlove/free-font", 1573 | "icon": "", 1574 | "categories": "设计创作", 1575 | "tags": "免费字体,商用字体,开源字体,英文字体,汉字字体", 1576 | "description": "本项目基于已不再维护的字集开源项目,旨在收集汉字字体。创建了这个新项目,并新增了自动生成字体预览封面的脚本,重新添加了许多中文字体以及一些开源英文字体,以方便用户下载和使用。" 1577 | }, 1578 | { 1579 | "title": "AI Color Palette Generator - Colorify Rocks", 1580 | "url": "https://colorify.rocks/", 1581 | "icon": "", 1582 | "categories": "设计创作", 1583 | "tags": "AI,颜色生成器,色彩搭配,设计工具", 1584 | "description": "Colorify Rocks 是一个AI驱动的颜色生成器,能够根据关键词或主题即时生成完美的颜色组合,适用于网站设计、品牌识别或室内设计等各种项目。" 1585 | }, 1586 | { 1587 | "title": "用Slea.ai免费AI Logo生成器轻松创建专业Logo", 1588 | "url": "https://slea.ai/zh-CN", 1589 | "icon": "", 1590 | "categories": "设计创作", 1591 | "tags": "AI Logo生成器, 免费Logo设计, 在线Logo制作", 1592 | "description": "Slea.ai是一款免费AI Logo生成器,用户可以通过输入Logo名称和关键元素,快速生成专业定制的Logo。该工具提供高级编辑功能和无水印高清Logo下载,适用于企业、创作者和活动的Logo设计。" 1593 | }, 1594 | { 1595 | "title": "Nutlope/logocreator: A free + OSS logo generator powered by Flux on Together AI", 1596 | "url": "https://github.com/Nutlope/logocreator", 1597 | "icon": "", 1598 | "categories": "设计创作", 1599 | "tags": "开源,标志生成器,人工智能", 1600 | "description": "一个免费的开源标志生成器,使用Together AI的Flux技术,能够在几秒钟内创建专业标志,并提供可定制的样式。" 1601 | }, 1602 | { 1603 | "title": "AI Color - 独特的调色板生成器", 1604 | "url": "https://aicolors.co/", 1605 | "icon": "", 1606 | "categories": "设计创作", 1607 | "tags": "调色板,颜色生成,设计工具", 1608 | "description": "AI Color 是一个调色板生成器,用户可以浏览、编辑、可视化和生成独特的颜色调色板,适用于设计创作。" 1609 | } 1610 | ] 1611 | }, 1612 | { 1613 | "title": "论坛资讯", 1614 | "type": "folder", 1615 | "children": [ 1616 | { 1617 | "title": "暗安全技术小组", 1618 | "url": "https://forum.cnsec.org/", 1619 | "icon": "", 1620 | "categories": "论坛资讯", 1621 | "tags": "安全技术,讨论,资源共享", 1622 | "description": "暗安全技术小组是一个专注于安全技术讨论和资源共享的论坛,用户可以在这里交流安全领域的知识、分享资源、讨论问答等。" 1623 | }, 1624 | { 1625 | "title": "看雪-安全社区|安全招聘|kanxue.com", 1626 | "url": "https://bbs.kanxue.com/", 1627 | "icon": "https://bbs.pediy.com/favicon.png", 1628 | "categories": "论坛资讯", 1629 | "tags": "安全社区,安全招聘,安全技术", 1630 | "description": "看雪是一个专注于安全技术讨论和资源共享的社区,用户可以在这里交流安全领域的知识、分享资源、讨论问答等。" 1631 | }, 1632 | { 1633 | "title": "逆向未来 - Powered by Discuz!", 1634 | "url": "https://www.pd521.com/", 1635 | "icon": "", 1636 | "categories": "论坛资讯", 1637 | "tags": "逆向技术,资源共享,安全技术", 1638 | "description": "逆向未来是一个专注于逆向技术和资源共享的社区,用户可以在这里交流逆向工程、分享工具和教程、讨论安全技术等。" 1639 | }, 1640 | { 1641 | "title": "一亩三分地社区: 留学|求职|投资|移民|生活 - 高信噪比 + 纯干货", 1642 | "url": "https://www.1point3acres.com/", 1643 | "icon": "https://www.1point3acres.com/bbs/favicon.ico", 1644 | "categories": "论坛资讯", 1645 | "tags": "留学,求职,投资,移民,生活", 1646 | "description": "一亩三分地社区是一个专注于留学、求职、投资、移民和生活的高信噪比华人社区,提供丰富的干货内容和实用信息。" 1647 | }, 1648 | { 1649 | "title": "字节跳动 腾讯 阿里 职级对标", 1650 | "url": "https://duibiao.info/", 1651 | "icon": "https://duibiao.info/favicon.ico", 1652 | "categories": "论坛资讯", 1653 | "tags": "职级对标,薪酬,互联网公司", 1654 | "description": "本站提供字节跳动、腾讯、阿里等互联网公司的职级对标信息,包含薪酬表、工资计算器、公司列表等功能,帮助用户了解各大公司的薪酬水平和职级情况。" 1655 | }, 1656 | { 1657 | "title": "NGA玩家社区", 1658 | "url": "https://bbs.nga.cn/", 1659 | "icon": "", 1660 | "categories": "论坛资讯", 1661 | "tags": "游戏,社区,讨论", 1662 | "description": "NGA玩家社区是一个综合性的游戏论坛,提供各种游戏的讨论区,包括魔兽世界、英雄联盟、DOTA2等。用户可以在这里分享游戏心得、讨论游戏策略、参与社区活动。" 1663 | }, 1664 | { 1665 | "title": "首页 | JIKE", 1666 | "url": "https://jike.info/", 1667 | "icon": "https://jike.info/assets/images/touch/96.png", 1668 | "categories": "论坛资讯", 1669 | "tags": "社区,讨论,资讯", 1670 | "description": "JIKE是一个综合性的社区论坛,提供各种讨论区,包括活动优惠、影音书籍、技术分享等。用户可以在这里分享心得、讨论策略、参与社区活动。" 1671 | }, 1672 | { 1673 | "title": "黑客新闻 --- Hacker News", 1674 | "url": "https://news.ycombinator.com/news", 1675 | "icon": "https://news.ycombinator.com/y18.svg", 1676 | "categories": "论坛资讯", 1677 | "tags": "黑客新闻,科技新闻,创业,编程", 1678 | "description": "黑客新闻(Hacker News)是一个由Y Combinator运营的社交新闻网站,主要关注计算机科学和创业相关的内容。用户可以在这里分享和讨论科技新闻、编程技巧、创业经验等。" 1679 | }, 1680 | { 1681 | "title": "中国独立开发者项目列表", 1682 | "url": "https://github.com/XiaomingX/1000-chinese-independent-developer-plus", 1683 | "icon": "", 1684 | "categories": "论坛资讯", 1685 | "tags": "独立开发者,开源项目,中国", 1686 | "description": "1000个中国独立开发者项目汇总,展示了中国独立开发者的优秀作品,提供灵感、市场趋势和合作机会。" 1687 | }, 1688 | { 1689 | "title": "车质网 - 第三方汽车投诉处理及品质评价平台", 1690 | "url": "https://www.12365auto.com/", 1691 | "icon": "", 1692 | "categories": "论坛资讯", 1693 | "tags": "汽车投诉, 品质评价, 汽车资讯, 用户反馈", 1694 | "description": "车质网是一个专注于汽车投诉处理和品质评价的第三方平台,提供汽车资讯、用户投诉、缺陷报道以及车型对比等服务,帮助消费者了解汽车质量问题并提供解决方案。" 1695 | } 1696 | ] 1697 | }, 1698 | { 1699 | "title": "服务运维", 1700 | "type": "folder", 1701 | "children": [ 1702 | { 1703 | "title": "在APKPure使用免费在线APK下载器下载APK到安卓", 1704 | "url": "https://apkpure.com/cn/", 1705 | "icon": "https://apkpure.com/favicon.png", 1706 | "categories": "服务运维", 1707 | "tags": "APK下载,安卓应用,APKPure,软件下载", 1708 | "description": "APKPure是一个提供安卓应用下载的平台,用户可以通过该网站下载各种APK文件,包括游戏、应用和工具。" 1709 | }, 1710 | { 1711 | "title": "Download missing DLL files for free | DLL‑files.com", 1712 | "url": "https://www.dll-files.com/", 1713 | "icon": "", 1714 | "categories": "服务运维", 1715 | "tags": "DLL下载,系统修复,DLL文件", 1716 | "description": "DLL‑files.com是一个提供DLL文件下载服务的网站,用户可以通过该网站搜索和下载各种缺失或损坏的DLL文件,以解决计算机上的DLL问题。" 1717 | }, 1718 | { 1719 | "title": "FileZilla - 免费的FTP解决方案", 1720 | "url": "https://filezilla-project.org/", 1721 | "icon": "https://filezilla-project.org/images/favicon.ico", 1722 | "categories": "服务运维", 1723 | "tags": "FTP,FTPS,SFTP,开源,文件传输", 1724 | "description": "FileZilla是一个免费的FTP解决方案,支持FTP、FTPS和SFTP协议。它是开源软件,免费提供。FileZilla Pro还支持WebDAV、Amazon S3、Dropbox等多种协议。FileZilla Server是一个免费的开源FTP和FTPS服务器。" 1725 | }, 1726 | { 1727 | "title": "Umami: 简单、快速、注重隐私的 Google Analytics 替代品", 1728 | "url": "https://github.com/umami-software/umami", 1729 | "icon": "", 1730 | "categories": "服务运维", 1731 | "tags": "统计,分析,隐私,开源", 1732 | "description": "Umami 是一个简单、快速、注重隐私的 Google Analytics 替代品。它支持 MariaDB、MySQL 和 PostgreSQL 数据库,并提供详细的安装和配置指南。" 1733 | }, 1734 | { 1735 | "title": "ITDOG - 在线ping_在线tcping_网站测速_HTTP测速_API测速_路由追踪_在线MTR_DNS查询", 1736 | "url": "https://www.itdog.cn/", 1737 | "icon": "https://www.itdog.cn/favicon.ico", 1738 | "categories": "服务运维", 1739 | "tags": "在线ping,在线tcping,网站测速,HTTP测速,API测速,路由追踪,在线MTR,DNS查询", 1740 | "description": "ITDOG提供多种网络测试工具,包括在线Ping、Tcping、网站测速、HTTP测速、API测速、路由追踪、在线MTR和DNS查询,帮助用户了解网络状况和性能。" 1741 | }, 1742 | { 1743 | "title": "IPCheck.ing - 查看我的 IP 地址 - 查询本机 IP 地址及归属地", 1744 | "url": "https://ipcheck.ing/#/", 1745 | "icon": "https://ipcheck.ing/logos/logo.svg", 1746 | "categories": "服务运维", 1747 | "tags": "IP地址,地理位置,网络连通性,WebRTC, DNS泄露,网速测试", 1748 | "description": "IPCheck.ing 是一个用于查看和查询本机 IP 地址及其归属地的工具。它提供了多种功能,包括 IP 信息查询、网络连通性测试、WebRTC 测试、DNS 泄露检测和网速测试。" 1749 | }, 1750 | { 1751 | "title": "高精度IP地址归属地查询", 1752 | "url": "https://ping0.cc/", 1753 | "icon": "", 1754 | "categories": "服务运维", 1755 | "tags": "IP查询,IP定位,网络监控", 1756 | "description": "本站提供高精度IP地址归属地查询服务,支持IPv4和IPv6,提供IP位置、ASN数据、CIDR信息等详细信息。" 1757 | }, 1758 | { 1759 | "title": "IP地址数据提供商 - IPinfo.io", 1760 | "url": "https://ipinfo.io/", 1761 | "icon": "https://ipinfo.io/favicon.ico", 1762 | "categories": "服务运维", 1763 | "tags": "IP地址,地理位置,隐私检测,公司查询,ASN", 1764 | "description": "IPinfo.io 提供准确的IP地址数据,包括地理位置查询、隐私检测、公司信息查询、ASN信息等,适用于网络安全、数据分析等场景。" 1765 | }, 1766 | { 1767 | "title": "Freely available Web-Based Virtual Browser - Browser.lol", 1768 | "url": "https://browser.lol/", 1769 | "icon": "https://browser.lol/img/logo.svg", 1770 | "categories": "服务运维", 1771 | "tags": "虚拟浏览器,安全浏览,匿名浏览,解除限制,隐私保护", 1772 | "description": "Browser.lol 是一个基于网络的虚拟浏览器,允许用户在现有浏览器中安全地访问被阻止或有风险的网站,无需安装或配置。它提供了匿名浏览、解除地理限制、设备测试、漏洞测试等功能,确保用户的在线隐私和安全。" 1773 | }, 1774 | { 1775 | "title": "Google 趋势", 1776 | "url": "https://trends.google.com/trends", 1777 | "icon": "", 1778 | "categories": "服务运维", 1779 | "tags": "搜索趋势,数据分析,热门话题", 1780 | "description": "Google 趋势提供了全球用户搜索行为的数据分析,帮助用户了解当前的热门话题和趋势。" 1781 | }, 1782 | { 1783 | "title": "百度指数", 1784 | "url": "https://index.baidu.com/v2/index.html#/", 1785 | "icon": "https://index.baidu.com/favicon.ico", 1786 | "categories": "服务运维", 1787 | "tags": "数据分析,市场趋势,营销", 1788 | "description": "百度指数是一个数据分析平台,通过分析搜索数据,洞察市场趋势和用户行为,帮助企业制定营销策略。" 1789 | }, 1790 | { 1791 | "title": "算数指数-巨量算数", 1792 | "url": "https://trendinsight.oceanengine.com/arithmetic-index", 1793 | "icon": "", 1794 | "categories": "服务运维", 1795 | "tags": "算数指数,数据分析,行业洞察", 1796 | "description": "巨量算数提供算数指数、算数榜单、行业指南、区域指南、创作指南和洞察报告,帮助用户进行数据分析和行业洞察。" 1797 | }, 1798 | { 1799 | "title": "360趋势-大数据分享平台", 1800 | "url": "https://trends.so.com/", 1801 | "icon": "https://trends.so.com/favicon.ico", 1802 | "categories": "服务运维", 1803 | "tags": "大数据,趋势分析,数据分享", 1804 | "description": "360趋势是一个大数据分享平台,提供热门排行、历史专题等内容,涵盖娱乐、汽车、直播、化妆品、奢侈品、智能终端等多个领域。" 1805 | }, 1806 | { 1807 | "title": "Wayback Machine", 1808 | "url": "https://web.archive.org/", 1809 | "icon": "", 1810 | "categories": "服务运维", 1811 | "tags": "互联网存档,网页保存,数字图书馆", 1812 | "description": "Wayback Machine 是一个由互联网档案馆发起的项目,旨在建立一个数字图书馆,保存互联网网站和其他文化遗产的数字形式。用户可以通过该平台捕获、管理和搜索数字内容。" 1813 | }, 1814 | { 1815 | "title": "SimilarSiteSearch - 找到类似网站的最佳地点", 1816 | "url": "https://www.similarsitesearch.com/", 1817 | "icon": "https://www.similarsitesearch.com/favicon.ico", 1818 | "categories": "服务运维", 1819 | "tags": "类似网站,网站搜索,网站推荐", 1820 | "description": "SimilarSiteSearch 是一个帮助用户快速发现提供类似内容、功能和服务的网站的搜索引擎。用户可以通过输入网站名称来找到替代网站,并根据相关性或受欢迎程度进行排序。" 1821 | }, 1822 | { 1823 | "title": "EU.org: 免费域名服务,自1996年起", 1824 | "url": "https://nic.eu.org/", 1825 | "icon": "https://nic.eu.org/favicon.png", 1826 | "categories": "服务运维", 1827 | "tags": "免费域名,非营利组织,域名注册", 1828 | "description": "EU.org的主要目标是为无法负担某些NIC费用的用户或非营利组织提供免费的子域名注册服务。" 1829 | }, 1830 | { 1831 | "title": "Freenom", 1832 | "url": "https://my.freenom.com/clientarea.php", 1833 | "icon": "https://my.freenom.com/favicon.ico", 1834 | "categories": "服务运维", 1835 | "tags": "域名注册,免费域名,付费域名,域名续费,域名转移", 1836 | "description": "Freenom 是一家提供免费和付费域名注册服务的公司。用户可以在其网站上注册新域名、续费域名、转移域名,并使用其 API 进行开发。" 1837 | }, 1838 | { 1839 | "title": "Cloud Servers — CLOUDCONE", 1840 | "url": "https://app.cloudcone.com/cloud", 1841 | "icon": "https://app.cloudcone.com/assets/img/favicon.png", 1842 | "categories": "服务运维", 1843 | "tags": "云服务器,高性能,SSD,可扩展,Windows,预算VPS", 1844 | "description": "CloudCone 提供高性能 SSD 云服务器,支持可扩展资源和 Windows 应用,适合预算有限的用户。" 1845 | }, 1846 | { 1847 | "title": "Uptime Kuma: 自托管监控工具", 1848 | "url": "https://github.com/louislam/uptime-kuma", 1849 | "icon": "", 1850 | "categories": "服务运维", 1851 | "tags": "监控,自托管,网络安全,开源,工具", 1852 | "description": "Uptime Kuma 是一个易于使用的自托管监控工具,支持HTTP(s)、TCP、Ping等多种监控方式,提供丰富的通知服务和多语言支持。" 1853 | } 1854 | ] 1855 | } 1856 | ] -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '9.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | importers: 8 | 9 | .: 10 | dependencies: 11 | '@iconify/json': 12 | specifier: ^2.2.299 13 | version: 2.2.299 14 | '@iconify/tailwind': 15 | specifier: ^1.2.0 16 | version: 1.2.0 17 | fuse.js: 18 | specifier: ^7.0.0 19 | version: 7.0.0 20 | theme-change: 21 | specifier: ^2.5.0 22 | version: 2.5.0 23 | devDependencies: 24 | '@eslint/compat': 25 | specifier: ^1.2.5 26 | version: 1.2.5(eslint@9.18.0(jiti@1.21.7)) 27 | '@eslint/js': 28 | specifier: ^9.18.0 29 | version: 9.18.0 30 | '@sveltejs/adapter-static': 31 | specifier: ^3.0.8 32 | version: 3.0.8(@sveltejs/kit@2.16.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)))(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0))) 33 | '@sveltejs/kit': 34 | specifier: ^2.16.1 35 | version: 2.16.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)))(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)) 36 | '@sveltejs/vite-plugin-svelte': 37 | specifier: ^5.0.3 38 | version: 5.0.3(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)) 39 | autoprefixer: 40 | specifier: ^10.4.20 41 | version: 10.4.20(postcss@8.5.1) 42 | daisyui: 43 | specifier: ^4.12.23 44 | version: 4.12.23(postcss@8.5.1) 45 | eslint: 46 | specifier: ^9.18.0 47 | version: 9.18.0(jiti@1.21.7) 48 | eslint-config-prettier: 49 | specifier: ^10.0.1 50 | version: 10.0.1(eslint@9.18.0(jiti@1.21.7)) 51 | eslint-plugin-svelte: 52 | specifier: ^2.46.1 53 | version: 2.46.1(eslint@9.18.0(jiti@1.21.7))(svelte@5.19.1) 54 | globals: 55 | specifier: ^15.14.0 56 | version: 15.14.0 57 | prettier: 58 | specifier: ^3.4.2 59 | version: 3.4.2 60 | prettier-plugin-svelte: 61 | specifier: ^3.3.3 62 | version: 3.3.3(prettier@3.4.2)(svelte@5.19.1) 63 | prettier-plugin-tailwindcss: 64 | specifier: ^0.6.10 65 | version: 0.6.10(prettier-plugin-svelte@3.3.3(prettier@3.4.2)(svelte@5.19.1))(prettier@3.4.2) 66 | svelte: 67 | specifier: ^5.19.1 68 | version: 5.19.1 69 | tailwindcss: 70 | specifier: ^3.4.17 71 | version: 3.4.17 72 | vite: 73 | specifier: ^6.0.11 74 | version: 6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0) 75 | 76 | packages: 77 | 78 | '@alloc/quick-lru@5.2.0': 79 | resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} 80 | engines: {node: '>=10'} 81 | 82 | '@ampproject/remapping@2.3.0': 83 | resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} 84 | engines: {node: '>=6.0.0'} 85 | 86 | '@esbuild/aix-ppc64@0.24.2': 87 | resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==} 88 | engines: {node: '>=18'} 89 | cpu: [ppc64] 90 | os: [aix] 91 | 92 | '@esbuild/android-arm64@0.24.2': 93 | resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==} 94 | engines: {node: '>=18'} 95 | cpu: [arm64] 96 | os: [android] 97 | 98 | '@esbuild/android-arm@0.24.2': 99 | resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==} 100 | engines: {node: '>=18'} 101 | cpu: [arm] 102 | os: [android] 103 | 104 | '@esbuild/android-x64@0.24.2': 105 | resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==} 106 | engines: {node: '>=18'} 107 | cpu: [x64] 108 | os: [android] 109 | 110 | '@esbuild/darwin-arm64@0.24.2': 111 | resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==} 112 | engines: {node: '>=18'} 113 | cpu: [arm64] 114 | os: [darwin] 115 | 116 | '@esbuild/darwin-x64@0.24.2': 117 | resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==} 118 | engines: {node: '>=18'} 119 | cpu: [x64] 120 | os: [darwin] 121 | 122 | '@esbuild/freebsd-arm64@0.24.2': 123 | resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==} 124 | engines: {node: '>=18'} 125 | cpu: [arm64] 126 | os: [freebsd] 127 | 128 | '@esbuild/freebsd-x64@0.24.2': 129 | resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==} 130 | engines: {node: '>=18'} 131 | cpu: [x64] 132 | os: [freebsd] 133 | 134 | '@esbuild/linux-arm64@0.24.2': 135 | resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==} 136 | engines: {node: '>=18'} 137 | cpu: [arm64] 138 | os: [linux] 139 | 140 | '@esbuild/linux-arm@0.24.2': 141 | resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==} 142 | engines: {node: '>=18'} 143 | cpu: [arm] 144 | os: [linux] 145 | 146 | '@esbuild/linux-ia32@0.24.2': 147 | resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==} 148 | engines: {node: '>=18'} 149 | cpu: [ia32] 150 | os: [linux] 151 | 152 | '@esbuild/linux-loong64@0.24.2': 153 | resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==} 154 | engines: {node: '>=18'} 155 | cpu: [loong64] 156 | os: [linux] 157 | 158 | '@esbuild/linux-mips64el@0.24.2': 159 | resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==} 160 | engines: {node: '>=18'} 161 | cpu: [mips64el] 162 | os: [linux] 163 | 164 | '@esbuild/linux-ppc64@0.24.2': 165 | resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==} 166 | engines: {node: '>=18'} 167 | cpu: [ppc64] 168 | os: [linux] 169 | 170 | '@esbuild/linux-riscv64@0.24.2': 171 | resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==} 172 | engines: {node: '>=18'} 173 | cpu: [riscv64] 174 | os: [linux] 175 | 176 | '@esbuild/linux-s390x@0.24.2': 177 | resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==} 178 | engines: {node: '>=18'} 179 | cpu: [s390x] 180 | os: [linux] 181 | 182 | '@esbuild/linux-x64@0.24.2': 183 | resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==} 184 | engines: {node: '>=18'} 185 | cpu: [x64] 186 | os: [linux] 187 | 188 | '@esbuild/netbsd-arm64@0.24.2': 189 | resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==} 190 | engines: {node: '>=18'} 191 | cpu: [arm64] 192 | os: [netbsd] 193 | 194 | '@esbuild/netbsd-x64@0.24.2': 195 | resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==} 196 | engines: {node: '>=18'} 197 | cpu: [x64] 198 | os: [netbsd] 199 | 200 | '@esbuild/openbsd-arm64@0.24.2': 201 | resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==} 202 | engines: {node: '>=18'} 203 | cpu: [arm64] 204 | os: [openbsd] 205 | 206 | '@esbuild/openbsd-x64@0.24.2': 207 | resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==} 208 | engines: {node: '>=18'} 209 | cpu: [x64] 210 | os: [openbsd] 211 | 212 | '@esbuild/sunos-x64@0.24.2': 213 | resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==} 214 | engines: {node: '>=18'} 215 | cpu: [x64] 216 | os: [sunos] 217 | 218 | '@esbuild/win32-arm64@0.24.2': 219 | resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==} 220 | engines: {node: '>=18'} 221 | cpu: [arm64] 222 | os: [win32] 223 | 224 | '@esbuild/win32-ia32@0.24.2': 225 | resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==} 226 | engines: {node: '>=18'} 227 | cpu: [ia32] 228 | os: [win32] 229 | 230 | '@esbuild/win32-x64@0.24.2': 231 | resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==} 232 | engines: {node: '>=18'} 233 | cpu: [x64] 234 | os: [win32] 235 | 236 | '@eslint-community/eslint-utils@4.4.1': 237 | resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} 238 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 239 | peerDependencies: 240 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 241 | 242 | '@eslint-community/regexpp@4.12.1': 243 | resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} 244 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 245 | 246 | '@eslint/compat@1.2.5': 247 | resolution: {integrity: sha512-5iuG/StT+7OfvhoBHPlmxkPA9om6aDUFgmD4+mWKAGsYt4vCe8rypneG03AuseyRHBmcCLXQtIH5S26tIoggLg==} 248 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 249 | peerDependencies: 250 | eslint: ^9.10.0 251 | peerDependenciesMeta: 252 | eslint: 253 | optional: true 254 | 255 | '@eslint/config-array@0.19.1': 256 | resolution: {integrity: sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==} 257 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 258 | 259 | '@eslint/core@0.10.0': 260 | resolution: {integrity: sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==} 261 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 262 | 263 | '@eslint/eslintrc@3.2.0': 264 | resolution: {integrity: sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==} 265 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 266 | 267 | '@eslint/js@9.18.0': 268 | resolution: {integrity: sha512-fK6L7rxcq6/z+AaQMtiFTkvbHkBLNlwyRxHpKawP0x3u9+NC6MQTnFW+AdpwC6gfHTW0051cokQgtTN2FqlxQA==} 269 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 270 | 271 | '@eslint/object-schema@2.1.5': 272 | resolution: {integrity: sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==} 273 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 274 | 275 | '@eslint/plugin-kit@0.2.5': 276 | resolution: {integrity: sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==} 277 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 278 | 279 | '@humanfs/core@0.19.1': 280 | resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} 281 | engines: {node: '>=18.18.0'} 282 | 283 | '@humanfs/node@0.16.6': 284 | resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==} 285 | engines: {node: '>=18.18.0'} 286 | 287 | '@humanwhocodes/module-importer@1.0.1': 288 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 289 | engines: {node: '>=12.22'} 290 | 291 | '@humanwhocodes/retry@0.3.1': 292 | resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} 293 | engines: {node: '>=18.18'} 294 | 295 | '@humanwhocodes/retry@0.4.1': 296 | resolution: {integrity: sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==} 297 | engines: {node: '>=18.18'} 298 | 299 | '@iconify/json@2.2.299': 300 | resolution: {integrity: sha512-YsHoXNK4tBfY1aABlnAxGv8BFNsXBRfTuhRqkXLC0AK+amM+IDPLpVyOPCttcEHKuAsmh0OVPsrCZe2bC0puTA==} 301 | 302 | '@iconify/tailwind@1.2.0': 303 | resolution: {integrity: sha512-KgpIHWOTcRYw1XcoUqyNSrmYyfLLqZYu3AmP8zdfLk0F5TqRO8YerhlvlQmGfn7rJXgPeZN569xPAJnJ53zZxA==} 304 | 305 | '@iconify/types@2.0.0': 306 | resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} 307 | 308 | '@isaacs/cliui@8.0.2': 309 | resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} 310 | engines: {node: '>=12'} 311 | 312 | '@jridgewell/gen-mapping@0.3.8': 313 | resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} 314 | engines: {node: '>=6.0.0'} 315 | 316 | '@jridgewell/resolve-uri@3.1.2': 317 | resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 318 | engines: {node: '>=6.0.0'} 319 | 320 | '@jridgewell/set-array@1.2.1': 321 | resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} 322 | engines: {node: '>=6.0.0'} 323 | 324 | '@jridgewell/sourcemap-codec@1.5.0': 325 | resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} 326 | 327 | '@jridgewell/trace-mapping@0.3.25': 328 | resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} 329 | 330 | '@nodelib/fs.scandir@2.1.5': 331 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 332 | engines: {node: '>= 8'} 333 | 334 | '@nodelib/fs.stat@2.0.5': 335 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 336 | engines: {node: '>= 8'} 337 | 338 | '@nodelib/fs.walk@1.2.8': 339 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 340 | engines: {node: '>= 8'} 341 | 342 | '@pkgjs/parseargs@0.11.0': 343 | resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} 344 | engines: {node: '>=14'} 345 | 346 | '@polka/url@1.0.0-next.28': 347 | resolution: {integrity: sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==} 348 | 349 | '@rollup/rollup-android-arm-eabi@4.31.0': 350 | resolution: {integrity: sha512-9NrR4033uCbUBRgvLcBrJofa2KY9DzxL2UKZ1/4xA/mnTNyhZCWBuD8X3tPm1n4KxcgaraOYgrFKSgwjASfmlA==} 351 | cpu: [arm] 352 | os: [android] 353 | 354 | '@rollup/rollup-android-arm64@4.31.0': 355 | resolution: {integrity: sha512-iBbODqT86YBFHajxxF8ebj2hwKm1k8PTBQSojSt3d1FFt1gN+xf4CowE47iN0vOSdnd+5ierMHBbu/rHc7nq5g==} 356 | cpu: [arm64] 357 | os: [android] 358 | 359 | '@rollup/rollup-darwin-arm64@4.31.0': 360 | resolution: {integrity: sha512-WHIZfXgVBX30SWuTMhlHPXTyN20AXrLH4TEeH/D0Bolvx9PjgZnn4H677PlSGvU6MKNsjCQJYczkpvBbrBnG6g==} 361 | cpu: [arm64] 362 | os: [darwin] 363 | 364 | '@rollup/rollup-darwin-x64@4.31.0': 365 | resolution: {integrity: sha512-hrWL7uQacTEF8gdrQAqcDy9xllQ0w0zuL1wk1HV8wKGSGbKPVjVUv/DEwT2+Asabf8Dh/As+IvfdU+H8hhzrQQ==} 366 | cpu: [x64] 367 | os: [darwin] 368 | 369 | '@rollup/rollup-freebsd-arm64@4.31.0': 370 | resolution: {integrity: sha512-S2oCsZ4hJviG1QjPY1h6sVJLBI6ekBeAEssYKad1soRFv3SocsQCzX6cwnk6fID6UQQACTjeIMB+hyYrFacRew==} 371 | cpu: [arm64] 372 | os: [freebsd] 373 | 374 | '@rollup/rollup-freebsd-x64@4.31.0': 375 | resolution: {integrity: sha512-pCANqpynRS4Jirn4IKZH4tnm2+2CqCNLKD7gAdEjzdLGbH1iO0zouHz4mxqg0uEMpO030ejJ0aA6e1PJo2xrPA==} 376 | cpu: [x64] 377 | os: [freebsd] 378 | 379 | '@rollup/rollup-linux-arm-gnueabihf@4.31.0': 380 | resolution: {integrity: sha512-0O8ViX+QcBd3ZmGlcFTnYXZKGbFu09EhgD27tgTdGnkcYXLat4KIsBBQeKLR2xZDCXdIBAlWLkiXE1+rJpCxFw==} 381 | cpu: [arm] 382 | os: [linux] 383 | libc: [glibc] 384 | 385 | '@rollup/rollup-linux-arm-musleabihf@4.31.0': 386 | resolution: {integrity: sha512-w5IzG0wTVv7B0/SwDnMYmbr2uERQp999q8FMkKG1I+j8hpPX2BYFjWe69xbhbP6J9h2gId/7ogesl9hwblFwwg==} 387 | cpu: [arm] 388 | os: [linux] 389 | libc: [musl] 390 | 391 | '@rollup/rollup-linux-arm64-gnu@4.31.0': 392 | resolution: {integrity: sha512-JyFFshbN5xwy6fulZ8B/8qOqENRmDdEkcIMF0Zz+RsfamEW+Zabl5jAb0IozP/8UKnJ7g2FtZZPEUIAlUSX8cA==} 393 | cpu: [arm64] 394 | os: [linux] 395 | libc: [glibc] 396 | 397 | '@rollup/rollup-linux-arm64-musl@4.31.0': 398 | resolution: {integrity: sha512-kpQXQ0UPFeMPmPYksiBL9WS/BDiQEjRGMfklVIsA0Sng347H8W2iexch+IEwaR7OVSKtr2ZFxggt11zVIlZ25g==} 399 | cpu: [arm64] 400 | os: [linux] 401 | libc: [musl] 402 | 403 | '@rollup/rollup-linux-loongarch64-gnu@4.31.0': 404 | resolution: {integrity: sha512-pMlxLjt60iQTzt9iBb3jZphFIl55a70wexvo8p+vVFK+7ifTRookdoXX3bOsRdmfD+OKnMozKO6XM4zR0sHRrQ==} 405 | cpu: [loong64] 406 | os: [linux] 407 | libc: [glibc] 408 | 409 | '@rollup/rollup-linux-powerpc64le-gnu@4.31.0': 410 | resolution: {integrity: sha512-D7TXT7I/uKEuWiRkEFbed1UUYZwcJDU4vZQdPTcepK7ecPhzKOYk4Er2YR4uHKme4qDeIh6N3XrLfpuM7vzRWQ==} 411 | cpu: [ppc64] 412 | os: [linux] 413 | libc: [glibc] 414 | 415 | '@rollup/rollup-linux-riscv64-gnu@4.31.0': 416 | resolution: {integrity: sha512-wal2Tc8O5lMBtoePLBYRKj2CImUCJ4UNGJlLwspx7QApYny7K1cUYlzQ/4IGQBLmm+y0RS7dwc3TDO/pmcneTw==} 417 | cpu: [riscv64] 418 | os: [linux] 419 | libc: [glibc] 420 | 421 | '@rollup/rollup-linux-s390x-gnu@4.31.0': 422 | resolution: {integrity: sha512-O1o5EUI0+RRMkK9wiTVpk2tyzXdXefHtRTIjBbmFREmNMy7pFeYXCFGbhKFwISA3UOExlo5GGUuuj3oMKdK6JQ==} 423 | cpu: [s390x] 424 | os: [linux] 425 | libc: [glibc] 426 | 427 | '@rollup/rollup-linux-x64-gnu@4.31.0': 428 | resolution: {integrity: sha512-zSoHl356vKnNxwOWnLd60ixHNPRBglxpv2g7q0Cd3Pmr561gf0HiAcUBRL3S1vPqRC17Zo2CX/9cPkqTIiai1g==} 429 | cpu: [x64] 430 | os: [linux] 431 | libc: [glibc] 432 | 433 | '@rollup/rollup-linux-x64-musl@4.31.0': 434 | resolution: {integrity: sha512-ypB/HMtcSGhKUQNiFwqgdclWNRrAYDH8iMYH4etw/ZlGwiTVxBz2tDrGRrPlfZu6QjXwtd+C3Zib5pFqID97ZA==} 435 | cpu: [x64] 436 | os: [linux] 437 | libc: [musl] 438 | 439 | '@rollup/rollup-win32-arm64-msvc@4.31.0': 440 | resolution: {integrity: sha512-JuhN2xdI/m8Hr+aVO3vspO7OQfUFO6bKLIRTAy0U15vmWjnZDLrEgCZ2s6+scAYaQVpYSh9tZtRijApw9IXyMw==} 441 | cpu: [arm64] 442 | os: [win32] 443 | 444 | '@rollup/rollup-win32-ia32-msvc@4.31.0': 445 | resolution: {integrity: sha512-U1xZZXYkvdf5MIWmftU8wrM5PPXzyaY1nGCI4KI4BFfoZxHamsIe+BtnPLIvvPykvQWlVbqUXdLa4aJUuilwLQ==} 446 | cpu: [ia32] 447 | os: [win32] 448 | 449 | '@rollup/rollup-win32-x64-msvc@4.31.0': 450 | resolution: {integrity: sha512-ul8rnCsUumNln5YWwz0ted2ZHFhzhRRnkpBZ+YRuHoRAlUji9KChpOUOndY7uykrPEPXVbHLlsdo6v5yXo/TXw==} 451 | cpu: [x64] 452 | os: [win32] 453 | 454 | '@sveltejs/adapter-static@3.0.8': 455 | resolution: {integrity: sha512-YaDrquRpZwfcXbnlDsSrBQNCChVOT9MGuSg+dMAyfsAa1SmiAhrA5jUYUiIMC59G92kIbY/AaQOWcBdq+lh+zg==} 456 | peerDependencies: 457 | '@sveltejs/kit': ^2.0.0 458 | 459 | '@sveltejs/kit@2.16.1': 460 | resolution: {integrity: sha512-2pF5sgGJx9brYZ/9nNDYnh5KX0JguPF14dnvvtf/MqrvlWrDj/e7Rk3LBJPecFLLK1GRs6ZniD24gFPqZm/NFw==} 461 | engines: {node: '>=18.13'} 462 | hasBin: true 463 | peerDependencies: 464 | '@sveltejs/vite-plugin-svelte': ^3.0.0 || ^4.0.0-next.1 || ^5.0.0 465 | svelte: ^4.0.0 || ^5.0.0-next.0 466 | vite: ^5.0.3 || ^6.0.0 467 | 468 | '@sveltejs/vite-plugin-svelte-inspector@4.0.1': 469 | resolution: {integrity: sha512-J/Nmb2Q2y7mck2hyCX4ckVHcR5tu2J+MtBEQqpDrrgELZ2uvraQcK/ioCV61AqkdXFgriksOKIceDcQmqnGhVw==} 470 | engines: {node: ^18.0.0 || ^20.0.0 || >=22} 471 | peerDependencies: 472 | '@sveltejs/vite-plugin-svelte': ^5.0.0 473 | svelte: ^5.0.0 474 | vite: ^6.0.0 475 | 476 | '@sveltejs/vite-plugin-svelte@5.0.3': 477 | resolution: {integrity: sha512-MCFS6CrQDu1yGwspm4qtli0e63vaPCehf6V7pIMP15AsWgMKrqDGCPFF/0kn4SP0ii4aySu4Pa62+fIRGFMjgw==} 478 | engines: {node: ^18.0.0 || ^20.0.0 || >=22} 479 | peerDependencies: 480 | svelte: ^5.0.0 481 | vite: ^6.0.0 482 | 483 | '@types/cookie@0.6.0': 484 | resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} 485 | 486 | '@types/estree@1.0.6': 487 | resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} 488 | 489 | '@types/json-schema@7.0.15': 490 | resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} 491 | 492 | '@types/node@22.10.7': 493 | resolution: {integrity: sha512-V09KvXxFiutGp6B7XkpaDXlNadZxrzajcY50EuoLIpQ6WWYCSvf19lVIazzfIzQvhUN2HjX12spLojTnhuKlGg==} 494 | 495 | acorn-jsx@5.3.2: 496 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 497 | peerDependencies: 498 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 499 | 500 | acorn-typescript@1.4.13: 501 | resolution: {integrity: sha512-xsc9Xv0xlVfwp2o7sQ+GCQ1PgbkdcpWdTzrwXxO3xDMTAywVS3oXVOcOHuRjAPkS4P9b+yc/qNF15460v+jp4Q==} 502 | peerDependencies: 503 | acorn: '>=8.9.0' 504 | 505 | acorn@8.14.0: 506 | resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} 507 | engines: {node: '>=0.4.0'} 508 | hasBin: true 509 | 510 | ajv@6.12.6: 511 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 512 | 513 | ansi-regex@5.0.1: 514 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 515 | engines: {node: '>=8'} 516 | 517 | ansi-regex@6.1.0: 518 | resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} 519 | engines: {node: '>=12'} 520 | 521 | ansi-styles@4.3.0: 522 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 523 | engines: {node: '>=8'} 524 | 525 | ansi-styles@6.2.1: 526 | resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} 527 | engines: {node: '>=12'} 528 | 529 | any-promise@1.3.0: 530 | resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} 531 | 532 | anymatch@3.1.3: 533 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} 534 | engines: {node: '>= 8'} 535 | 536 | arg@5.0.2: 537 | resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} 538 | 539 | argparse@2.0.1: 540 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 541 | 542 | aria-query@5.3.2: 543 | resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} 544 | engines: {node: '>= 0.4'} 545 | 546 | autoprefixer@10.4.20: 547 | resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==} 548 | engines: {node: ^10 || ^12 || >=14} 549 | hasBin: true 550 | peerDependencies: 551 | postcss: ^8.1.0 552 | 553 | axobject-query@4.1.0: 554 | resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} 555 | engines: {node: '>= 0.4'} 556 | 557 | balanced-match@1.0.2: 558 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 559 | 560 | binary-extensions@2.3.0: 561 | resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} 562 | engines: {node: '>=8'} 563 | 564 | brace-expansion@1.1.11: 565 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 566 | 567 | brace-expansion@2.0.1: 568 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 569 | 570 | braces@3.0.3: 571 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} 572 | engines: {node: '>=8'} 573 | 574 | browserslist@4.24.4: 575 | resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==} 576 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 577 | hasBin: true 578 | 579 | callsites@3.1.0: 580 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 581 | engines: {node: '>=6'} 582 | 583 | camelcase-css@2.0.1: 584 | resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} 585 | engines: {node: '>= 6'} 586 | 587 | caniuse-lite@1.0.30001695: 588 | resolution: {integrity: sha512-vHyLade6wTgI2u1ec3WQBxv+2BrTERV28UXQu9LO6lZ9pYeMk34vjXFLOxo1A4UBA8XTL4njRQZdno/yYaSmWw==} 589 | 590 | chalk@4.1.2: 591 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 592 | engines: {node: '>=10'} 593 | 594 | chokidar@3.6.0: 595 | resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} 596 | engines: {node: '>= 8.10.0'} 597 | 598 | clsx@2.1.1: 599 | resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} 600 | engines: {node: '>=6'} 601 | 602 | color-convert@2.0.1: 603 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 604 | engines: {node: '>=7.0.0'} 605 | 606 | color-name@1.1.4: 607 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 608 | 609 | commander@4.1.1: 610 | resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} 611 | engines: {node: '>= 6'} 612 | 613 | concat-map@0.0.1: 614 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 615 | 616 | cookie@0.6.0: 617 | resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} 618 | engines: {node: '>= 0.6'} 619 | 620 | cross-spawn@7.0.6: 621 | resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} 622 | engines: {node: '>= 8'} 623 | 624 | css-selector-tokenizer@0.8.0: 625 | resolution: {integrity: sha512-Jd6Ig3/pe62/qe5SBPTN8h8LeUg/pT4lLgtavPf7updwwHpvFzxvOQBHYj2LZDMjUnBzgvIUSjRcf6oT5HzHFg==} 626 | 627 | cssesc@3.0.0: 628 | resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} 629 | engines: {node: '>=4'} 630 | hasBin: true 631 | 632 | culori@3.3.0: 633 | resolution: {integrity: sha512-pHJg+jbuFsCjz9iclQBqyL3B2HLCBF71BwVNujUYEvCeQMvV97R59MNK3R2+jgJ3a1fcZgI9B3vYgz8lzr/BFQ==} 634 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 635 | 636 | daisyui@4.12.23: 637 | resolution: {integrity: sha512-EM38duvxutJ5PD65lO/AFMpcw+9qEy6XAZrTpzp7WyaPeO/l+F/Qiq0ECHHmFNcFXh5aVoALY4MGrrxtCiaQCQ==} 638 | engines: {node: '>=16.9.0'} 639 | 640 | debug@4.4.0: 641 | resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} 642 | engines: {node: '>=6.0'} 643 | peerDependencies: 644 | supports-color: '*' 645 | peerDependenciesMeta: 646 | supports-color: 647 | optional: true 648 | 649 | deep-is@0.1.4: 650 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 651 | 652 | deepmerge@4.3.1: 653 | resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} 654 | engines: {node: '>=0.10.0'} 655 | 656 | devalue@5.1.1: 657 | resolution: {integrity: sha512-maua5KUiapvEwiEAe+XnlZ3Rh0GD+qI1J/nb9vrJc3muPXvcF/8gXYTWF76+5DAqHyDUtOIImEuo0YKE9mshVw==} 658 | 659 | didyoumean@1.2.2: 660 | resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} 661 | 662 | dlv@1.1.3: 663 | resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} 664 | 665 | eastasianwidth@0.2.0: 666 | resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} 667 | 668 | electron-to-chromium@1.5.84: 669 | resolution: {integrity: sha512-I+DQ8xgafao9Ha6y0qjHHvpZ9OfyA1qKlkHkjywxzniORU2awxyz7f/iVJcULmrF2yrM3nHQf+iDjJtbbexd/g==} 670 | 671 | emoji-regex@8.0.0: 672 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 673 | 674 | emoji-regex@9.2.2: 675 | resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} 676 | 677 | esbuild@0.24.2: 678 | resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==} 679 | engines: {node: '>=18'} 680 | hasBin: true 681 | 682 | escalade@3.2.0: 683 | resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} 684 | engines: {node: '>=6'} 685 | 686 | escape-string-regexp@4.0.0: 687 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 688 | engines: {node: '>=10'} 689 | 690 | eslint-compat-utils@0.5.1: 691 | resolution: {integrity: sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==} 692 | engines: {node: '>=12'} 693 | peerDependencies: 694 | eslint: '>=6.0.0' 695 | 696 | eslint-config-prettier@10.0.1: 697 | resolution: {integrity: sha512-lZBts941cyJyeaooiKxAtzoPHTN+GbQTJFAIdQbRhA4/8whaAraEh47Whw/ZFfrjNSnlAxqfm9i0XVAEkULjCw==} 698 | hasBin: true 699 | peerDependencies: 700 | eslint: '>=7.0.0' 701 | 702 | eslint-plugin-svelte@2.46.1: 703 | resolution: {integrity: sha512-7xYr2o4NID/f9OEYMqxsEQsCsj4KaMy4q5sANaKkAb6/QeCjYFxRmDm2S3YC3A3pl1kyPZ/syOx/i7LcWYSbIw==} 704 | engines: {node: ^14.17.0 || >=16.0.0} 705 | peerDependencies: 706 | eslint: ^7.0.0 || ^8.0.0-0 || ^9.0.0-0 707 | svelte: ^3.37.0 || ^4.0.0 || ^5.0.0 708 | peerDependenciesMeta: 709 | svelte: 710 | optional: true 711 | 712 | eslint-scope@7.2.2: 713 | resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} 714 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 715 | 716 | eslint-scope@8.2.0: 717 | resolution: {integrity: sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==} 718 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 719 | 720 | eslint-visitor-keys@3.4.3: 721 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} 722 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 723 | 724 | eslint-visitor-keys@4.2.0: 725 | resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} 726 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 727 | 728 | eslint@9.18.0: 729 | resolution: {integrity: sha512-+waTfRWQlSbpt3KWE+CjrPPYnbq9kfZIYUqapc0uBXyjTp8aYXZDsUH16m39Ryq3NjAVP4tjuF7KaukeqoCoaA==} 730 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 731 | hasBin: true 732 | peerDependencies: 733 | jiti: '*' 734 | peerDependenciesMeta: 735 | jiti: 736 | optional: true 737 | 738 | esm-env@1.2.2: 739 | resolution: {integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==} 740 | 741 | espree@10.3.0: 742 | resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} 743 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 744 | 745 | espree@9.6.1: 746 | resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} 747 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 748 | 749 | esquery@1.6.0: 750 | resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} 751 | engines: {node: '>=0.10'} 752 | 753 | esrap@1.4.3: 754 | resolution: {integrity: sha512-Xddc1RsoFJ4z9nR7W7BFaEPIp4UXoeQ0+077UdWLxbafMQFyU79sQJMk7kxNgRwQ9/aVgaKacCHC2pUACGwmYw==} 755 | 756 | esrecurse@4.3.0: 757 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 758 | engines: {node: '>=4.0'} 759 | 760 | estraverse@5.3.0: 761 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 762 | engines: {node: '>=4.0'} 763 | 764 | esutils@2.0.3: 765 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 766 | engines: {node: '>=0.10.0'} 767 | 768 | fast-deep-equal@3.1.3: 769 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 770 | 771 | fast-glob@3.3.3: 772 | resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} 773 | engines: {node: '>=8.6.0'} 774 | 775 | fast-json-stable-stringify@2.1.0: 776 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 777 | 778 | fast-levenshtein@2.0.6: 779 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 780 | 781 | fastparse@1.1.2: 782 | resolution: {integrity: sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==} 783 | 784 | fastq@1.18.0: 785 | resolution: {integrity: sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==} 786 | 787 | file-entry-cache@8.0.0: 788 | resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} 789 | engines: {node: '>=16.0.0'} 790 | 791 | fill-range@7.1.1: 792 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} 793 | engines: {node: '>=8'} 794 | 795 | find-up@5.0.0: 796 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 797 | engines: {node: '>=10'} 798 | 799 | flat-cache@4.0.1: 800 | resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} 801 | engines: {node: '>=16'} 802 | 803 | flatted@3.3.2: 804 | resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} 805 | 806 | foreground-child@3.3.0: 807 | resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} 808 | engines: {node: '>=14'} 809 | 810 | fraction.js@4.3.7: 811 | resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} 812 | 813 | fsevents@2.3.3: 814 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 815 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 816 | os: [darwin] 817 | 818 | function-bind@1.1.2: 819 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} 820 | 821 | fuse.js@7.0.0: 822 | resolution: {integrity: sha512-14F4hBIxqKvD4Zz/XjDc3y94mNZN6pRv3U13Udo0lNLCWRBUsrMv2xwcF/y/Z5sV6+FQW+/ow68cHpm4sunt8Q==} 823 | engines: {node: '>=10'} 824 | 825 | glob-parent@5.1.2: 826 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 827 | engines: {node: '>= 6'} 828 | 829 | glob-parent@6.0.2: 830 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 831 | engines: {node: '>=10.13.0'} 832 | 833 | glob@10.4.5: 834 | resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} 835 | hasBin: true 836 | 837 | globals@14.0.0: 838 | resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} 839 | engines: {node: '>=18'} 840 | 841 | globals@15.14.0: 842 | resolution: {integrity: sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==} 843 | engines: {node: '>=18'} 844 | 845 | has-flag@4.0.0: 846 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 847 | engines: {node: '>=8'} 848 | 849 | hasown@2.0.2: 850 | resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} 851 | engines: {node: '>= 0.4'} 852 | 853 | ignore@5.3.2: 854 | resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} 855 | engines: {node: '>= 4'} 856 | 857 | import-fresh@3.3.0: 858 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 859 | engines: {node: '>=6'} 860 | 861 | import-meta-resolve@4.1.0: 862 | resolution: {integrity: sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==} 863 | 864 | imurmurhash@0.1.4: 865 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 866 | engines: {node: '>=0.8.19'} 867 | 868 | is-binary-path@2.1.0: 869 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} 870 | engines: {node: '>=8'} 871 | 872 | is-core-module@2.16.1: 873 | resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} 874 | engines: {node: '>= 0.4'} 875 | 876 | is-extglob@2.1.1: 877 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 878 | engines: {node: '>=0.10.0'} 879 | 880 | is-fullwidth-code-point@3.0.0: 881 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 882 | engines: {node: '>=8'} 883 | 884 | is-glob@4.0.3: 885 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 886 | engines: {node: '>=0.10.0'} 887 | 888 | is-number@7.0.0: 889 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 890 | engines: {node: '>=0.12.0'} 891 | 892 | is-reference@3.0.3: 893 | resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==} 894 | 895 | isexe@2.0.0: 896 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 897 | 898 | jackspeak@3.4.3: 899 | resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} 900 | 901 | jiti@1.21.7: 902 | resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==} 903 | hasBin: true 904 | 905 | js-yaml@4.1.0: 906 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 907 | hasBin: true 908 | 909 | json-buffer@3.0.1: 910 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} 911 | 912 | json-schema-traverse@0.4.1: 913 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 914 | 915 | json-stable-stringify-without-jsonify@1.0.1: 916 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 917 | 918 | keyv@4.5.4: 919 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} 920 | 921 | kleur@4.1.5: 922 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} 923 | engines: {node: '>=6'} 924 | 925 | known-css-properties@0.35.0: 926 | resolution: {integrity: sha512-a/RAk2BfKk+WFGhhOCAYqSiFLc34k8Mt/6NWRI4joER0EYUzXIcFivjjnoD3+XU1DggLn/tZc3DOAgke7l8a4A==} 927 | 928 | levn@0.4.1: 929 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 930 | engines: {node: '>= 0.8.0'} 931 | 932 | lilconfig@2.1.0: 933 | resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} 934 | engines: {node: '>=10'} 935 | 936 | lilconfig@3.1.3: 937 | resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} 938 | engines: {node: '>=14'} 939 | 940 | lines-and-columns@1.2.4: 941 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} 942 | 943 | locate-character@3.0.0: 944 | resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} 945 | 946 | locate-path@6.0.0: 947 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 948 | engines: {node: '>=10'} 949 | 950 | lodash.merge@4.6.2: 951 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 952 | 953 | lru-cache@10.4.3: 954 | resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} 955 | 956 | magic-string@0.30.17: 957 | resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} 958 | 959 | merge2@1.4.1: 960 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 961 | engines: {node: '>= 8'} 962 | 963 | micromatch@4.0.8: 964 | resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} 965 | engines: {node: '>=8.6'} 966 | 967 | minimatch@3.1.2: 968 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 969 | 970 | minimatch@9.0.5: 971 | resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} 972 | engines: {node: '>=16 || 14 >=14.17'} 973 | 974 | minipass@7.1.2: 975 | resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} 976 | engines: {node: '>=16 || 14 >=14.17'} 977 | 978 | mri@1.2.0: 979 | resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} 980 | engines: {node: '>=4'} 981 | 982 | mrmime@2.0.0: 983 | resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==} 984 | engines: {node: '>=10'} 985 | 986 | ms@2.1.3: 987 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 988 | 989 | mz@2.7.0: 990 | resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} 991 | 992 | nanoid@3.3.8: 993 | resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} 994 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 995 | hasBin: true 996 | 997 | natural-compare@1.4.0: 998 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 999 | 1000 | node-releases@2.0.19: 1001 | resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} 1002 | 1003 | normalize-path@3.0.0: 1004 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 1005 | engines: {node: '>=0.10.0'} 1006 | 1007 | normalize-range@0.1.2: 1008 | resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} 1009 | engines: {node: '>=0.10.0'} 1010 | 1011 | object-assign@4.1.1: 1012 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 1013 | engines: {node: '>=0.10.0'} 1014 | 1015 | object-hash@3.0.0: 1016 | resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} 1017 | engines: {node: '>= 6'} 1018 | 1019 | optionator@0.9.4: 1020 | resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} 1021 | engines: {node: '>= 0.8.0'} 1022 | 1023 | p-limit@3.1.0: 1024 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 1025 | engines: {node: '>=10'} 1026 | 1027 | p-locate@5.0.0: 1028 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 1029 | engines: {node: '>=10'} 1030 | 1031 | package-json-from-dist@1.0.1: 1032 | resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} 1033 | 1034 | parent-module@1.0.1: 1035 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 1036 | engines: {node: '>=6'} 1037 | 1038 | path-exists@4.0.0: 1039 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 1040 | engines: {node: '>=8'} 1041 | 1042 | path-key@3.1.1: 1043 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 1044 | engines: {node: '>=8'} 1045 | 1046 | path-parse@1.0.7: 1047 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 1048 | 1049 | path-scurry@1.11.1: 1050 | resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} 1051 | engines: {node: '>=16 || 14 >=14.18'} 1052 | 1053 | pathe@1.1.2: 1054 | resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} 1055 | 1056 | picocolors@1.1.1: 1057 | resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} 1058 | 1059 | picomatch@2.3.1: 1060 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 1061 | engines: {node: '>=8.6'} 1062 | 1063 | pify@2.3.0: 1064 | resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} 1065 | engines: {node: '>=0.10.0'} 1066 | 1067 | pirates@4.0.6: 1068 | resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} 1069 | engines: {node: '>= 6'} 1070 | 1071 | postcss-import@15.1.0: 1072 | resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} 1073 | engines: {node: '>=14.0.0'} 1074 | peerDependencies: 1075 | postcss: ^8.0.0 1076 | 1077 | postcss-js@4.0.1: 1078 | resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} 1079 | engines: {node: ^12 || ^14 || >= 16} 1080 | peerDependencies: 1081 | postcss: ^8.4.21 1082 | 1083 | postcss-load-config@3.1.4: 1084 | resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} 1085 | engines: {node: '>= 10'} 1086 | peerDependencies: 1087 | postcss: '>=8.0.9' 1088 | ts-node: '>=9.0.0' 1089 | peerDependenciesMeta: 1090 | postcss: 1091 | optional: true 1092 | ts-node: 1093 | optional: true 1094 | 1095 | postcss-load-config@4.0.2: 1096 | resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} 1097 | engines: {node: '>= 14'} 1098 | peerDependencies: 1099 | postcss: '>=8.0.9' 1100 | ts-node: '>=9.0.0' 1101 | peerDependenciesMeta: 1102 | postcss: 1103 | optional: true 1104 | ts-node: 1105 | optional: true 1106 | 1107 | postcss-nested@6.2.0: 1108 | resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==} 1109 | engines: {node: '>=12.0'} 1110 | peerDependencies: 1111 | postcss: ^8.2.14 1112 | 1113 | postcss-safe-parser@6.0.0: 1114 | resolution: {integrity: sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==} 1115 | engines: {node: '>=12.0'} 1116 | peerDependencies: 1117 | postcss: ^8.3.3 1118 | 1119 | postcss-scss@4.0.9: 1120 | resolution: {integrity: sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==} 1121 | engines: {node: '>=12.0'} 1122 | peerDependencies: 1123 | postcss: ^8.4.29 1124 | 1125 | postcss-selector-parser@6.1.2: 1126 | resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==} 1127 | engines: {node: '>=4'} 1128 | 1129 | postcss-value-parser@4.2.0: 1130 | resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} 1131 | 1132 | postcss@8.5.1: 1133 | resolution: {integrity: sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==} 1134 | engines: {node: ^10 || ^12 || >=14} 1135 | 1136 | prelude-ls@1.2.1: 1137 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 1138 | engines: {node: '>= 0.8.0'} 1139 | 1140 | prettier-plugin-svelte@3.3.3: 1141 | resolution: {integrity: sha512-yViK9zqQ+H2qZD1w/bH7W8i+bVfKrD8GIFjkFe4Thl6kCT9SlAsXVNmt3jCvQOCsnOhcvYgsoVlRV/Eu6x5nNw==} 1142 | peerDependencies: 1143 | prettier: ^3.0.0 1144 | svelte: ^3.2.0 || ^4.0.0-next.0 || ^5.0.0-next.0 1145 | 1146 | prettier-plugin-tailwindcss@0.6.10: 1147 | resolution: {integrity: sha512-ndj2WLDaMzACnr1gAYZiZZLs5ZdOeBYgOsbBmHj3nvW/6q8h8PymsXiEnKvj/9qgCCAoHyvLOisoQdIcsDvIgw==} 1148 | engines: {node: '>=14.21.3'} 1149 | peerDependencies: 1150 | '@ianvs/prettier-plugin-sort-imports': '*' 1151 | '@prettier/plugin-pug': '*' 1152 | '@shopify/prettier-plugin-liquid': '*' 1153 | '@trivago/prettier-plugin-sort-imports': '*' 1154 | '@zackad/prettier-plugin-twig': '*' 1155 | prettier: ^3.0 1156 | prettier-plugin-astro: '*' 1157 | prettier-plugin-css-order: '*' 1158 | prettier-plugin-import-sort: '*' 1159 | prettier-plugin-jsdoc: '*' 1160 | prettier-plugin-marko: '*' 1161 | prettier-plugin-multiline-arrays: '*' 1162 | prettier-plugin-organize-attributes: '*' 1163 | prettier-plugin-organize-imports: '*' 1164 | prettier-plugin-sort-imports: '*' 1165 | prettier-plugin-style-order: '*' 1166 | prettier-plugin-svelte: '*' 1167 | peerDependenciesMeta: 1168 | '@ianvs/prettier-plugin-sort-imports': 1169 | optional: true 1170 | '@prettier/plugin-pug': 1171 | optional: true 1172 | '@shopify/prettier-plugin-liquid': 1173 | optional: true 1174 | '@trivago/prettier-plugin-sort-imports': 1175 | optional: true 1176 | '@zackad/prettier-plugin-twig': 1177 | optional: true 1178 | prettier-plugin-astro: 1179 | optional: true 1180 | prettier-plugin-css-order: 1181 | optional: true 1182 | prettier-plugin-import-sort: 1183 | optional: true 1184 | prettier-plugin-jsdoc: 1185 | optional: true 1186 | prettier-plugin-marko: 1187 | optional: true 1188 | prettier-plugin-multiline-arrays: 1189 | optional: true 1190 | prettier-plugin-organize-attributes: 1191 | optional: true 1192 | prettier-plugin-organize-imports: 1193 | optional: true 1194 | prettier-plugin-sort-imports: 1195 | optional: true 1196 | prettier-plugin-style-order: 1197 | optional: true 1198 | prettier-plugin-svelte: 1199 | optional: true 1200 | 1201 | prettier@3.4.2: 1202 | resolution: {integrity: sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==} 1203 | engines: {node: '>=14'} 1204 | hasBin: true 1205 | 1206 | punycode@2.3.1: 1207 | resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} 1208 | engines: {node: '>=6'} 1209 | 1210 | queue-microtask@1.2.3: 1211 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 1212 | 1213 | read-cache@1.0.0: 1214 | resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} 1215 | 1216 | readdirp@3.6.0: 1217 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} 1218 | engines: {node: '>=8.10.0'} 1219 | 1220 | resolve-from@4.0.0: 1221 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 1222 | engines: {node: '>=4'} 1223 | 1224 | resolve@1.22.10: 1225 | resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} 1226 | engines: {node: '>= 0.4'} 1227 | hasBin: true 1228 | 1229 | reusify@1.0.4: 1230 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 1231 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 1232 | 1233 | rollup@4.31.0: 1234 | resolution: {integrity: sha512-9cCE8P4rZLx9+PjoyqHLs31V9a9Vpvfo4qNcs6JCiGWYhw2gijSetFbH6SSy1whnkgcefnUwr8sad7tgqsGvnw==} 1235 | engines: {node: '>=18.0.0', npm: '>=8.0.0'} 1236 | hasBin: true 1237 | 1238 | run-parallel@1.2.0: 1239 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 1240 | 1241 | sade@1.8.1: 1242 | resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} 1243 | engines: {node: '>=6'} 1244 | 1245 | semver@7.6.3: 1246 | resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} 1247 | engines: {node: '>=10'} 1248 | hasBin: true 1249 | 1250 | set-cookie-parser@2.7.1: 1251 | resolution: {integrity: sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ==} 1252 | 1253 | shebang-command@2.0.0: 1254 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 1255 | engines: {node: '>=8'} 1256 | 1257 | shebang-regex@3.0.0: 1258 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 1259 | engines: {node: '>=8'} 1260 | 1261 | signal-exit@4.1.0: 1262 | resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} 1263 | engines: {node: '>=14'} 1264 | 1265 | sirv@3.0.0: 1266 | resolution: {integrity: sha512-BPwJGUeDaDCHihkORDchNyyTvWFhcusy1XMmhEVTQTwGeybFbp8YEmB+njbPnth1FibULBSBVwCQni25XlCUDg==} 1267 | engines: {node: '>=18'} 1268 | 1269 | source-map-js@1.2.1: 1270 | resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} 1271 | engines: {node: '>=0.10.0'} 1272 | 1273 | string-width@4.2.3: 1274 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 1275 | engines: {node: '>=8'} 1276 | 1277 | string-width@5.1.2: 1278 | resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} 1279 | engines: {node: '>=12'} 1280 | 1281 | strip-ansi@6.0.1: 1282 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 1283 | engines: {node: '>=8'} 1284 | 1285 | strip-ansi@7.1.0: 1286 | resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} 1287 | engines: {node: '>=12'} 1288 | 1289 | strip-json-comments@3.1.1: 1290 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 1291 | engines: {node: '>=8'} 1292 | 1293 | sucrase@3.35.0: 1294 | resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} 1295 | engines: {node: '>=16 || 14 >=14.17'} 1296 | hasBin: true 1297 | 1298 | supports-color@7.2.0: 1299 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 1300 | engines: {node: '>=8'} 1301 | 1302 | supports-preserve-symlinks-flag@1.0.0: 1303 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 1304 | engines: {node: '>= 0.4'} 1305 | 1306 | svelte-eslint-parser@0.43.0: 1307 | resolution: {integrity: sha512-GpU52uPKKcVnh8tKN5P4UZpJ/fUDndmq7wfsvoVXsyP+aY0anol7Yqo01fyrlaWGMFfm4av5DyrjlaXdLRJvGA==} 1308 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1309 | peerDependencies: 1310 | svelte: ^3.37.0 || ^4.0.0 || ^5.0.0 1311 | peerDependenciesMeta: 1312 | svelte: 1313 | optional: true 1314 | 1315 | svelte@5.19.1: 1316 | resolution: {integrity: sha512-H/Vs2O51bwILZbaNUSdr4P1NbLpOGsxl4jJAjd88ELjzRgeRi1BHqexcVGannDr7D1pmTYWWajzHOM7bMbtB9Q==} 1317 | engines: {node: '>=18'} 1318 | 1319 | tailwindcss@3.4.17: 1320 | resolution: {integrity: sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og==} 1321 | engines: {node: '>=14.0.0'} 1322 | hasBin: true 1323 | 1324 | theme-change@2.5.0: 1325 | resolution: {integrity: sha512-B/UdsgdHAGhSKHTAQnxg/etN0RaMDpehuJmZIjLMDVJ6DGIliRHGD6pODi1CXLQAN9GV0GSyB3G6yCuK05PkPQ==} 1326 | 1327 | thenify-all@1.6.0: 1328 | resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} 1329 | engines: {node: '>=0.8'} 1330 | 1331 | thenify@3.3.1: 1332 | resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} 1333 | 1334 | to-regex-range@5.0.1: 1335 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 1336 | engines: {node: '>=8.0'} 1337 | 1338 | totalist@3.0.1: 1339 | resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} 1340 | engines: {node: '>=6'} 1341 | 1342 | ts-interface-checker@0.1.13: 1343 | resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} 1344 | 1345 | type-check@0.4.0: 1346 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 1347 | engines: {node: '>= 0.8.0'} 1348 | 1349 | undici-types@6.20.0: 1350 | resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} 1351 | 1352 | update-browserslist-db@1.1.2: 1353 | resolution: {integrity: sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==} 1354 | hasBin: true 1355 | peerDependencies: 1356 | browserslist: '>= 4.21.0' 1357 | 1358 | uri-js@4.4.1: 1359 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 1360 | 1361 | util-deprecate@1.0.2: 1362 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 1363 | 1364 | vite@6.0.11: 1365 | resolution: {integrity: sha512-4VL9mQPKoHy4+FE0NnRE/kbY51TOfaknxAjt3fJbGJxhIpBZiqVzlZDEesWWsuREXHwNdAoOFZ9MkPEVXczHwg==} 1366 | engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} 1367 | hasBin: true 1368 | peerDependencies: 1369 | '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 1370 | jiti: '>=1.21.0' 1371 | less: '*' 1372 | lightningcss: ^1.21.0 1373 | sass: '*' 1374 | sass-embedded: '*' 1375 | stylus: '*' 1376 | sugarss: '*' 1377 | terser: ^5.16.0 1378 | tsx: ^4.8.1 1379 | yaml: ^2.4.2 1380 | peerDependenciesMeta: 1381 | '@types/node': 1382 | optional: true 1383 | jiti: 1384 | optional: true 1385 | less: 1386 | optional: true 1387 | lightningcss: 1388 | optional: true 1389 | sass: 1390 | optional: true 1391 | sass-embedded: 1392 | optional: true 1393 | stylus: 1394 | optional: true 1395 | sugarss: 1396 | optional: true 1397 | terser: 1398 | optional: true 1399 | tsx: 1400 | optional: true 1401 | yaml: 1402 | optional: true 1403 | 1404 | vitefu@1.0.5: 1405 | resolution: {integrity: sha512-h4Vflt9gxODPFNGPwp4zAMZRpZR7eslzwH2c5hn5kNZ5rhnKyRJ50U+yGCdc2IRaBs8O4haIgLNGrV5CrpMsCA==} 1406 | peerDependencies: 1407 | vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 1408 | peerDependenciesMeta: 1409 | vite: 1410 | optional: true 1411 | 1412 | which@2.0.2: 1413 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 1414 | engines: {node: '>= 8'} 1415 | hasBin: true 1416 | 1417 | word-wrap@1.2.5: 1418 | resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} 1419 | engines: {node: '>=0.10.0'} 1420 | 1421 | wrap-ansi@7.0.0: 1422 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 1423 | engines: {node: '>=10'} 1424 | 1425 | wrap-ansi@8.1.0: 1426 | resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} 1427 | engines: {node: '>=12'} 1428 | 1429 | yaml@1.10.2: 1430 | resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} 1431 | engines: {node: '>= 6'} 1432 | 1433 | yaml@2.7.0: 1434 | resolution: {integrity: sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==} 1435 | engines: {node: '>= 14'} 1436 | hasBin: true 1437 | 1438 | yocto-queue@0.1.0: 1439 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 1440 | engines: {node: '>=10'} 1441 | 1442 | zimmerframe@1.1.2: 1443 | resolution: {integrity: sha512-rAbqEGa8ovJy4pyBxZM70hg4pE6gDgaQ0Sl9M3enG3I0d6H4XSAM3GeNGLKnsBpuijUow064sf7ww1nutC5/3w==} 1444 | 1445 | snapshots: 1446 | 1447 | '@alloc/quick-lru@5.2.0': {} 1448 | 1449 | '@ampproject/remapping@2.3.0': 1450 | dependencies: 1451 | '@jridgewell/gen-mapping': 0.3.8 1452 | '@jridgewell/trace-mapping': 0.3.25 1453 | 1454 | '@esbuild/aix-ppc64@0.24.2': 1455 | optional: true 1456 | 1457 | '@esbuild/android-arm64@0.24.2': 1458 | optional: true 1459 | 1460 | '@esbuild/android-arm@0.24.2': 1461 | optional: true 1462 | 1463 | '@esbuild/android-x64@0.24.2': 1464 | optional: true 1465 | 1466 | '@esbuild/darwin-arm64@0.24.2': 1467 | optional: true 1468 | 1469 | '@esbuild/darwin-x64@0.24.2': 1470 | optional: true 1471 | 1472 | '@esbuild/freebsd-arm64@0.24.2': 1473 | optional: true 1474 | 1475 | '@esbuild/freebsd-x64@0.24.2': 1476 | optional: true 1477 | 1478 | '@esbuild/linux-arm64@0.24.2': 1479 | optional: true 1480 | 1481 | '@esbuild/linux-arm@0.24.2': 1482 | optional: true 1483 | 1484 | '@esbuild/linux-ia32@0.24.2': 1485 | optional: true 1486 | 1487 | '@esbuild/linux-loong64@0.24.2': 1488 | optional: true 1489 | 1490 | '@esbuild/linux-mips64el@0.24.2': 1491 | optional: true 1492 | 1493 | '@esbuild/linux-ppc64@0.24.2': 1494 | optional: true 1495 | 1496 | '@esbuild/linux-riscv64@0.24.2': 1497 | optional: true 1498 | 1499 | '@esbuild/linux-s390x@0.24.2': 1500 | optional: true 1501 | 1502 | '@esbuild/linux-x64@0.24.2': 1503 | optional: true 1504 | 1505 | '@esbuild/netbsd-arm64@0.24.2': 1506 | optional: true 1507 | 1508 | '@esbuild/netbsd-x64@0.24.2': 1509 | optional: true 1510 | 1511 | '@esbuild/openbsd-arm64@0.24.2': 1512 | optional: true 1513 | 1514 | '@esbuild/openbsd-x64@0.24.2': 1515 | optional: true 1516 | 1517 | '@esbuild/sunos-x64@0.24.2': 1518 | optional: true 1519 | 1520 | '@esbuild/win32-arm64@0.24.2': 1521 | optional: true 1522 | 1523 | '@esbuild/win32-ia32@0.24.2': 1524 | optional: true 1525 | 1526 | '@esbuild/win32-x64@0.24.2': 1527 | optional: true 1528 | 1529 | '@eslint-community/eslint-utils@4.4.1(eslint@9.18.0(jiti@1.21.7))': 1530 | dependencies: 1531 | eslint: 9.18.0(jiti@1.21.7) 1532 | eslint-visitor-keys: 3.4.3 1533 | 1534 | '@eslint-community/regexpp@4.12.1': {} 1535 | 1536 | '@eslint/compat@1.2.5(eslint@9.18.0(jiti@1.21.7))': 1537 | optionalDependencies: 1538 | eslint: 9.18.0(jiti@1.21.7) 1539 | 1540 | '@eslint/config-array@0.19.1': 1541 | dependencies: 1542 | '@eslint/object-schema': 2.1.5 1543 | debug: 4.4.0 1544 | minimatch: 3.1.2 1545 | transitivePeerDependencies: 1546 | - supports-color 1547 | 1548 | '@eslint/core@0.10.0': 1549 | dependencies: 1550 | '@types/json-schema': 7.0.15 1551 | 1552 | '@eslint/eslintrc@3.2.0': 1553 | dependencies: 1554 | ajv: 6.12.6 1555 | debug: 4.4.0 1556 | espree: 10.3.0 1557 | globals: 14.0.0 1558 | ignore: 5.3.2 1559 | import-fresh: 3.3.0 1560 | js-yaml: 4.1.0 1561 | minimatch: 3.1.2 1562 | strip-json-comments: 3.1.1 1563 | transitivePeerDependencies: 1564 | - supports-color 1565 | 1566 | '@eslint/js@9.18.0': {} 1567 | 1568 | '@eslint/object-schema@2.1.5': {} 1569 | 1570 | '@eslint/plugin-kit@0.2.5': 1571 | dependencies: 1572 | '@eslint/core': 0.10.0 1573 | levn: 0.4.1 1574 | 1575 | '@humanfs/core@0.19.1': {} 1576 | 1577 | '@humanfs/node@0.16.6': 1578 | dependencies: 1579 | '@humanfs/core': 0.19.1 1580 | '@humanwhocodes/retry': 0.3.1 1581 | 1582 | '@humanwhocodes/module-importer@1.0.1': {} 1583 | 1584 | '@humanwhocodes/retry@0.3.1': {} 1585 | 1586 | '@humanwhocodes/retry@0.4.1': {} 1587 | 1588 | '@iconify/json@2.2.299': 1589 | dependencies: 1590 | '@iconify/types': 2.0.0 1591 | pathe: 1.1.2 1592 | 1593 | '@iconify/tailwind@1.2.0': 1594 | dependencies: 1595 | '@iconify/types': 2.0.0 1596 | 1597 | '@iconify/types@2.0.0': {} 1598 | 1599 | '@isaacs/cliui@8.0.2': 1600 | dependencies: 1601 | string-width: 5.1.2 1602 | string-width-cjs: string-width@4.2.3 1603 | strip-ansi: 7.1.0 1604 | strip-ansi-cjs: strip-ansi@6.0.1 1605 | wrap-ansi: 8.1.0 1606 | wrap-ansi-cjs: wrap-ansi@7.0.0 1607 | 1608 | '@jridgewell/gen-mapping@0.3.8': 1609 | dependencies: 1610 | '@jridgewell/set-array': 1.2.1 1611 | '@jridgewell/sourcemap-codec': 1.5.0 1612 | '@jridgewell/trace-mapping': 0.3.25 1613 | 1614 | '@jridgewell/resolve-uri@3.1.2': {} 1615 | 1616 | '@jridgewell/set-array@1.2.1': {} 1617 | 1618 | '@jridgewell/sourcemap-codec@1.5.0': {} 1619 | 1620 | '@jridgewell/trace-mapping@0.3.25': 1621 | dependencies: 1622 | '@jridgewell/resolve-uri': 3.1.2 1623 | '@jridgewell/sourcemap-codec': 1.5.0 1624 | 1625 | '@nodelib/fs.scandir@2.1.5': 1626 | dependencies: 1627 | '@nodelib/fs.stat': 2.0.5 1628 | run-parallel: 1.2.0 1629 | 1630 | '@nodelib/fs.stat@2.0.5': {} 1631 | 1632 | '@nodelib/fs.walk@1.2.8': 1633 | dependencies: 1634 | '@nodelib/fs.scandir': 2.1.5 1635 | fastq: 1.18.0 1636 | 1637 | '@pkgjs/parseargs@0.11.0': 1638 | optional: true 1639 | 1640 | '@polka/url@1.0.0-next.28': {} 1641 | 1642 | '@rollup/rollup-android-arm-eabi@4.31.0': 1643 | optional: true 1644 | 1645 | '@rollup/rollup-android-arm64@4.31.0': 1646 | optional: true 1647 | 1648 | '@rollup/rollup-darwin-arm64@4.31.0': 1649 | optional: true 1650 | 1651 | '@rollup/rollup-darwin-x64@4.31.0': 1652 | optional: true 1653 | 1654 | '@rollup/rollup-freebsd-arm64@4.31.0': 1655 | optional: true 1656 | 1657 | '@rollup/rollup-freebsd-x64@4.31.0': 1658 | optional: true 1659 | 1660 | '@rollup/rollup-linux-arm-gnueabihf@4.31.0': 1661 | optional: true 1662 | 1663 | '@rollup/rollup-linux-arm-musleabihf@4.31.0': 1664 | optional: true 1665 | 1666 | '@rollup/rollup-linux-arm64-gnu@4.31.0': 1667 | optional: true 1668 | 1669 | '@rollup/rollup-linux-arm64-musl@4.31.0': 1670 | optional: true 1671 | 1672 | '@rollup/rollup-linux-loongarch64-gnu@4.31.0': 1673 | optional: true 1674 | 1675 | '@rollup/rollup-linux-powerpc64le-gnu@4.31.0': 1676 | optional: true 1677 | 1678 | '@rollup/rollup-linux-riscv64-gnu@4.31.0': 1679 | optional: true 1680 | 1681 | '@rollup/rollup-linux-s390x-gnu@4.31.0': 1682 | optional: true 1683 | 1684 | '@rollup/rollup-linux-x64-gnu@4.31.0': 1685 | optional: true 1686 | 1687 | '@rollup/rollup-linux-x64-musl@4.31.0': 1688 | optional: true 1689 | 1690 | '@rollup/rollup-win32-arm64-msvc@4.31.0': 1691 | optional: true 1692 | 1693 | '@rollup/rollup-win32-ia32-msvc@4.31.0': 1694 | optional: true 1695 | 1696 | '@rollup/rollup-win32-x64-msvc@4.31.0': 1697 | optional: true 1698 | 1699 | '@sveltejs/adapter-static@3.0.8(@sveltejs/kit@2.16.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)))(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)))': 1700 | dependencies: 1701 | '@sveltejs/kit': 2.16.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)))(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)) 1702 | 1703 | '@sveltejs/kit@2.16.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)))(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0))': 1704 | dependencies: 1705 | '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)) 1706 | '@types/cookie': 0.6.0 1707 | cookie: 0.6.0 1708 | devalue: 5.1.1 1709 | esm-env: 1.2.2 1710 | import-meta-resolve: 4.1.0 1711 | kleur: 4.1.5 1712 | magic-string: 0.30.17 1713 | mrmime: 2.0.0 1714 | sade: 1.8.1 1715 | set-cookie-parser: 2.7.1 1716 | sirv: 3.0.0 1717 | svelte: 5.19.1 1718 | vite: 6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0) 1719 | 1720 | '@sveltejs/vite-plugin-svelte-inspector@4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)))(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0))': 1721 | dependencies: 1722 | '@sveltejs/vite-plugin-svelte': 5.0.3(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)) 1723 | debug: 4.4.0 1724 | svelte: 5.19.1 1725 | vite: 6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0) 1726 | transitivePeerDependencies: 1727 | - supports-color 1728 | 1729 | '@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0))': 1730 | dependencies: 1731 | '@sveltejs/vite-plugin-svelte-inspector': 4.0.1(@sveltejs/vite-plugin-svelte@5.0.3(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)))(svelte@5.19.1)(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)) 1732 | debug: 4.4.0 1733 | deepmerge: 4.3.1 1734 | kleur: 4.1.5 1735 | magic-string: 0.30.17 1736 | svelte: 5.19.1 1737 | vite: 6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0) 1738 | vitefu: 1.0.5(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)) 1739 | transitivePeerDependencies: 1740 | - supports-color 1741 | 1742 | '@types/cookie@0.6.0': {} 1743 | 1744 | '@types/estree@1.0.6': {} 1745 | 1746 | '@types/json-schema@7.0.15': {} 1747 | 1748 | '@types/node@22.10.7': 1749 | dependencies: 1750 | undici-types: 6.20.0 1751 | optional: true 1752 | 1753 | acorn-jsx@5.3.2(acorn@8.14.0): 1754 | dependencies: 1755 | acorn: 8.14.0 1756 | 1757 | acorn-typescript@1.4.13(acorn@8.14.0): 1758 | dependencies: 1759 | acorn: 8.14.0 1760 | 1761 | acorn@8.14.0: {} 1762 | 1763 | ajv@6.12.6: 1764 | dependencies: 1765 | fast-deep-equal: 3.1.3 1766 | fast-json-stable-stringify: 2.1.0 1767 | json-schema-traverse: 0.4.1 1768 | uri-js: 4.4.1 1769 | 1770 | ansi-regex@5.0.1: {} 1771 | 1772 | ansi-regex@6.1.0: {} 1773 | 1774 | ansi-styles@4.3.0: 1775 | dependencies: 1776 | color-convert: 2.0.1 1777 | 1778 | ansi-styles@6.2.1: {} 1779 | 1780 | any-promise@1.3.0: {} 1781 | 1782 | anymatch@3.1.3: 1783 | dependencies: 1784 | normalize-path: 3.0.0 1785 | picomatch: 2.3.1 1786 | 1787 | arg@5.0.2: {} 1788 | 1789 | argparse@2.0.1: {} 1790 | 1791 | aria-query@5.3.2: {} 1792 | 1793 | autoprefixer@10.4.20(postcss@8.5.1): 1794 | dependencies: 1795 | browserslist: 4.24.4 1796 | caniuse-lite: 1.0.30001695 1797 | fraction.js: 4.3.7 1798 | normalize-range: 0.1.2 1799 | picocolors: 1.1.1 1800 | postcss: 8.5.1 1801 | postcss-value-parser: 4.2.0 1802 | 1803 | axobject-query@4.1.0: {} 1804 | 1805 | balanced-match@1.0.2: {} 1806 | 1807 | binary-extensions@2.3.0: {} 1808 | 1809 | brace-expansion@1.1.11: 1810 | dependencies: 1811 | balanced-match: 1.0.2 1812 | concat-map: 0.0.1 1813 | 1814 | brace-expansion@2.0.1: 1815 | dependencies: 1816 | balanced-match: 1.0.2 1817 | 1818 | braces@3.0.3: 1819 | dependencies: 1820 | fill-range: 7.1.1 1821 | 1822 | browserslist@4.24.4: 1823 | dependencies: 1824 | caniuse-lite: 1.0.30001695 1825 | electron-to-chromium: 1.5.84 1826 | node-releases: 2.0.19 1827 | update-browserslist-db: 1.1.2(browserslist@4.24.4) 1828 | 1829 | callsites@3.1.0: {} 1830 | 1831 | camelcase-css@2.0.1: {} 1832 | 1833 | caniuse-lite@1.0.30001695: {} 1834 | 1835 | chalk@4.1.2: 1836 | dependencies: 1837 | ansi-styles: 4.3.0 1838 | supports-color: 7.2.0 1839 | 1840 | chokidar@3.6.0: 1841 | dependencies: 1842 | anymatch: 3.1.3 1843 | braces: 3.0.3 1844 | glob-parent: 5.1.2 1845 | is-binary-path: 2.1.0 1846 | is-glob: 4.0.3 1847 | normalize-path: 3.0.0 1848 | readdirp: 3.6.0 1849 | optionalDependencies: 1850 | fsevents: 2.3.3 1851 | 1852 | clsx@2.1.1: {} 1853 | 1854 | color-convert@2.0.1: 1855 | dependencies: 1856 | color-name: 1.1.4 1857 | 1858 | color-name@1.1.4: {} 1859 | 1860 | commander@4.1.1: {} 1861 | 1862 | concat-map@0.0.1: {} 1863 | 1864 | cookie@0.6.0: {} 1865 | 1866 | cross-spawn@7.0.6: 1867 | dependencies: 1868 | path-key: 3.1.1 1869 | shebang-command: 2.0.0 1870 | which: 2.0.2 1871 | 1872 | css-selector-tokenizer@0.8.0: 1873 | dependencies: 1874 | cssesc: 3.0.0 1875 | fastparse: 1.1.2 1876 | 1877 | cssesc@3.0.0: {} 1878 | 1879 | culori@3.3.0: {} 1880 | 1881 | daisyui@4.12.23(postcss@8.5.1): 1882 | dependencies: 1883 | css-selector-tokenizer: 0.8.0 1884 | culori: 3.3.0 1885 | picocolors: 1.1.1 1886 | postcss-js: 4.0.1(postcss@8.5.1) 1887 | transitivePeerDependencies: 1888 | - postcss 1889 | 1890 | debug@4.4.0: 1891 | dependencies: 1892 | ms: 2.1.3 1893 | 1894 | deep-is@0.1.4: {} 1895 | 1896 | deepmerge@4.3.1: {} 1897 | 1898 | devalue@5.1.1: {} 1899 | 1900 | didyoumean@1.2.2: {} 1901 | 1902 | dlv@1.1.3: {} 1903 | 1904 | eastasianwidth@0.2.0: {} 1905 | 1906 | electron-to-chromium@1.5.84: {} 1907 | 1908 | emoji-regex@8.0.0: {} 1909 | 1910 | emoji-regex@9.2.2: {} 1911 | 1912 | esbuild@0.24.2: 1913 | optionalDependencies: 1914 | '@esbuild/aix-ppc64': 0.24.2 1915 | '@esbuild/android-arm': 0.24.2 1916 | '@esbuild/android-arm64': 0.24.2 1917 | '@esbuild/android-x64': 0.24.2 1918 | '@esbuild/darwin-arm64': 0.24.2 1919 | '@esbuild/darwin-x64': 0.24.2 1920 | '@esbuild/freebsd-arm64': 0.24.2 1921 | '@esbuild/freebsd-x64': 0.24.2 1922 | '@esbuild/linux-arm': 0.24.2 1923 | '@esbuild/linux-arm64': 0.24.2 1924 | '@esbuild/linux-ia32': 0.24.2 1925 | '@esbuild/linux-loong64': 0.24.2 1926 | '@esbuild/linux-mips64el': 0.24.2 1927 | '@esbuild/linux-ppc64': 0.24.2 1928 | '@esbuild/linux-riscv64': 0.24.2 1929 | '@esbuild/linux-s390x': 0.24.2 1930 | '@esbuild/linux-x64': 0.24.2 1931 | '@esbuild/netbsd-arm64': 0.24.2 1932 | '@esbuild/netbsd-x64': 0.24.2 1933 | '@esbuild/openbsd-arm64': 0.24.2 1934 | '@esbuild/openbsd-x64': 0.24.2 1935 | '@esbuild/sunos-x64': 0.24.2 1936 | '@esbuild/win32-arm64': 0.24.2 1937 | '@esbuild/win32-ia32': 0.24.2 1938 | '@esbuild/win32-x64': 0.24.2 1939 | 1940 | escalade@3.2.0: {} 1941 | 1942 | escape-string-regexp@4.0.0: {} 1943 | 1944 | eslint-compat-utils@0.5.1(eslint@9.18.0(jiti@1.21.7)): 1945 | dependencies: 1946 | eslint: 9.18.0(jiti@1.21.7) 1947 | semver: 7.6.3 1948 | 1949 | eslint-config-prettier@10.0.1(eslint@9.18.0(jiti@1.21.7)): 1950 | dependencies: 1951 | eslint: 9.18.0(jiti@1.21.7) 1952 | 1953 | eslint-plugin-svelte@2.46.1(eslint@9.18.0(jiti@1.21.7))(svelte@5.19.1): 1954 | dependencies: 1955 | '@eslint-community/eslint-utils': 4.4.1(eslint@9.18.0(jiti@1.21.7)) 1956 | '@jridgewell/sourcemap-codec': 1.5.0 1957 | eslint: 9.18.0(jiti@1.21.7) 1958 | eslint-compat-utils: 0.5.1(eslint@9.18.0(jiti@1.21.7)) 1959 | esutils: 2.0.3 1960 | known-css-properties: 0.35.0 1961 | postcss: 8.5.1 1962 | postcss-load-config: 3.1.4(postcss@8.5.1) 1963 | postcss-safe-parser: 6.0.0(postcss@8.5.1) 1964 | postcss-selector-parser: 6.1.2 1965 | semver: 7.6.3 1966 | svelte-eslint-parser: 0.43.0(svelte@5.19.1) 1967 | optionalDependencies: 1968 | svelte: 5.19.1 1969 | transitivePeerDependencies: 1970 | - ts-node 1971 | 1972 | eslint-scope@7.2.2: 1973 | dependencies: 1974 | esrecurse: 4.3.0 1975 | estraverse: 5.3.0 1976 | 1977 | eslint-scope@8.2.0: 1978 | dependencies: 1979 | esrecurse: 4.3.0 1980 | estraverse: 5.3.0 1981 | 1982 | eslint-visitor-keys@3.4.3: {} 1983 | 1984 | eslint-visitor-keys@4.2.0: {} 1985 | 1986 | eslint@9.18.0(jiti@1.21.7): 1987 | dependencies: 1988 | '@eslint-community/eslint-utils': 4.4.1(eslint@9.18.0(jiti@1.21.7)) 1989 | '@eslint-community/regexpp': 4.12.1 1990 | '@eslint/config-array': 0.19.1 1991 | '@eslint/core': 0.10.0 1992 | '@eslint/eslintrc': 3.2.0 1993 | '@eslint/js': 9.18.0 1994 | '@eslint/plugin-kit': 0.2.5 1995 | '@humanfs/node': 0.16.6 1996 | '@humanwhocodes/module-importer': 1.0.1 1997 | '@humanwhocodes/retry': 0.4.1 1998 | '@types/estree': 1.0.6 1999 | '@types/json-schema': 7.0.15 2000 | ajv: 6.12.6 2001 | chalk: 4.1.2 2002 | cross-spawn: 7.0.6 2003 | debug: 4.4.0 2004 | escape-string-regexp: 4.0.0 2005 | eslint-scope: 8.2.0 2006 | eslint-visitor-keys: 4.2.0 2007 | espree: 10.3.0 2008 | esquery: 1.6.0 2009 | esutils: 2.0.3 2010 | fast-deep-equal: 3.1.3 2011 | file-entry-cache: 8.0.0 2012 | find-up: 5.0.0 2013 | glob-parent: 6.0.2 2014 | ignore: 5.3.2 2015 | imurmurhash: 0.1.4 2016 | is-glob: 4.0.3 2017 | json-stable-stringify-without-jsonify: 1.0.1 2018 | lodash.merge: 4.6.2 2019 | minimatch: 3.1.2 2020 | natural-compare: 1.4.0 2021 | optionator: 0.9.4 2022 | optionalDependencies: 2023 | jiti: 1.21.7 2024 | transitivePeerDependencies: 2025 | - supports-color 2026 | 2027 | esm-env@1.2.2: {} 2028 | 2029 | espree@10.3.0: 2030 | dependencies: 2031 | acorn: 8.14.0 2032 | acorn-jsx: 5.3.2(acorn@8.14.0) 2033 | eslint-visitor-keys: 4.2.0 2034 | 2035 | espree@9.6.1: 2036 | dependencies: 2037 | acorn: 8.14.0 2038 | acorn-jsx: 5.3.2(acorn@8.14.0) 2039 | eslint-visitor-keys: 3.4.3 2040 | 2041 | esquery@1.6.0: 2042 | dependencies: 2043 | estraverse: 5.3.0 2044 | 2045 | esrap@1.4.3: 2046 | dependencies: 2047 | '@jridgewell/sourcemap-codec': 1.5.0 2048 | 2049 | esrecurse@4.3.0: 2050 | dependencies: 2051 | estraverse: 5.3.0 2052 | 2053 | estraverse@5.3.0: {} 2054 | 2055 | esutils@2.0.3: {} 2056 | 2057 | fast-deep-equal@3.1.3: {} 2058 | 2059 | fast-glob@3.3.3: 2060 | dependencies: 2061 | '@nodelib/fs.stat': 2.0.5 2062 | '@nodelib/fs.walk': 1.2.8 2063 | glob-parent: 5.1.2 2064 | merge2: 1.4.1 2065 | micromatch: 4.0.8 2066 | 2067 | fast-json-stable-stringify@2.1.0: {} 2068 | 2069 | fast-levenshtein@2.0.6: {} 2070 | 2071 | fastparse@1.1.2: {} 2072 | 2073 | fastq@1.18.0: 2074 | dependencies: 2075 | reusify: 1.0.4 2076 | 2077 | file-entry-cache@8.0.0: 2078 | dependencies: 2079 | flat-cache: 4.0.1 2080 | 2081 | fill-range@7.1.1: 2082 | dependencies: 2083 | to-regex-range: 5.0.1 2084 | 2085 | find-up@5.0.0: 2086 | dependencies: 2087 | locate-path: 6.0.0 2088 | path-exists: 4.0.0 2089 | 2090 | flat-cache@4.0.1: 2091 | dependencies: 2092 | flatted: 3.3.2 2093 | keyv: 4.5.4 2094 | 2095 | flatted@3.3.2: {} 2096 | 2097 | foreground-child@3.3.0: 2098 | dependencies: 2099 | cross-spawn: 7.0.6 2100 | signal-exit: 4.1.0 2101 | 2102 | fraction.js@4.3.7: {} 2103 | 2104 | fsevents@2.3.3: 2105 | optional: true 2106 | 2107 | function-bind@1.1.2: {} 2108 | 2109 | fuse.js@7.0.0: {} 2110 | 2111 | glob-parent@5.1.2: 2112 | dependencies: 2113 | is-glob: 4.0.3 2114 | 2115 | glob-parent@6.0.2: 2116 | dependencies: 2117 | is-glob: 4.0.3 2118 | 2119 | glob@10.4.5: 2120 | dependencies: 2121 | foreground-child: 3.3.0 2122 | jackspeak: 3.4.3 2123 | minimatch: 9.0.5 2124 | minipass: 7.1.2 2125 | package-json-from-dist: 1.0.1 2126 | path-scurry: 1.11.1 2127 | 2128 | globals@14.0.0: {} 2129 | 2130 | globals@15.14.0: {} 2131 | 2132 | has-flag@4.0.0: {} 2133 | 2134 | hasown@2.0.2: 2135 | dependencies: 2136 | function-bind: 1.1.2 2137 | 2138 | ignore@5.3.2: {} 2139 | 2140 | import-fresh@3.3.0: 2141 | dependencies: 2142 | parent-module: 1.0.1 2143 | resolve-from: 4.0.0 2144 | 2145 | import-meta-resolve@4.1.0: {} 2146 | 2147 | imurmurhash@0.1.4: {} 2148 | 2149 | is-binary-path@2.1.0: 2150 | dependencies: 2151 | binary-extensions: 2.3.0 2152 | 2153 | is-core-module@2.16.1: 2154 | dependencies: 2155 | hasown: 2.0.2 2156 | 2157 | is-extglob@2.1.1: {} 2158 | 2159 | is-fullwidth-code-point@3.0.0: {} 2160 | 2161 | is-glob@4.0.3: 2162 | dependencies: 2163 | is-extglob: 2.1.1 2164 | 2165 | is-number@7.0.0: {} 2166 | 2167 | is-reference@3.0.3: 2168 | dependencies: 2169 | '@types/estree': 1.0.6 2170 | 2171 | isexe@2.0.0: {} 2172 | 2173 | jackspeak@3.4.3: 2174 | dependencies: 2175 | '@isaacs/cliui': 8.0.2 2176 | optionalDependencies: 2177 | '@pkgjs/parseargs': 0.11.0 2178 | 2179 | jiti@1.21.7: {} 2180 | 2181 | js-yaml@4.1.0: 2182 | dependencies: 2183 | argparse: 2.0.1 2184 | 2185 | json-buffer@3.0.1: {} 2186 | 2187 | json-schema-traverse@0.4.1: {} 2188 | 2189 | json-stable-stringify-without-jsonify@1.0.1: {} 2190 | 2191 | keyv@4.5.4: 2192 | dependencies: 2193 | json-buffer: 3.0.1 2194 | 2195 | kleur@4.1.5: {} 2196 | 2197 | known-css-properties@0.35.0: {} 2198 | 2199 | levn@0.4.1: 2200 | dependencies: 2201 | prelude-ls: 1.2.1 2202 | type-check: 0.4.0 2203 | 2204 | lilconfig@2.1.0: {} 2205 | 2206 | lilconfig@3.1.3: {} 2207 | 2208 | lines-and-columns@1.2.4: {} 2209 | 2210 | locate-character@3.0.0: {} 2211 | 2212 | locate-path@6.0.0: 2213 | dependencies: 2214 | p-locate: 5.0.0 2215 | 2216 | lodash.merge@4.6.2: {} 2217 | 2218 | lru-cache@10.4.3: {} 2219 | 2220 | magic-string@0.30.17: 2221 | dependencies: 2222 | '@jridgewell/sourcemap-codec': 1.5.0 2223 | 2224 | merge2@1.4.1: {} 2225 | 2226 | micromatch@4.0.8: 2227 | dependencies: 2228 | braces: 3.0.3 2229 | picomatch: 2.3.1 2230 | 2231 | minimatch@3.1.2: 2232 | dependencies: 2233 | brace-expansion: 1.1.11 2234 | 2235 | minimatch@9.0.5: 2236 | dependencies: 2237 | brace-expansion: 2.0.1 2238 | 2239 | minipass@7.1.2: {} 2240 | 2241 | mri@1.2.0: {} 2242 | 2243 | mrmime@2.0.0: {} 2244 | 2245 | ms@2.1.3: {} 2246 | 2247 | mz@2.7.0: 2248 | dependencies: 2249 | any-promise: 1.3.0 2250 | object-assign: 4.1.1 2251 | thenify-all: 1.6.0 2252 | 2253 | nanoid@3.3.8: {} 2254 | 2255 | natural-compare@1.4.0: {} 2256 | 2257 | node-releases@2.0.19: {} 2258 | 2259 | normalize-path@3.0.0: {} 2260 | 2261 | normalize-range@0.1.2: {} 2262 | 2263 | object-assign@4.1.1: {} 2264 | 2265 | object-hash@3.0.0: {} 2266 | 2267 | optionator@0.9.4: 2268 | dependencies: 2269 | deep-is: 0.1.4 2270 | fast-levenshtein: 2.0.6 2271 | levn: 0.4.1 2272 | prelude-ls: 1.2.1 2273 | type-check: 0.4.0 2274 | word-wrap: 1.2.5 2275 | 2276 | p-limit@3.1.0: 2277 | dependencies: 2278 | yocto-queue: 0.1.0 2279 | 2280 | p-locate@5.0.0: 2281 | dependencies: 2282 | p-limit: 3.1.0 2283 | 2284 | package-json-from-dist@1.0.1: {} 2285 | 2286 | parent-module@1.0.1: 2287 | dependencies: 2288 | callsites: 3.1.0 2289 | 2290 | path-exists@4.0.0: {} 2291 | 2292 | path-key@3.1.1: {} 2293 | 2294 | path-parse@1.0.7: {} 2295 | 2296 | path-scurry@1.11.1: 2297 | dependencies: 2298 | lru-cache: 10.4.3 2299 | minipass: 7.1.2 2300 | 2301 | pathe@1.1.2: {} 2302 | 2303 | picocolors@1.1.1: {} 2304 | 2305 | picomatch@2.3.1: {} 2306 | 2307 | pify@2.3.0: {} 2308 | 2309 | pirates@4.0.6: {} 2310 | 2311 | postcss-import@15.1.0(postcss@8.5.1): 2312 | dependencies: 2313 | postcss: 8.5.1 2314 | postcss-value-parser: 4.2.0 2315 | read-cache: 1.0.0 2316 | resolve: 1.22.10 2317 | 2318 | postcss-js@4.0.1(postcss@8.5.1): 2319 | dependencies: 2320 | camelcase-css: 2.0.1 2321 | postcss: 8.5.1 2322 | 2323 | postcss-load-config@3.1.4(postcss@8.5.1): 2324 | dependencies: 2325 | lilconfig: 2.1.0 2326 | yaml: 1.10.2 2327 | optionalDependencies: 2328 | postcss: 8.5.1 2329 | 2330 | postcss-load-config@4.0.2(postcss@8.5.1): 2331 | dependencies: 2332 | lilconfig: 3.1.3 2333 | yaml: 2.7.0 2334 | optionalDependencies: 2335 | postcss: 8.5.1 2336 | 2337 | postcss-nested@6.2.0(postcss@8.5.1): 2338 | dependencies: 2339 | postcss: 8.5.1 2340 | postcss-selector-parser: 6.1.2 2341 | 2342 | postcss-safe-parser@6.0.0(postcss@8.5.1): 2343 | dependencies: 2344 | postcss: 8.5.1 2345 | 2346 | postcss-scss@4.0.9(postcss@8.5.1): 2347 | dependencies: 2348 | postcss: 8.5.1 2349 | 2350 | postcss-selector-parser@6.1.2: 2351 | dependencies: 2352 | cssesc: 3.0.0 2353 | util-deprecate: 1.0.2 2354 | 2355 | postcss-value-parser@4.2.0: {} 2356 | 2357 | postcss@8.5.1: 2358 | dependencies: 2359 | nanoid: 3.3.8 2360 | picocolors: 1.1.1 2361 | source-map-js: 1.2.1 2362 | 2363 | prelude-ls@1.2.1: {} 2364 | 2365 | prettier-plugin-svelte@3.3.3(prettier@3.4.2)(svelte@5.19.1): 2366 | dependencies: 2367 | prettier: 3.4.2 2368 | svelte: 5.19.1 2369 | 2370 | prettier-plugin-tailwindcss@0.6.10(prettier-plugin-svelte@3.3.3(prettier@3.4.2)(svelte@5.19.1))(prettier@3.4.2): 2371 | dependencies: 2372 | prettier: 3.4.2 2373 | optionalDependencies: 2374 | prettier-plugin-svelte: 3.3.3(prettier@3.4.2)(svelte@5.19.1) 2375 | 2376 | prettier@3.4.2: {} 2377 | 2378 | punycode@2.3.1: {} 2379 | 2380 | queue-microtask@1.2.3: {} 2381 | 2382 | read-cache@1.0.0: 2383 | dependencies: 2384 | pify: 2.3.0 2385 | 2386 | readdirp@3.6.0: 2387 | dependencies: 2388 | picomatch: 2.3.1 2389 | 2390 | resolve-from@4.0.0: {} 2391 | 2392 | resolve@1.22.10: 2393 | dependencies: 2394 | is-core-module: 2.16.1 2395 | path-parse: 1.0.7 2396 | supports-preserve-symlinks-flag: 1.0.0 2397 | 2398 | reusify@1.0.4: {} 2399 | 2400 | rollup@4.31.0: 2401 | dependencies: 2402 | '@types/estree': 1.0.6 2403 | optionalDependencies: 2404 | '@rollup/rollup-android-arm-eabi': 4.31.0 2405 | '@rollup/rollup-android-arm64': 4.31.0 2406 | '@rollup/rollup-darwin-arm64': 4.31.0 2407 | '@rollup/rollup-darwin-x64': 4.31.0 2408 | '@rollup/rollup-freebsd-arm64': 4.31.0 2409 | '@rollup/rollup-freebsd-x64': 4.31.0 2410 | '@rollup/rollup-linux-arm-gnueabihf': 4.31.0 2411 | '@rollup/rollup-linux-arm-musleabihf': 4.31.0 2412 | '@rollup/rollup-linux-arm64-gnu': 4.31.0 2413 | '@rollup/rollup-linux-arm64-musl': 4.31.0 2414 | '@rollup/rollup-linux-loongarch64-gnu': 4.31.0 2415 | '@rollup/rollup-linux-powerpc64le-gnu': 4.31.0 2416 | '@rollup/rollup-linux-riscv64-gnu': 4.31.0 2417 | '@rollup/rollup-linux-s390x-gnu': 4.31.0 2418 | '@rollup/rollup-linux-x64-gnu': 4.31.0 2419 | '@rollup/rollup-linux-x64-musl': 4.31.0 2420 | '@rollup/rollup-win32-arm64-msvc': 4.31.0 2421 | '@rollup/rollup-win32-ia32-msvc': 4.31.0 2422 | '@rollup/rollup-win32-x64-msvc': 4.31.0 2423 | fsevents: 2.3.3 2424 | 2425 | run-parallel@1.2.0: 2426 | dependencies: 2427 | queue-microtask: 1.2.3 2428 | 2429 | sade@1.8.1: 2430 | dependencies: 2431 | mri: 1.2.0 2432 | 2433 | semver@7.6.3: {} 2434 | 2435 | set-cookie-parser@2.7.1: {} 2436 | 2437 | shebang-command@2.0.0: 2438 | dependencies: 2439 | shebang-regex: 3.0.0 2440 | 2441 | shebang-regex@3.0.0: {} 2442 | 2443 | signal-exit@4.1.0: {} 2444 | 2445 | sirv@3.0.0: 2446 | dependencies: 2447 | '@polka/url': 1.0.0-next.28 2448 | mrmime: 2.0.0 2449 | totalist: 3.0.1 2450 | 2451 | source-map-js@1.2.1: {} 2452 | 2453 | string-width@4.2.3: 2454 | dependencies: 2455 | emoji-regex: 8.0.0 2456 | is-fullwidth-code-point: 3.0.0 2457 | strip-ansi: 6.0.1 2458 | 2459 | string-width@5.1.2: 2460 | dependencies: 2461 | eastasianwidth: 0.2.0 2462 | emoji-regex: 9.2.2 2463 | strip-ansi: 7.1.0 2464 | 2465 | strip-ansi@6.0.1: 2466 | dependencies: 2467 | ansi-regex: 5.0.1 2468 | 2469 | strip-ansi@7.1.0: 2470 | dependencies: 2471 | ansi-regex: 6.1.0 2472 | 2473 | strip-json-comments@3.1.1: {} 2474 | 2475 | sucrase@3.35.0: 2476 | dependencies: 2477 | '@jridgewell/gen-mapping': 0.3.8 2478 | commander: 4.1.1 2479 | glob: 10.4.5 2480 | lines-and-columns: 1.2.4 2481 | mz: 2.7.0 2482 | pirates: 4.0.6 2483 | ts-interface-checker: 0.1.13 2484 | 2485 | supports-color@7.2.0: 2486 | dependencies: 2487 | has-flag: 4.0.0 2488 | 2489 | supports-preserve-symlinks-flag@1.0.0: {} 2490 | 2491 | svelte-eslint-parser@0.43.0(svelte@5.19.1): 2492 | dependencies: 2493 | eslint-scope: 7.2.2 2494 | eslint-visitor-keys: 3.4.3 2495 | espree: 9.6.1 2496 | postcss: 8.5.1 2497 | postcss-scss: 4.0.9(postcss@8.5.1) 2498 | optionalDependencies: 2499 | svelte: 5.19.1 2500 | 2501 | svelte@5.19.1: 2502 | dependencies: 2503 | '@ampproject/remapping': 2.3.0 2504 | '@jridgewell/sourcemap-codec': 1.5.0 2505 | '@types/estree': 1.0.6 2506 | acorn: 8.14.0 2507 | acorn-typescript: 1.4.13(acorn@8.14.0) 2508 | aria-query: 5.3.2 2509 | axobject-query: 4.1.0 2510 | clsx: 2.1.1 2511 | esm-env: 1.2.2 2512 | esrap: 1.4.3 2513 | is-reference: 3.0.3 2514 | locate-character: 3.0.0 2515 | magic-string: 0.30.17 2516 | zimmerframe: 1.1.2 2517 | 2518 | tailwindcss@3.4.17: 2519 | dependencies: 2520 | '@alloc/quick-lru': 5.2.0 2521 | arg: 5.0.2 2522 | chokidar: 3.6.0 2523 | didyoumean: 1.2.2 2524 | dlv: 1.1.3 2525 | fast-glob: 3.3.3 2526 | glob-parent: 6.0.2 2527 | is-glob: 4.0.3 2528 | jiti: 1.21.7 2529 | lilconfig: 3.1.3 2530 | micromatch: 4.0.8 2531 | normalize-path: 3.0.0 2532 | object-hash: 3.0.0 2533 | picocolors: 1.1.1 2534 | postcss: 8.5.1 2535 | postcss-import: 15.1.0(postcss@8.5.1) 2536 | postcss-js: 4.0.1(postcss@8.5.1) 2537 | postcss-load-config: 4.0.2(postcss@8.5.1) 2538 | postcss-nested: 6.2.0(postcss@8.5.1) 2539 | postcss-selector-parser: 6.1.2 2540 | resolve: 1.22.10 2541 | sucrase: 3.35.0 2542 | transitivePeerDependencies: 2543 | - ts-node 2544 | 2545 | theme-change@2.5.0: {} 2546 | 2547 | thenify-all@1.6.0: 2548 | dependencies: 2549 | thenify: 3.3.1 2550 | 2551 | thenify@3.3.1: 2552 | dependencies: 2553 | any-promise: 1.3.0 2554 | 2555 | to-regex-range@5.0.1: 2556 | dependencies: 2557 | is-number: 7.0.0 2558 | 2559 | totalist@3.0.1: {} 2560 | 2561 | ts-interface-checker@0.1.13: {} 2562 | 2563 | type-check@0.4.0: 2564 | dependencies: 2565 | prelude-ls: 1.2.1 2566 | 2567 | undici-types@6.20.0: 2568 | optional: true 2569 | 2570 | update-browserslist-db@1.1.2(browserslist@4.24.4): 2571 | dependencies: 2572 | browserslist: 4.24.4 2573 | escalade: 3.2.0 2574 | picocolors: 1.1.1 2575 | 2576 | uri-js@4.4.1: 2577 | dependencies: 2578 | punycode: 2.3.1 2579 | 2580 | util-deprecate@1.0.2: {} 2581 | 2582 | vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0): 2583 | dependencies: 2584 | esbuild: 0.24.2 2585 | postcss: 8.5.1 2586 | rollup: 4.31.0 2587 | optionalDependencies: 2588 | '@types/node': 22.10.7 2589 | fsevents: 2.3.3 2590 | jiti: 1.21.7 2591 | yaml: 2.7.0 2592 | 2593 | vitefu@1.0.5(vite@6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0)): 2594 | optionalDependencies: 2595 | vite: 6.0.11(@types/node@22.10.7)(jiti@1.21.7)(yaml@2.7.0) 2596 | 2597 | which@2.0.2: 2598 | dependencies: 2599 | isexe: 2.0.0 2600 | 2601 | word-wrap@1.2.5: {} 2602 | 2603 | wrap-ansi@7.0.0: 2604 | dependencies: 2605 | ansi-styles: 4.3.0 2606 | string-width: 4.2.3 2607 | strip-ansi: 6.0.1 2608 | 2609 | wrap-ansi@8.1.0: 2610 | dependencies: 2611 | ansi-styles: 6.2.1 2612 | string-width: 5.1.2 2613 | strip-ansi: 7.1.0 2614 | 2615 | yaml@1.10.2: {} 2616 | 2617 | yaml@2.7.0: {} 2618 | 2619 | yocto-queue@0.1.0: {} 2620 | 2621 | zimmerframe@1.1.2: {} 2622 | --------------------------------------------------------------------------------