diff --git a/README.md b/README.md index 58edc755..18cd009b 100644 --- a/README.md +++ b/README.md @@ -36,7 +36,7 @@ ๐ŸŒ Free APIs
102 ๐Ÿค– AI & LLMs
90 โšก CLI Tools
119 -๐Ÿงช Testing & QA
62 +๐Ÿงช Testing & QA
63 โ˜๏ธ Free Cloud
71 ๐Ÿค Up for Grabs
21 ๐ŸŽ Dev Perks
30 @@ -47,7 +47,7 @@ ### ๐ŸŽฏ The Race to 1,000 Verified Tools (Hacktoberfest Milestone) ```text -[โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘] 536 / 1,000 Tools Verified (54% โ€ข 464 to go!) +[โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘] 537 / 1,000 Tools Verified (54% โ€ข 463 to go!) ``` *Help us curate the definitive zero-paywall index! [Submit your favorite developer tool, API, or AI framework โ†’](#-how-to-submit-your-project-or-api)* @@ -66,7 +66,7 @@ DevShelf isn't a static markdown list. It runs directly inside your terminal, in โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ $ npx devshelf search "postgres" โ”‚ โ”‚ โ”‚ -โ”‚ ๐Ÿ“š DevShelf CLI v1.1.0 โ€” 536 Curated Tools (Live CI Audited) โ”‚ +โ”‚ ๐Ÿ“š DevShelf CLI v1.1.0 โ€” 537 Curated Tools (Live CI Audited) โ”‚ โ”‚ โ”‚ โ”‚ [1] Neon (Database / Serverless) โ”‚ โ”‚ Serverless Postgres with autoscaling, branching, and generous free tier. โ”‚ @@ -181,14 +181,14 @@ npx devshelf stats ## ๐Ÿ“‚ Browse Catalog by Category -Explore our curated collections of **536+ zero-paywall developer tools**, categorized into dedicated guides with subcategory indexing: +Explore our curated collections of **537+ zero-paywall developer tools**, categorized into dedicated guides with subcategory indexing: | Category | Resources | Description & Subcategories | Guide | | :--- | :---: | :--- | :---: | | ๐ŸŒ **Free & Public APIs** | **102** | Weather, Finance, Mock/Dev APIs, Geocoding, AI/ML, Media, Entertainment | [**Browse APIs โ†’**](docs/apis.md) | | ๐Ÿค– **AI Agents & Local LLMs** | **90** | Local LLM Runtimes, Autonomous Agents, Coding Assistants, Orchestration | [**Browse AI Tools โ†’**](docs/ai-tools.md) | | โšก **CLI & Productivity Tools** | **119** | Terminal Utilities, Git Power Tools, Docker & DevOps, Benchmarking, DBs | [**Browse CLI Tools โ†’**](docs/cli-tools.md) | -| ๐Ÿงช **Testing & QA Reliability** | **62** | E2E Testing, Mock Servers, Contract Testing, Security Auditing, Performance | [**Browse Testing Tools โ†’**](docs/testing-qa.md) | +| ๐Ÿงช **Testing & QA Reliability** | **63** | E2E Testing, Mock Servers, Contract Testing, Security Auditing, Performance | [**Browse Testing Tools โ†’**](docs/testing-qa.md) | | โ˜๏ธ **Free Cloud & Developer Tiers** | **71** | Databases, Auth & Identity, Serverless Compute, Object Storage, Email, APM | [**Browse Cloud Tiers โ†’**](docs/free-cloud.md) | | ๐Ÿค **Contributors Wanted** | **21** | Active open-source repos with curated Good First Issues and starter tasks | [**Browse Projects โ†’**](docs/contributors-wanted.md) | | ๐ŸŽ **Developer Discounts & Perks** | **30** | Cloud credits, free IDE licenses, student packs, open-source sponsorships | [**Browse Perks โ†’**](docs/perks.md) | diff --git a/bin/cli.js b/bin/cli.js index bd3c7b9d..87bfe4ab 100644 --- a/bin/cli.js +++ b/bin/cli.js @@ -806,8 +806,8 @@ async function main() { allIssues: nlData.issues, }, null, - 2 - ) + 2, + ), ); return; } @@ -821,7 +821,7 @@ async function main() { if (latest.sponsor) { console.log( - ` ${c.amber}โšก Issue Sponsor: ${c.bold}${latest.sponsor.name}${c.reset} ${c.gray}โ€” ${latest.sponsor.tagline}${c.reset}` + ` ${c.amber}โšก Issue Sponsor: ${c.bold}${latest.sponsor.name}${c.reset} ${c.gray}โ€” ${latest.sponsor.tagline}${c.reset}`, ); console.log(` Perk: ${latest.sponsor.perk}`); console.log(` URL: ${c.underline}${c.blue}${latest.sponsor.url}${c.reset}\n`); @@ -831,7 +831,7 @@ async function main() { (latest.featuredTools || []).slice(0, 5).forEach((tool, idx) => { const badge = tool.badge ? ` ${c.cyan}[${tool.badge}]${c.reset}` : ""; console.log( - ` ${idx + 1}. ${c.bold}${tool.name}${c.reset}${badge} ${c.gray}(${tool.category})${c.reset}` + ` ${idx + 1}. ${c.bold}${tool.name}${c.reset}${badge} ${c.gray}(${tool.category})${c.reset}`, ); console.log(` ${tool.description}`); console.log(` ${c.underline}${c.blue}${tool.url}${c.reset}`); @@ -840,14 +840,14 @@ async function main() { if (latest.perkOfTheWeek) { console.log( - ` ๐ŸŽ ${c.green}${c.bold}Perk of the Week:${c.reset} ${latest.perkOfTheWeek.title}` + ` ๐ŸŽ ${c.green}${c.bold}Perk of the Week:${c.reset} ${latest.perkOfTheWeek.title}`, ); console.log(` ${latest.perkOfTheWeek.description}`); console.log(` ${c.underline}${c.blue}${latest.perkOfTheWeek.url}${c.reset}\n`); } console.log( - ` ${c.gray}Active Subscribers: ${c.bold}${nlData.stats?.activeSubscribers?.toLocaleString() || "2,800+"}${c.reset} engineers` + ` ${c.gray}Active Subscribers: ${c.bold}${nlData.stats?.activeSubscribers?.toLocaleString() || "2,800+"}${c.reset} engineers`, ); console.log(` ๐Ÿ“ก W3C RSS Feed: ${c.underline}${c.blue}${nlData.feedUrl}${c.reset}`); console.log(` ๐ŸŒ Web Archive: ${c.underline}${c.blue}${nlData.website}${c.reset}\n`); diff --git a/data/counts.json b/data/counts.json index 70459ef1..e53cfb66 100644 --- a/data/counts.json +++ b/data/counts.json @@ -1,7 +1,7 @@ { - "totalCount": 536, + "totalCount": 537, "milestone": "530+", - "exactCount": 536, + "exactCount": 537, "shelfCounts": { "ai-tools.json": 90, "apis.json": 102, @@ -10,8 +10,8 @@ "contributors-wanted.json": 21, "free-cloud.json": 71, "perks.json": 30, - "testing-qa.json": 62 + "testing-qa.json": 63 }, - "reposCount": 333, - "updatedAt": "2026-10-19T22:29:09.787Z" + "reposCount": 334, + "updatedAt": "2026-10-20T19:43:20.474Z" } diff --git a/docs/testing-qa.md b/docs/testing-qa.md index c6c67f27..666d6dca 100644 --- a/docs/testing-qa.md +++ b/docs/testing-qa.md @@ -4,10 +4,10 @@ [โ† Back to Main Directory](../README.md) โ€ข [๐ŸŒ Live Search App](https://devshelf.ritualdev.in) โ€ข [โž• Submit New Resource](../README.md#-how-to-submit-your-project-or-api) -[![Total Testing Tools](https://img.shields.io/badge/Testing_Tools-62_Curated-blueviolet?style=for-the-badge)](https://devshelf.ritualdev.in) +[![Total Testing Tools](https://img.shields.io/badge/Testing_Tools-63_Curated-blueviolet?style=for-the-badge)](https://devshelf.ritualdev.in) **Jump to Subcategory:** -[API Mocking & Sandboxes](#api-mocking-sandboxes) โ€ข [API Testing & Debugging](#api-testing-debugging) โ€ข [Browser & E2E Testing](#browser-e2e-testing) โ€ข [Contract & Schema Testing](#contract-schema-testing) โ€ข [Performance & Load Testing](#performance-load-testing) โ€ข [Security & Vulnerability Scanners](#security-vulnerability-scanners) โ€ข [Test Data Generation](#test-data-generation) โ€ข [Unit & Integration Testing](#unit-integration-testing) +[API Mocking & Sandboxes](#api-mocking-sandboxes) โ€ข [API Testing & Debugging](#api-testing-debugging) โ€ข [Browser & E2E Testing](#browser-e2e-testing) โ€ข [Contract & Schema Testing](#contract-schema-testing) โ€ข [Performance & Load Testing](#performance-load-testing) โ€ข [Security & Vulnerability Scanners](#security-vulnerability-scanners) โ€ข [Test Data Generation](#test-data-generation) โ€ข [Testing & QA Reliability](#testing-qa-reliability) โ€ข [Unit & Integration Testing](#unit-integration-testing) --- @@ -104,6 +104,12 @@ | [**Mimesis**](https://github.com/lk-geimfari/mimesis) | `Python` | `MIT` | High-performance Python library for generating realistic synthetic data in a variety of locales. | [GitHub](https://github.com/lk-geimfari/mimesis) | | [**Bogus**](https://github.com/bchavez/Bogus) | `C#` | `MIT` | A simple and sane fake data generator for .NET languages, ported from Faker.js with fluent syntax. | [GitHub](https://github.com/bchavez/Bogus) | +### Testing & QA Reliability (1) + +| Tool | Language | License | Description | Links | +| :--- | :---: | :---: | :--- | :---: | +| [**Clockshift**](https://github.com/brodyga45/clockshift-dst-check) | `JavaScript / Node.js and browser Intl` | `MIT` | Find missing or repeated local clock times in daily and weekly schedules, with CSV export and a weekday filter. Includes a browser UI and a dependency-free Node.js CLI; scheduler execution policy must be checked separately. | [GitHub](https://github.com/brodyga45/clockshift-dst-check) | + ### Unit & Integration Testing (4) | Tool | Language | License | Description | Links | diff --git a/scripts/activate-sponsor.ts b/scripts/activate-sponsor.ts index 99711e51..0fe084a2 100644 --- a/scripts/activate-sponsor.ts +++ b/scripts/activate-sponsor.ts @@ -9,14 +9,7 @@ const ROOT_DIR = path.resolve(__dirname, ".."); const SHELF_DIR = path.join(ROOT_DIR, "shelf"); const DATA_DIR = path.join(ROOT_DIR, "data"); -export type ShelfCategory = - | "ai" - | "cli" - | "apis" - | "cloud" - | "testing" - | "boilerplates" - | "perks"; +export type ShelfCategory = "ai" | "cli" | "apis" | "cloud" | "testing" | "boilerplates" | "perks"; export type SponsorTier = "starter" | "mcpPro" | "enterprise"; @@ -98,7 +91,10 @@ function normalizeUrl(u: string): string { const parsed = new URL(u); return `${parsed.hostname.replace(/^www\./, "").toLowerCase()}${parsed.pathname.replace(/\/$/, "").toLowerCase()}`; } catch { - return String(u || "").toLowerCase().trim().replace(/\/$/, ""); + return String(u || "") + .toLowerCase() + .trim() + .replace(/\/$/, ""); } } @@ -109,9 +105,7 @@ function normalizeUrl(u: string): string { * 3. Appends/updates the sponsor ledger in data/sponsors.json with patron details & telemetry * 4. Triggers catalog & badge rebuild to maintain 100% sync */ -export async function activateSponsor( - options: ActivateSponsorOptions, -): Promise { +export async function activateSponsor(options: ActivateSponsorOptions): Promise { const toolName = (options.name || "").trim(); const toolUrl = (options.url || "").trim(); @@ -122,18 +116,16 @@ export async function activateSponsor( throw new Error("Missing required option: --url "); } - const category: ShelfCategory = options.category && CATEGORY_MAP[options.category] - ? options.category - : "cli"; - const tier: SponsorTier = options.tier && TIER_MAP[options.tier] - ? options.tier - : "mcpPro"; + const category: ShelfCategory = + options.category && CATEGORY_MAP[options.category] ? options.category : "cli"; + const tier: SponsorTier = options.tier && TIER_MAP[options.tier] ? options.tier : "mcpPro"; const categoryConfig = CATEGORY_MAP[category]; const tierConfig = TIER_MAP[tier]; - const amountUSD = typeof options.amount === "number" && options.amount > 0 - ? options.amount - : tierConfig.defaultUSD; + const amountUSD = + typeof options.amount === "number" && options.amount > 0 + ? options.amount + : tierConfig.defaultUSD; const targetNormUrl = normalizeUrl(toolUrl); const targetNormName = toolName.toLowerCase(); @@ -204,9 +196,8 @@ export async function activateSponsor( } const defaultPitch = `${toolName} - Verified zero-paywall developer tooling and AI context integration.`; - const pitch = options.pitch && options.pitch.trim().length >= 10 - ? options.pitch.trim() - : defaultPitch; + const pitch = + options.pitch && options.pitch.trim().length >= 10 ? options.pitch.trim() : defaultPitch; if (category === "apis") { finalItem = { @@ -322,25 +313,25 @@ export async function activateSponsor( rank: 1, name: patronName, github: cleanGithub || "ghost", - avatar: cleanGithub - ? `https://github.com/${cleanGithub}.png` - : "https://github.com/ghost.png", + avatar: cleanGithub ? `https://github.com/${cleanGithub}.png` : "https://github.com/ghost.png", url: toolUrl, amountUSD, amountINR: Math.round(amountUSD * 84), tier: tierConfig.patronTier, date: new Date().toISOString().split("T")[0], - comment: (options.comment || "").trim() || + comment: + (options.comment || "").trim() || `Sponsoring DevShelf to feature ${toolName} across MCP coding queries and developer dossiers.`, badgeUrl: `https://devshelf.ritualdev.in/api/v1/badges/${tierConfig.patronTier}.svg`, toolName, }; const existingPatronIdx = Array.isArray(sponsorsData.patrons) - ? sponsorsData.patrons.findIndex((p: any) => - p.id === patronId || - (cleanGithub && p.github && p.github.toLowerCase() === cleanGithub.toLowerCase()) || - p.name.toLowerCase() === patronName.toLowerCase() + ? sponsorsData.patrons.findIndex( + (p: any) => + p.id === patronId || + (cleanGithub && p.github && p.github.toLowerCase() === cleanGithub.toLowerCase()) || + p.name.toLowerCase() === patronName.toLowerCase(), ) : -1; @@ -406,16 +397,8 @@ export async function activateSponsor( } // Write changes to disk - await fs.writeFile( - targetShelfPath, - `${JSON.stringify(foundShelfData, null, 2)}\n`, - "utf8", - ); - await fs.writeFile( - sponsorsJsonPath, - `${JSON.stringify(sponsorsData, null, 2)}\n`, - "utf8", - ); + await fs.writeFile(targetShelfPath, `${JSON.stringify(foundShelfData, null, 2)}\n`, "utf8"); + await fs.writeFile(sponsorsJsonPath, `${JSON.stringify(sponsorsData, null, 2)}\n`, "utf8"); // Synchronize site, README, counts, badges, and SEO pages if (!options.skipBuild) { @@ -510,14 +493,20 @@ Examples: console.log("\n======================================================="); console.log(`๐ŸŽ‰ SUCCESS: ${result.toolName} Activated as ${result.tier} Sponsor!`); console.log("======================================================="); - console.log(`โ€ข Target Shelf File: shelf/${result.shelfFile} (${result.isNewTool ? "New Tool Created" : "Existing Tool Promoted"})`); + console.log( + `โ€ข Target Shelf File: shelf/${result.shelfFile} (${result.isNewTool ? "New Tool Created" : "Existing Tool Promoted"})`, + ); console.log(`โ€ข Featured Flag: true (Tagged as: "${result.item.sponsorTier}")`); console.log(`โ€ข MCP AI Telemetry: Injected into npx devshelf-mcp server recommendations`); console.log(`โ€ข Wall of Patrons: Ranked in data/sponsors.json & site/sponsors.html`); - console.log(`โ€ข Dry-Run Mode: ${result.dryRun ? "YES (No files modified)" : "NO (Files synchronized)"}`); + console.log( + `โ€ข Dry-Run Mode: ${result.dryRun ? "YES (No files modified)" : "NO (Files synchronized)"}`, + ); console.log("\nEmbeddable README Badge Snippet:"); const handle = (result.patron.github as string) || "verified"; - console.log(`[![DevShelf Sponsor](https://devshelf.ritualdev.in/api/v1/badges/${encodeURIComponent(handle)}.svg)](https://devshelf.ritualdev.in/sponsors.html)`); + console.log( + `[![DevShelf Sponsor](https://devshelf.ritualdev.in/api/v1/badges/${encodeURIComponent(handle)}.svg)](https://devshelf.ritualdev.in/sponsors.html)`, + ); console.log("=======================================================\n"); } catch (err) { console.error("โŒ Activation failed:", err); diff --git a/scripts/add-affiliate.ts b/scripts/add-affiliate.ts index 56a3e82d..4bff16b9 100644 --- a/scripts/add-affiliate.ts +++ b/scripts/add-affiliate.ts @@ -147,7 +147,11 @@ export async function addOrUpdateAffiliate( await fs.mkdir(DATA_DIR, { recursive: true }); await fs.mkdir(GO_DIR, { recursive: true }); - let rawData = { version: "1.0.0", updatedAt: new Date().toISOString(), partners: [] as AffiliatePartner[] }; + let rawData = { + version: "1.0.0", + updatedAt: new Date().toISOString(), + partners: [] as AffiliatePartner[], + }; try { const raw = await fs.readFile(AFFILIATES_JSON_PATH, "utf8"); rawData = JSON.parse(raw); @@ -165,15 +169,24 @@ export async function addOrUpdateAffiliate( toolName, url, vanityPath, - category: options.category || (existingIdx !== -1 ? rawData.partners[existingIdx].category : "cloud"), - perkTitle: options.perk?.trim() || (existingIdx !== -1 ? rawData.partners[existingIdx].perkTitle : "Developer Free Tier & Credits"), + category: + options.category || (existingIdx !== -1 ? rawData.partners[existingIdx].category : "cloud"), + perkTitle: + options.perk?.trim() || + (existingIdx !== -1 + ? rawData.partners[existingIdx].perkTitle + : "Developer Free Tier & Credits"), perkDescription: options.description?.trim() || (existingIdx !== -1 ? rawData.partners[existingIdx].perkDescription : `Claim exclusive developer credits and perpetual free tier allowances with ${toolName}.`), - ctaText: options.cta?.trim() || (existingIdx !== -1 ? rawData.partners[existingIdx].ctaText : "Claim Offer โ†’"), - badge: options.badge?.trim() || (existingIdx !== -1 ? rawData.partners[existingIdx].badge : "๐ŸŽ Dev Perk"), + ctaText: + options.cta?.trim() || + (existingIdx !== -1 ? rawData.partners[existingIdx].ctaText : "Claim Offer โ†’"), + badge: + options.badge?.trim() || + (existingIdx !== -1 ? rawData.partners[existingIdx].badge : "๐ŸŽ Dev Perk"), active: true, }; @@ -194,7 +207,11 @@ export async function addOrUpdateAffiliate( // 3. Write site/api/v1/affiliates.json const apiV1Dir = path.join(SITE_DIR, "api", "v1"); await fs.mkdir(apiV1Dir, { recursive: true }); - await fs.writeFile(path.join(apiV1Dir, "affiliates.json"), `${JSON.stringify(rawData, null, 2)}\n`, "utf8"); + await fs.writeFile( + path.join(apiV1Dir, "affiliates.json"), + `${JSON.stringify(rawData, null, 2)}\n`, + "utf8", + ); // 4. Synchronize site if not skipped if (!options.skipBuild) { @@ -277,7 +294,9 @@ Examples: }); console.log("\n======================================================="); - console.log(`๐ŸŽ‰ SUCCESS: ${partner.toolName} Affiliate Partner ${isNew ? "Created" : "Updated"}!`); + console.log( + `๐ŸŽ‰ SUCCESS: ${partner.toolName} Affiliate Partner ${isNew ? "Created" : "Updated"}!`, + ); console.log("======================================================="); console.log(`โ€ข Destination URL: ${partner.url}`); console.log(`โ€ข Outbound Redirect: devshelf.ritualdev.in${partner.vanityPath}`); diff --git a/shelf/testing-qa.json b/shelf/testing-qa.json index 3d36fccf..e023724f 100644 --- a/shelf/testing-qa.json +++ b/shelf/testing-qa.json @@ -618,5 +618,14 @@ "license": "MIT", "featured": true, "goodFirstIssues": "https://github.com/testcontainers/testcontainers-java/issues" + }, + { + "name": "Clockshift", + "repo": "https://github.com/brodyga45/clockshift-dst-check", + "category": "Testing & QA Reliability", + "description": "Find missing or repeated local clock times in daily and weekly schedules, with CSV export and a weekday filter. Includes a browser UI and a dependency-free Node.js CLI; scheduler execution policy must be checked separately.", + "language": "JavaScript / Node.js and browser Intl", + "license": "MIT", + "featured": false } ] diff --git a/site/api/v1/categories.json b/site/api/v1/categories.json index 11c7785b..36cc1a55 100644 --- a/site/api/v1/categories.json +++ b/site/api/v1/categories.json @@ -1,6 +1,6 @@ { "version": "1.1.2", - "updatedAt": "2026-10-19T22:29:04.667Z", + "updatedAt": "2026-10-20T19:43:12.167Z", "totalCategories": 8, "categories": [ { @@ -30,7 +30,7 @@ { "slug": "testing", "name": "Testing & QA Automation", - "count": 62, + "count": 63, "endpoint": "https://devshelf.ritualdev.in/api/v1/categories/testing.json" }, { diff --git a/site/api/v1/categories/ai.json b/site/api/v1/categories/ai.json index 29ad261f..53ee7032 100644 --- a/site/api/v1/categories/ai.json +++ b/site/api/v1/categories/ai.json @@ -1,6 +1,6 @@ { "version": "1.1.2", - "updatedAt": "2026-10-19T22:29:04.667Z", + "updatedAt": "2026-10-20T19:43:12.167Z", "slug": "ai", "name": "AI Agents & Local LLMs", "count": 90, diff --git a/site/api/v1/categories/apis.json b/site/api/v1/categories/apis.json index 97853fb3..e2af1b25 100644 --- a/site/api/v1/categories/apis.json +++ b/site/api/v1/categories/apis.json @@ -1,6 +1,6 @@ { "version": "1.1.2", - "updatedAt": "2026-10-19T22:29:04.667Z", + "updatedAt": "2026-10-20T19:43:12.167Z", "slug": "apis", "name": "Free Public APIs", "count": 102, diff --git a/site/api/v1/categories/boilerplates.json b/site/api/v1/categories/boilerplates.json index 89e205d2..5c1e9889 100644 --- a/site/api/v1/categories/boilerplates.json +++ b/site/api/v1/categories/boilerplates.json @@ -1,6 +1,6 @@ { "version": "1.1.2", - "updatedAt": "2026-10-19T22:29:04.667Z", + "updatedAt": "2026-10-20T19:43:12.167Z", "slug": "boilerplates", "name": "1-Click Deploy Boilerplates", "count": 41, diff --git a/site/api/v1/categories/cli.json b/site/api/v1/categories/cli.json index 3b28b364..0f2f22c0 100644 --- a/site/api/v1/categories/cli.json +++ b/site/api/v1/categories/cli.json @@ -1,6 +1,6 @@ { "version": "1.1.2", - "updatedAt": "2026-10-19T22:29:04.667Z", + "updatedAt": "2026-10-20T19:43:12.167Z", "slug": "cli", "name": "CLI & Developer Productivity", "count": 119, diff --git a/site/api/v1/categories/cloud.json b/site/api/v1/categories/cloud.json index 7498124d..01f5a4d4 100644 --- a/site/api/v1/categories/cloud.json +++ b/site/api/v1/categories/cloud.json @@ -1,6 +1,6 @@ { "version": "1.1.2", - "updatedAt": "2026-10-19T22:29:04.667Z", + "updatedAt": "2026-10-20T19:43:12.167Z", "slug": "cloud", "name": "Free Cloud & Databases", "count": 71, diff --git a/site/api/v1/categories/contributors.json b/site/api/v1/categories/contributors.json index 98dd771b..cc7e2b61 100644 --- a/site/api/v1/categories/contributors.json +++ b/site/api/v1/categories/contributors.json @@ -1,6 +1,6 @@ { "version": "1.1.2", - "updatedAt": "2026-10-19T22:29:04.667Z", + "updatedAt": "2026-10-20T19:43:12.167Z", "slug": "contributors", "name": "Contributors Wanted / Up for Grabs", "count": 21, diff --git a/site/api/v1/categories/perks.json b/site/api/v1/categories/perks.json index cd5cc3b3..9670bc06 100644 --- a/site/api/v1/categories/perks.json +++ b/site/api/v1/categories/perks.json @@ -1,6 +1,6 @@ { "version": "1.1.2", - "updatedAt": "2026-10-19T22:29:04.667Z", + "updatedAt": "2026-10-20T19:43:12.167Z", "slug": "perks", "name": "Developer Perks & Startup Credits", "count": 30, diff --git a/site/api/v1/categories/testing.json b/site/api/v1/categories/testing.json index 1722ca03..a26b20dc 100644 --- a/site/api/v1/categories/testing.json +++ b/site/api/v1/categories/testing.json @@ -1,9 +1,9 @@ { "version": "1.1.2", - "updatedAt": "2026-10-19T22:29:04.667Z", + "updatedAt": "2026-10-20T19:43:12.167Z", "slug": "testing", "name": "Testing & QA Automation", - "count": 62, + "count": 63, "items": [ { "name": "AutoHeal-QA", @@ -773,6 +773,17 @@ "goodFirstIssues": "https://github.com/testcontainers/testcontainers-java/issues", "type": "testing", "section": "Testing & QA Reliability" + }, + { + "name": "Clockshift", + "repo": "https://github.com/brodyga45/clockshift-dst-check", + "category": "Testing & QA Reliability", + "description": "Find missing or repeated local clock times in daily and weekly schedules, with CSV export and a weekday filter. Includes a browser UI and a dependency-free Node.js CLI; scheduler execution policy must be checked separately.", + "language": "JavaScript / Node.js and browser Intl", + "license": "MIT", + "featured": false, + "type": "testing", + "section": "Testing & QA Reliability" } ] } diff --git a/site/api/v1/counts.json b/site/api/v1/counts.json index 70459ef1..e53cfb66 100644 --- a/site/api/v1/counts.json +++ b/site/api/v1/counts.json @@ -1,7 +1,7 @@ { - "totalCount": 536, + "totalCount": 537, "milestone": "530+", - "exactCount": 536, + "exactCount": 537, "shelfCounts": { "ai-tools.json": 90, "apis.json": 102, @@ -10,8 +10,8 @@ "contributors-wanted.json": 21, "free-cloud.json": 71, "perks.json": 30, - "testing-qa.json": 62 + "testing-qa.json": 63 }, - "reposCount": 333, - "updatedAt": "2026-10-19T22:29:09.787Z" + "reposCount": 334, + "updatedAt": "2026-10-20T19:43:20.474Z" } diff --git a/site/api/v1/stats.json b/site/api/v1/stats.json index 81c3fea0..4c073c7f 100644 --- a/site/api/v1/stats.json +++ b/site/api/v1/stats.json @@ -1,12 +1,12 @@ { "version": "1.1.2", - "updatedAt": "2026-10-19T22:29:04.667Z", - "totalCount": 536, - "reposCount": 333, + "updatedAt": "2026-10-20T19:43:12.167Z", + "totalCount": 537, + "reposCount": 334, "categoryCounts": { "aiTools": 90, "cliTools": 119, - "testingQa": 62, + "testingQa": 63, "apis": 102, "freeCloud": 71, "perks": 30, diff --git a/site/api/v1/tools.json b/site/api/v1/tools.json index 8d085f53..b5e4f7cf 100644 --- a/site/api/v1/tools.json +++ b/site/api/v1/tools.json @@ -2,8 +2,8 @@ "version": "1.1.2", "docs": "https://devshelf.ritualdev.in/docs/api.html", "license": "https://github.com/RitualDev-Lab/DevShelf/blob/main/LICENSE", - "updatedAt": "2026-10-19T22:29:04.667Z", - "totalCount": 536, + "updatedAt": "2026-10-20T19:43:12.167Z", + "totalCount": 537, "tools": [ { "name": "AgentShield", @@ -4119,6 +4119,17 @@ "type": "testing", "section": "Testing & QA Reliability" }, + { + "name": "Clockshift", + "repo": "https://github.com/brodyga45/clockshift-dst-check", + "category": "Testing & QA Reliability", + "description": "Find missing or repeated local clock times in daily and weekly schedules, with CSV export and a weekday filter. Includes a browser UI and a dependency-free Node.js CLI; scheduler execution policy must be checked separately.", + "language": "JavaScript / Node.js and browser Intl", + "license": "MIT", + "featured": false, + "type": "testing", + "section": "Testing & QA Reliability" + }, { "name": "Open-Meteo", "url": "https://open-meteo.com", diff --git a/site/data.js b/site/data.js index 95de3a4c..7897327b 100644 --- a/site/data.js +++ b/site/data.js @@ -1,14 +1,14 @@ window.DEVSHELF_DATA = { - "updatedAt": "2026-10-19T22:29:04.667Z", - "totalCount": 536, - "reposCount": 333, + "updatedAt": "2026-10-20T19:43:12.167Z", + "totalCount": 537, + "reposCount": 334, "facets": { - "repos": 333 + "repos": 334 }, "counts": { "aiTools": 90, "cliTools": 119, - "testingQa": 62, + "testingQa": 63, "apis": 102, "freeCloud": 71, "perks": 30, @@ -4130,6 +4130,17 @@ window.DEVSHELF_DATA = { "type": "testing", "section": "Testing & QA Reliability" }, + { + "name": "Clockshift", + "repo": "https://github.com/brodyga45/clockshift-dst-check", + "category": "Testing & QA Reliability", + "description": "Find missing or repeated local clock times in daily and weekly schedules, with CSV export and a weekday filter. Includes a browser UI and a dependency-free Node.js CLI; scheduler execution policy must be checked separately.", + "language": "JavaScript / Node.js and browser Intl", + "license": "MIT", + "featured": false, + "type": "testing", + "section": "Testing & QA Reliability" + }, { "name": "Open-Meteo", "url": "https://open-meteo.com", diff --git a/site/data.json b/site/data.json index b2a9c967..399dd89d 100644 --- a/site/data.json +++ b/site/data.json @@ -1,14 +1,14 @@ { - "updatedAt": "2026-10-19T22:29:04.667Z", - "totalCount": 536, - "reposCount": 333, + "updatedAt": "2026-10-20T19:43:12.167Z", + "totalCount": 537, + "reposCount": 334, "facets": { - "repos": 333 + "repos": 334 }, "counts": { "aiTools": 90, "cliTools": 119, - "testingQa": 62, + "testingQa": 63, "apis": 102, "freeCloud": 71, "perks": 30, @@ -4130,6 +4130,17 @@ "type": "testing", "section": "Testing & QA Reliability" }, + { + "name": "Clockshift", + "repo": "https://github.com/brodyga45/clockshift-dst-check", + "category": "Testing & QA Reliability", + "description": "Find missing or repeated local clock times in daily and weekly schedules, with CSV export and a weekday filter. Includes a browser UI and a dependency-free Node.js CLI; scheduler execution policy must be checked separately.", + "language": "JavaScript / Node.js and browser Intl", + "license": "MIT", + "featured": false, + "type": "testing", + "section": "Testing & QA Reliability" + }, { "name": "Open-Meteo", "url": "https://open-meteo.com", diff --git a/site/directory.html b/site/directory.html index b85cc564..4e3ad433 100644 --- a/site/directory.html +++ b/site/directory.html @@ -4,7 +4,7 @@ Complete Free Developer Tools Directory Index | DevShelf - + @@ -22,13 +22,13 @@ - + - + @@ -41,7 +41,7 @@ "@id": "https://devshelf.ritualdev.in/directory.html#collection", "url": "https://devshelf.ritualdev.in/directory.html", "name": "Complete Free Developer Tools Directory Index | DevShelf", - "description": "Explore all 536 free and open-source developer resources across 75 categories with zero paywalls.", + "description": "Explore all 537 free and open-source developer resources across 76 categories with zero paywalls.", "isPartOf": { "@type": "WebSite", "@id": "https://devshelf.ritualdev.in/#website", @@ -82,7 +82,7 @@ { "@type": "ItemList", "name": "DevShelf Categorized Developer Resources", - "numberOfItems": 536, + "numberOfItems": 537, "itemListElement": [ { "@type": "ListItem", @@ -271,7 +271,7 @@
- ๐Ÿ—‚๏ธ Complete Master Directory (536 Verified Tools) + ๐Ÿ—‚๏ธ Complete Master Directory (537 Verified Tools)

Browse All Free Developer Tools @@ -5489,6 +5489,32 @@

Security & Vulnerabi

+
+
+ ๐Ÿ“ +

Testing & QA Reliability

+ 1 tools +
+
+ +
+
+
+ + Clockshift + + JavaScript / Node.js and browser Intl +
+

Find missing or repeated local clock times in daily and weekly schedules, with CSV export and a weekday filter. Includes a browser UI and a dependency-free Node.js CLI; scheduler execution policy must be checked separately.

+
+
+ ๐Ÿ’Ž See official site for free access and limits + Details โ†’ +
+
+
+
+
๐Ÿ“ diff --git a/site/feed.xml b/site/feed.xml index da8da48b..1ab77766 100644 --- a/site/feed.xml +++ b/site/feed.xml @@ -5,7 +5,7 @@ https://devshelf.ritualdev.in/newsletter.html Weekly curated developer newsletter featuring verified open-source alternatives, free cloud infrastructure, public APIs, and developer perks with zero paywalls. en-us - Mon, 19 Oct 2026 22:29:09 GMT + Tue, 20 Oct 2026 19:43:19 GMT Issue #3: Local-First AI Agents, Fast Postgres Branching, and Weather Radar APIs diff --git a/site/index.html b/site/index.html index 5ec31523..36addf94 100644 --- a/site/index.html +++ b/site/index.html @@ -542,10 +542,10 @@

- 536 Resources + 537 Resources
- 333 GitHub Repos + 334 GitHub Repos
41 1-Click Deploys @@ -560,7 +560,7 @@

119 CLI Tools

- 62 Testing & QA + 63 Testing & QA
71 Free Cloud @@ -589,7 +589,7 @@

- 536 / 1,000 Tools Verified (464 to go!) + 537 / 1,000 Tools Verified (463 to go!) Help reach 1,000 +Submit Tool โ†’ diff --git a/site/llms-full.txt b/site/llms-full.txt index a55cbdcb..2397b6b9 100644 --- a/site/llms-full.txt +++ b/site/llms-full.txt @@ -1,6 +1,6 @@ # DevShelf - Complete Free Developer Tools Knowledge Base (Full Catalog) -> Complete metadata dump of all 536 free and open-source developer tools indexed on DevShelf. +> Complete metadata dump of all 537 free and open-source developer tools indexed on DevShelf. > Authoritative Source: https://devshelf.ritualdev.in > License: MIT @@ -2526,6 +2526,15 @@ - **DevShelf Dossier**: https://devshelf.ritualdev.in/tools/testcontainers.html - **Description**: Java library that supports JUnit tests, providing lightweight throwaway instances of Docker databases. +### Clockshift +- **Category**: Testing & QA Reliability +- **Pricing Model**: See official site for free access and limits +- **License**: MIT +- **Language**: JavaScript / Node.js and browser Intl +- **URL**: https://github.com/brodyga45/clockshift-dst-check +- **DevShelf Dossier**: https://devshelf.ritualdev.in/tools/clockshift.html +- **Description**: Find missing or repeated local clock times in daily and weekly schedules, with CSV export and a weekday filter. Includes a browser UI and a dependency-free Node.js CLI; scheduler execution policy must be checked separately. + ### Open-Meteo - **Category**: Weather & Climate - **Pricing Model**: 10,000 req/day diff --git a/site/llms.txt b/site/llms.txt index 81ec7d21..0198ed8b 100644 --- a/site/llms.txt +++ b/site/llms.txt @@ -1,6 +1,6 @@ # DevShelf: Free Developer Tools & Public APIs Directory -> Curated catalog of 536 verified free developer tools, public APIs, AI coding agents, and open-source alternatives with zero paywalls. +> Curated catalog of 537 verified free developer tools, public APIs, AI coding agents, and open-source alternatives with zero paywalls. DevShelf is an open-source, community-driven developer resource ecosystem curated by RitualDev-Lab and developers worldwide. Every resource is manually verified to ensure a permanent free tier, open-source license, or generous allowance with no mandatory credit card or 14-day trial traps. diff --git a/site/newsletter.xml b/site/newsletter.xml index da8da48b..1ab77766 100644 --- a/site/newsletter.xml +++ b/site/newsletter.xml @@ -5,7 +5,7 @@ https://devshelf.ritualdev.in/newsletter.html Weekly curated developer newsletter featuring verified open-source alternatives, free cloud infrastructure, public APIs, and developer perks with zero paywalls. en-us - Mon, 19 Oct 2026 22:29:09 GMT + Tue, 20 Oct 2026 19:43:19 GMT Issue #3: Local-First AI Agents, Fast Postgres Branching, and Weather Radar APIs diff --git a/site/sitemap.xml b/site/sitemap.xml index 0ba7de61..4c083e0f 100644 --- a/site/sitemap.xml +++ b/site/sitemap.xml @@ -2,4135 +2,4141 @@ https://devshelf.ritualdev.in/ - 2026-10-19 + 2026-10-20 daily 1.0 https://devshelf.ritualdev.in/tools/agentshield.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/ollama.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/dify.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/vllm.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/open-webui.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/yylo.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/localai.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/anythingllm.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/flowise.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/langflow.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/jan.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/librechat.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/fabric.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/aider.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/openhands.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/continue.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/llamacpp.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/litellm.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/privategpt.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/gpt4all.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/tabby.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/khoj.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/llamaindex.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/langchain.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/instructor.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/mindsdb.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/chroma.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/qdrant.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/milvus.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/weaviate.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/bark.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/whispercpp.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/comfyui.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/searxng.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/ragflow.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/mem0.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/open-interpreter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/tgi-text-generation-inference.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/sglang.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/tensorrt-llm.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/exllamav2.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/llamafile.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/aphrodite-engine.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/autogpt.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/crewai.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/autogen.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/metagpt.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/chatdev.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/superagi.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/unsloth.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/axolotl.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/llama-factory.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/autoawq.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/autogptq.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/bitsandbytes.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/peft.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/trl.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/ragas.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/deepeval.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/nemo-guardrails.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/guidance.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/outlines.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/promptfoo.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/stable-diffusion-webui.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/invokeai.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/fooocus.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/llava.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/segment-anything-sam.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/yolov8.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/paddleocr.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/kokoro-tts.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/piper-tts.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/chattts.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/faster-whisper.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/pgvector.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/faiss.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/lancedb.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/vespa.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/annoy.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/babyagi.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/opencodeinterpreter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/lmql.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/autoround.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/swe-agent.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/dspy.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/fastchat.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/gptcache.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/mcp-dubai.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/eigenwise-toolshed.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/tale.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/gitwhisper.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/flashlane.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/lazygit.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/ripgrep.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/eza.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/fzf.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/agent-browser.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/bat.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/delta.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/hyperfine.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/tldr.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/dust.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/procs.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/bottom.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/curlie.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/starship.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/zoxide.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/gh-dash.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/httpie.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/fd.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/btop.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/k9s.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/act.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/duf.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/tokei.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/xh.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/doggo.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/fx.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/jless.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/lazysql.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/gum.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/vhs.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/glow.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/dive.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/lazydocker.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/usql.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/gping.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/bandwhich.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/choose.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/sd.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/mcfly.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/yazi.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/helix.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/zellij.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/nnn.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/ranger.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/broot.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/superfile.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/htop.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/glances.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/fastfetch.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/ncdu.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/gdu.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/aria2.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/croc.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/magic-wormhole.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/trippy.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/mitmproxy.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/websocat.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/grpcurl.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/gh.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/glab.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/git-cliff.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/onefetch.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/gitleaks.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/trufflehog.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/osv-scanner.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/tmux.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/atuin.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/thefuck.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/direnv.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/mise.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/asdf-vm.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/pnpm.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/bun.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/deno.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/jq.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/yq.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/miller.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/csvkit.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/pandoc.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/typos-cli.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/vale.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/rowsafe.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/pgcli.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/mycli.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/iredis.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/litecli.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/stern.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/kubectx.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/helm.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/kustomize.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/minikube.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/kind.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/dasel.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/zenith.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/diskonaut.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/ctop.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/speedtest-cli.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/git-sizer.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/cz-cli.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/volta.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/q.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/lf.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/inxi.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/codex-quota-overlay.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/web-performance-budget-gate.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/hyperconsciousness.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/image-format-readiness.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/docs-link-integrity-checker.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/openapi-example-validator.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/orkasvideostudio.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/shipvela-publishing-plugin-and-skills.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/leanfps.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/solaris-dev-shop.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/dateparser-kotlin.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/clonepeek.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/bubo.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/stonesvn.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/autoheal-qa.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/agent-qa.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/playwright.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/vitest.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/k6.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/bruno.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/hoppscotch.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/mockoon.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/artillery.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/locust.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/msw-mock-service-worker.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/vegeta.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/cypress.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/jest.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/wiremock.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/prism.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/lighthouse-ci.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/axe-core.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/faker.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/pact.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/stryker.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/taiko.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/autocannon.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/insomnia.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/trivy.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/semgrep.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/sonarqube-community.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/newman.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/pactumjs.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/karate-framework.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/restassured.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/dredd.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/schemathesis.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/puppeteer.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/selenium.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/appium.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/maestro.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/detox.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/webdriverio.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/nightwatchjs.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/gatling.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/jmeter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/wrk.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/hey.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/drill.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/checkov.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/hadolint.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/bandit.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/brakeman.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/safety-cli.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/owasp-zap.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/nuclei.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/pa11y.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/backstopjs.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/pixelmatch.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/loki.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/lost-pixel.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/mockserver.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/json-server.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/mimesis.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/bogus.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/testcontainers.html - 2026-10-19 + 2026-10-20 + weekly + 0.8 + + + https://devshelf.ritualdev.in/tools/clockshift.html + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/open-meteo.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/groqcloud-free-tier.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/jsonplaceholder.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/hugging-face-serverless-inference.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/ipapico.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/coingecko-free-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/rest-countries.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/pokeapi.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/open-library.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/reqres.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/ipify.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/dummyjson.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/nominatim-openstreetmap.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/exchangerate-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/cat-facts.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/dog-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/frankfurter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/nasa-open-apis.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/open-food-facts.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/open-brewery-db.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/rick-and-morty-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/gutendex.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/7timer.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/ip-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/dictionary-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/robohash.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/dicebear.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/universities-list-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/zippopotamus.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/chuck-norris-jokes-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/bored-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/countapi.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/agifyio.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/genderizeio.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/nationalizeio.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/randomuserme.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/httpbinorg.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/requestbin.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/postman-echo.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/jsonbinio.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/mockyio.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/beeceptor.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/binlist.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/hacker-news-firebase-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/devto-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/reddit-json-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/wikipedia-rest-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/wikidata-sparql-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/archiveorg-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/geocodexyz.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/sunrise-sunsetorg-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/usgs-earthquake-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/opensky-network-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/tvmaze-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/the-movie-database-tmdb-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/anilist-graphql-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/jikan-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/open-trivia-db.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/xkcd-json-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/poetrydb.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/quotable-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/advice-slip-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/cataas-cat-as-a-service.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/randomfox-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/shibeonline.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/fishwatch-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/spacex-rest-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/launch-library-2.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/solar-system-opendata-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/qr-code-generator-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/urlhaus-malware-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/have-i-been-pwned-pwned-passwords.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/coinpaprika-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/cryptocompare-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/open-meteo-air-quality.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/open-library-covers-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/meme-generator-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/jokeapi.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/deck-of-cards-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/open-source-licenses-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/rest-countries-v3.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/carbon-interface-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/genderize-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/agify-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/nationalize-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/public-apis-index.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/ipinfoio-lite.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/big-data-cloud-free-ip.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/free-dictionary.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/bored-api-mirror.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/corporate-bullshit-generator.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/evil-insult-generator.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/geek-jokes-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/kanye-rest.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/tronald-dump-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/foxpics.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/court-rules.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/arcmira-youtube-transcript-search.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/caption-pack-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/invokely.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/curlshot.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/carejobsnow-open-healthcare-jobs-and-pay-data.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/supabase.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/neon.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/cloudflare-workers.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/clerk.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/resend.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/pocketbase.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/appwrite.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/flyio.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/render.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/koyeb.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/authjs.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/better-auth.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/lucia.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/supertokens.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/logto.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/coolify.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/dokku.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/caprover.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/easypanel.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/turso.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/upstash.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/posthog.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/umami.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/directus.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/strapi.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/minio.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/glitchtip.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/meilisearch.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/typesense.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/qdrant-cloud.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/railway.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/oracle-cloud-always-free.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/deno-deploy.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/vercel.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/netlify.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/cloudflare-pages.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/github-pages.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/gitlab-pages.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/glitch.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/aiven-free-tier.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/mongodb-atlas.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/redis-cloud.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/cockroachdb-serverless.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/tidb-serverless.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/backblaze-b2.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/scaleway-stardust-object-storage.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/keycloak.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/authentik.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/authelia.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/zitadel.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/fusionauth.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/casdoor.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/ory-kratos.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/portainer-community.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/nginx-proxy-manager.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/traefik-community.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/caddy-web-server.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/casaos.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/umbrel.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/yunohost.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/rabbitmq.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/eclipse-mosquitto.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/emqx.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/brevo-formerly-sendinblue.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/sendgrid-free-tier.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/mailgun-free-foundation.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/plausible-analytics-self-hosted.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/grafana-oss.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/prometheus.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/uptime-kuma.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/dragonfly.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/jetbrains-free-open-source-license.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/sentry-for-open-source.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/github-for-startups.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/aws-activate-founders.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/google-cloud-for-startups.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/digitalocean-open-source-sponsorship.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/postman-open-source-sponsorship.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/datadog-for-open-source.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/browserstack-open-source.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/docker-open-source-community.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/jetbrains-mono.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/fira-code.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/cascadia-code.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/github-student-developer-pack.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/microsoft-for-startups-founders-hub.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/cloudflare-for-open-source.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/1password-for-open-source.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/netlify-for-open-source.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/vercel-for-open-source.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/gitlab-for-open-source.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/atlassian-open-source-project-licensing.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/jetbrains-student-pack.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/notion-for-education.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/twilio-startups-program.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/figma-for-education.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/mongodb-for-startups.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/codecov-for-open-source.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/crowdin-for-open-source.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/termius-for-students.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/snyk-for-open-source.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/astrowind-starter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/pocketbase-1-click-backend.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/full-stack-fastapi-template.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/stirling-pdf-ultimate-toolbox.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/go-clean-architecture-api.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/directus-instant-data-engine.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/wxt-extension-framework.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/remix-indie-stack.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/create-t3-app.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/shadcn-taxonomy.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/next-forge.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/bulletproof-react.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/fastapi-full-stack-template.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/astro-paper.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/refine.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/medusa.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/nextjs-enterprise-boilerplate.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/saas-boilerplate-by-boxyhq.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/turborepo-starter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/payload-cms-starter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/nuxt-3-starter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/vitesse.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/vitesse-webext.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/expo-starter-kit.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/tauri-app-starter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/electron-react-boilerplate.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/flutter-starter-kit.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/nestjs-starter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/fastapi-clean-architecture.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/django-boilerplate-wemake.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/go-clean-architecture-template.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/rust-axum-starter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/spring-boot-initializr-template.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/adonisjs-starter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/vercel-ai-sdk-starter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/langchain-nextjs-template.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/streamlit-ai-dashboard-starter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/hono-starter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/elysia-starter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/fastify-starter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/astro-blog-starter.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/zed.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/biome.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/nushell.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/infisical.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/ast-grep.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/cerbos.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/infracost.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/wezterm.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/casbin.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/open-source-ideas.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/up-for-grabs.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/freecodecamp.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/excalidraw.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/calcom.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/documenso.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/twenty.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/ghost.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/chatwoot.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/appflowy.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/affine.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/tools/dubco.html - 2026-10-19 + 2026-10-20 weekly 0.8 https://devshelf.ritualdev.in/alternatives/github-copilot.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/openai-api.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/triton-inference-server.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/chatbase.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/typingmind.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/flowise.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/dify.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/chatgpt-plus.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/claude-pro.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/devin.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/copilot-workspace.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/chatgpt-enterprise.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/rewind-ai.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/notion-ai.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/llamaindex-enterprise.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/pinecone.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/openai-whisper-api.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/google-custom-search-api.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/dify-enterprise.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/zep-memory.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/vllm.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/tensorrt-llm.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/nvidia-ai-enterprise.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/devin-ai.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/autogpt-enterprise.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/anyscale.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/runpod.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/arize-phoenix.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/langsmith.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/google-cloud-vision-ocr.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/elevenlabs.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/weaviate-cloud.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/grep.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/ls.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/command-t.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/quickopen.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/cat.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/oh-my-zsh.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/autojump.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/activity-monitor.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/datadog-agent.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/lens-kubernetes-ide.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/df-command.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/cloc-enterprise.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/httpie.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/postman-cli.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/docker-desktop.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/shell-history-pro.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/mac-finder.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/totalfinder.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/directory-opus.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/disk-inventory-x.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/daisydisk.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/traceroute-pro.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/charles-proxy.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/fiddler-everywhere.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/neofetch-pro.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/gitguardian.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/snyk-open-source.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/shell-error-corrector.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/asdf.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/grammarly-business.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/kubernetes-log-viewers.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/kubernetes-context-switchers.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/docker-desktop-kubernetes.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/eks.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/gke-local.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/nvm.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/loadrunner.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/gatling-enterprise.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/postman.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/postman-mock-server.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/artillery-pro.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/postman-mocks.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/stoplight.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/snyk-container.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/veracode.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/checkmarx.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/snyk-code.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/newman.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/restassured.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/commercial-api-testers.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/api-fuzzing-commercial-tools.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/bridgecrew.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/prisma-cloud.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/docker-linter-pro.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/burp-suite-professional.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/acunetix.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/nessus-scanner.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/datadog-logs.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/splunk.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/firebase.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/aws-rds.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/aws-aurora-serverless.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/heroku.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/render-paid.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/auth0.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/clerk.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/vercel.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/planetscale.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/redis-enterprise.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/aws-dynamodb.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/mixpanel.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/segment.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/amplitude.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/google-analytics.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/contentful.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/strapi-cloud.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/aws-s3.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/datadog.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/sentry-saas.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/algolia.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/aws-documentdb.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/aws-elasticache.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/google-cloud-spanner.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/okta.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/aws-cognito.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/docker-desktop-gui.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/cloudflare-pro.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/traefik-enterprise.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/nginx-plus.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/aws-alb.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/umbrel.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/datadog-metrics.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/better-uptime.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/datadog-apm.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/bugsnag.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/aws-amplify.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/saas-boilerplate-paid.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/adobe-acrobat-dc-20.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/mo.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/tailwind-ui.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/shipfast.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/retool-enterprise.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/shopify-plus-2000.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/sanity-pro.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/vite-commercial-templates.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/electron-pro.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/cursor.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/sublime-text.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/powershell.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/zsh.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/iterm2.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/warp-pro.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/salesforce.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/alternatives/hubspot-crm.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/collections/free-weather-apis.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/collections/ai-coding-agents.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/collections/free-mock-apis.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/collections/self-hostable-docker-tools.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/collections/free-serverless-databases.html - 2026-10-19 + 2026-10-20 weekly 0.9 https://devshelf.ritualdev.in/directory.html - 2026-10-19 + 2026-10-20 daily 0.95 diff --git a/site/tailwind.min.css b/site/tailwind.min.css index 02150ebd..38cb6fbc 100644 --- a/site/tailwind.min.css +++ b/site/tailwind.min.css @@ -1 +1 @@ -*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Plus Jakarta Sans,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:JetBrains Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{top:0;bottom:0}.-left-32{left:-8rem}.-right-12{right:-3rem}.-right-16{right:-4rem}.-right-32{right:-8rem}.-right-8{right:-2rem}.-top-12{top:-3rem}.-top-16{top:-4rem}.-top-3{top:-.75rem}.-top-32{top:-8rem}.-top-8{top:-2rem}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-1\/2{left:50%}.left-3\.5{left:.875rem}.right-0{right:0}.right-1\.5{right:.375rem}.right-3\.5{right:.875rem}.right-5{right:1.25rem}.right-6{right:1.5rem}.top-0{top:0}.top-1\/2{top:50%}.top-5{top:1.25rem}.top-\[1200px\]{top:1200px}.top-\[500px\]{top:500px}.top-\[600px\]{top:600px}.-z-10{z-index:-10}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-8{margin-top:2rem;margin-bottom:2rem}.my-auto{margin-top:auto;margin-bottom:auto}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-14{margin-bottom:3.5rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-20{margin-bottom:5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-3\.5{margin-top:.875rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.\!grid{display:grid!important}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[400px\]{height:400px}.h-\[450px\]{height:450px}.h-\[500px\]{height:500px}.h-full{height:100%}.max-h-24{max-height:6rem}.max-h-52{max-height:13rem}.max-h-\[340px\]{max-height:340px}.max-h-\[380px\]{max-height:380px}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.min-h-\[120px\]{min-height:120px}.min-h-\[220px\]{min-height:220px}.min-h-\[40px\]{min-height:40px}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-64{width:16rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[400px\]{width:400px}.w-\[500px\]{width:500px}.w-\[800px\]{width:800px}.w-\[94\%\]{width:94%}.w-full{width:100%}.min-w-0{min-width:0}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[150px\]{max-width:150px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.translate-y-0{--tw-translate-y:0px}.translate-y-0,.translate-y-20{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-20{--tw-translate-y:5rem}.translate-y-4{--tw-translate-y:1rem}.scale-105,.translate-y-4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05}.scale-95{--tw-scale-x:.95;--tw-scale-y:.95}.scale-95,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.resize{resize:both}.scroll-mt-24{scroll-margin-top:6rem}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-y-1{row-gap:.25rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}.space-x-1\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.375rem*var(--tw-space-x-reverse));margin-left:calc(.375rem*(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.space-x-2\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.625rem*var(--tw-space-x-reverse));margin-left:calc(.625rem*(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem*var(--tw-space-x-reverse));margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))}.space-x-3\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.875rem*var(--tw-space-x-reverse));margin-left:calc(.875rem*(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem*var(--tw-space-x-reverse));margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1.5rem*var(--tw-space-x-reverse));margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem*var(--tw-space-y-reverse))}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.625rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-3\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.875rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.875rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-slate-800>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(30 41 59/var(--tw-divide-opacity,1))}.divide-slate-800\/60>:not([hidden])~:not([hidden]){border-color:rgba(30,41,59,.6)}.divide-slate-800\/80>:not([hidden])~:not([hidden]){border-color:rgba(30,41,59,.8)}.self-start{align-self:flex-start}.self-center{align-self:center}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.scroll-smooth{scroll-behavior:smooth}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[10px\]{border-radius:10px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-amber-400{--tw-border-opacity:1;border-color:rgb(251 191 36/var(--tw-border-opacity,1))}.border-amber-500\/30{border-color:rgba(245,158,11,.3)}.border-amber-500\/40{border-color:rgba(245,158,11,.4)}.border-amber-500\/50{border-color:rgba(245,158,11,.5)}.border-amber-500\/60{border-color:rgba(245,158,11,.6)}.border-blue-500\/30{border-color:rgba(59,130,246,.3)}.border-blue-500\/50{border-color:rgba(59,130,246,.5)}.border-cyan-400{--tw-border-opacity:1;border-color:rgb(34 211 238/var(--tw-border-opacity,1))}.border-cyan-500\/30{border-color:rgba(6,182,212,.3)}.border-cyan-500\/40{border-color:rgba(6,182,212,.4)}.border-cyan-500\/50{border-color:rgba(6,182,212,.5)}.border-emerald-400{--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity,1))}.border-emerald-400\/60{border-color:rgba(52,211,153,.6)}.border-emerald-500\/20{border-color:rgba(16,185,129,.2)}.border-emerald-500\/30{border-color:rgba(16,185,129,.3)}.border-emerald-500\/40{border-color:rgba(16,185,129,.4)}.border-emerald-500\/50{border-color:rgba(16,185,129,.5)}.border-emerald-500\/60{border-color:rgba(16,185,129,.6)}.border-indigo-500\/50{border-color:rgba(99,102,241,.5)}.border-orange-500\/30{border-color:rgba(249,115,22,.3)}.border-orange-500\/40{border-color:rgba(249,115,22,.4)}.border-orange-500\/50{border-color:rgba(249,115,22,.5)}.border-pink-400{--tw-border-opacity:1;border-color:rgb(244 114 182/var(--tw-border-opacity,1))}.border-pink-500\/40{border-color:rgba(236,72,153,.4)}.border-pink-500\/50{border-color:rgba(236,72,153,.5)}.border-purple-400{--tw-border-opacity:1;border-color:rgb(192 132 252/var(--tw-border-opacity,1))}.border-purple-400\/50{border-color:rgba(192,132,252,.5)}.border-purple-400\/70{border-color:rgba(192,132,252,.7)}.border-purple-500{--tw-border-opacity:1;border-color:rgb(168 85 247/var(--tw-border-opacity,1))}.border-purple-500\/20{border-color:rgba(168,85,247,.2)}.border-purple-500\/30{border-color:rgba(168,85,247,.3)}.border-purple-500\/40{border-color:rgba(168,85,247,.4)}.border-purple-500\/50{border-color:rgba(168,85,247,.5)}.border-purple-500\/60{border-color:rgba(168,85,247,.6)}.border-purple-500\/70{border-color:rgba(168,85,247,.7)}.border-purple-900\/40{border-color:rgba(88,28,135,.4)}.border-rose-500\/20{border-color:rgba(244,63,94,.2)}.border-rose-500\/40{border-color:rgba(244,63,94,.4)}.border-rose-500\/50{border-color:rgba(244,63,94,.5)}.border-sky-500\/40{border-color:rgba(14,165,233,.4)}.border-sky-500\/50{border-color:rgba(14,165,233,.5)}.border-slate-600{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity,1))}.border-slate-700{--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.border-slate-700\/60{border-color:rgba(51,65,85,.6)}.border-slate-700\/80{border-color:rgba(51,65,85,.8)}.border-slate-800{--tw-border-opacity:1;border-color:rgb(30 41 59/var(--tw-border-opacity,1))}.border-slate-800\/60{border-color:rgba(30,41,59,.6)}.border-slate-800\/70{border-color:rgba(30,41,59,.7)}.border-slate-800\/80{border-color:rgba(30,41,59,.8)}.border-slate-800\/90{border-color:rgba(30,41,59,.9)}.bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-amber-500\/20{background-color:rgba(245,158,11,.2)}.bg-amber-500\/25{background-color:rgba(245,158,11,.25)}.bg-amber-950{--tw-bg-opacity:1;background-color:rgb(69 26 3/var(--tw-bg-opacity,1))}.bg-amber-950\/20{background-color:rgba(69,26,3,.2)}.bg-amber-950\/30{background-color:rgba(69,26,3,.3)}.bg-amber-950\/40{background-color:rgba(69,26,3,.4)}.bg-amber-950\/80{background-color:rgba(69,26,3,.8)}.bg-blue-950\/70{background-color:rgba(23,37,84,.7)}.bg-blue-950\/80{background-color:rgba(23,37,84,.8)}.bg-cyan-400{--tw-bg-opacity:1;background-color:rgb(34 211 238/var(--tw-bg-opacity,1))}.bg-cyan-500{--tw-bg-opacity:1;background-color:rgb(6 182 212/var(--tw-bg-opacity,1))}.bg-cyan-600{--tw-bg-opacity:1;background-color:rgb(8 145 178/var(--tw-bg-opacity,1))}.bg-cyan-600\/15{background-color:rgba(8,145,178,.15)}.bg-cyan-900\/60{background-color:rgba(22,78,99,.6)}.bg-cyan-950{--tw-bg-opacity:1;background-color:rgb(8 51 68/var(--tw-bg-opacity,1))}.bg-cyan-950\/40{background-color:rgba(8,51,68,.4)}.bg-cyan-950\/70{background-color:rgba(8,51,68,.7)}.bg-cyan-950\/80{background-color:rgba(8,51,68,.8)}.bg-emerald-400{--tw-bg-opacity:1;background-color:rgb(52 211 153/var(--tw-bg-opacity,1))}.bg-emerald-500{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.bg-emerald-500\/10{background-color:rgba(16,185,129,.1)}.bg-emerald-500\/20{background-color:rgba(16,185,129,.2)}.bg-emerald-600{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity,1))}.bg-emerald-900\/60{background-color:rgba(6,78,59,.6)}.bg-emerald-950{--tw-bg-opacity:1;background-color:rgb(2 44 34/var(--tw-bg-opacity,1))}.bg-emerald-950\/40{background-color:rgba(2,44,34,.4)}.bg-emerald-950\/60{background-color:rgba(2,44,34,.6)}.bg-emerald-950\/70{background-color:rgba(2,44,34,.7)}.bg-emerald-950\/80{background-color:rgba(2,44,34,.8)}.bg-indigo-950\/70{background-color:rgba(30,27,75,.7)}.bg-orange-500\/20{background-color:rgba(249,115,22,.2)}.bg-orange-950{--tw-bg-opacity:1;background-color:rgb(67 20 7/var(--tw-bg-opacity,1))}.bg-orange-950\/20{background-color:rgba(67,20,7,.2)}.bg-orange-950\/80{background-color:rgba(67,20,7,.8)}.bg-orange-950\/90{background-color:rgba(67,20,7,.9)}.bg-pink-600\/10{background-color:rgba(219,39,119,.1)}.bg-pink-600\/15{background-color:rgba(219,39,119,.15)}.bg-pink-900\/50{background-color:rgba(131,24,67,.5)}.bg-pink-950\/60{background-color:rgba(80,7,36,.6)}.bg-pink-950\/70{background-color:rgba(80,7,36,.7)}.bg-pink-950\/80{background-color:rgba(80,7,36,.8)}.bg-pink-950\/90{background-color:rgba(80,7,36,.9)}.bg-purple-500{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.bg-purple-500\/10{background-color:rgba(168,85,247,.1)}.bg-purple-600{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.bg-purple-600\/10{background-color:rgba(147,51,234,.1)}.bg-purple-600\/15{background-color:rgba(147,51,234,.15)}.bg-purple-600\/20{background-color:rgba(147,51,234,.2)}.bg-purple-600\/30{background-color:rgba(147,51,234,.3)}.bg-purple-600\/90{background-color:rgba(147,51,234,.9)}.bg-purple-900{--tw-bg-opacity:1;background-color:rgb(88 28 135/var(--tw-bg-opacity,1))}.bg-purple-900\/40{background-color:rgba(88,28,135,.4)}.bg-purple-900\/50{background-color:rgba(88,28,135,.5)}.bg-purple-900\/60{background-color:rgba(88,28,135,.6)}.bg-purple-900\/80{background-color:rgba(88,28,135,.8)}.bg-purple-950{--tw-bg-opacity:1;background-color:rgb(59 7 100/var(--tw-bg-opacity,1))}.bg-purple-950\/40{background-color:rgba(59,7,100,.4)}.bg-purple-950\/50{background-color:rgba(59,7,100,.5)}.bg-purple-950\/60{background-color:rgba(59,7,100,.6)}.bg-purple-950\/70{background-color:rgba(59,7,100,.7)}.bg-purple-950\/80{background-color:rgba(59,7,100,.8)}.bg-rose-500{--tw-bg-opacity:1;background-color:rgb(244 63 94/var(--tw-bg-opacity,1))}.bg-rose-500\/10{background-color:rgba(244,63,94,.1)}.bg-rose-950\/70{background-color:rgba(76,5,25,.7)}.bg-rose-950\/80{background-color:rgba(76,5,25,.8)}.bg-sky-950\/60{background-color:rgba(8,47,73,.6)}.bg-sky-950\/80{background-color:rgba(8,47,73,.8)}.bg-sky-950\/90{background-color:rgba(8,47,73,.9)}.bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.bg-slate-800\/60{background-color:rgba(30,41,59,.6)}.bg-slate-800\/80{background-color:rgba(30,41,59,.8)}.bg-slate-800\/90{background-color:rgba(30,41,59,.9)}.bg-slate-900{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.bg-slate-900\/30{background-color:rgba(15,23,42,.3)}.bg-slate-900\/40{background-color:rgba(15,23,42,.4)}.bg-slate-900\/50{background-color:rgba(15,23,42,.5)}.bg-slate-900\/60{background-color:rgba(15,23,42,.6)}.bg-slate-900\/70{background-color:rgba(15,23,42,.7)}.bg-slate-900\/80{background-color:rgba(15,23,42,.8)}.bg-slate-900\/90{background-color:rgba(15,23,42,.9)}.bg-slate-900\/95{background-color:rgba(15,23,42,.95)}.bg-slate-950{--tw-bg-opacity:1;background-color:rgb(2 6 23/var(--tw-bg-opacity,1))}.bg-slate-950\/30{background-color:rgba(2,6,23,.3)}.bg-slate-950\/40{background-color:rgba(2,6,23,.4)}.bg-slate-950\/50{background-color:rgba(2,6,23,.5)}.bg-slate-950\/60{background-color:rgba(2,6,23,.6)}.bg-slate-950\/70{background-color:rgba(2,6,23,.7)}.bg-slate-950\/80{background-color:rgba(2,6,23,.8)}.bg-slate-950\/85{background-color:rgba(2,6,23,.85)}.bg-slate-950\/90{background-color:rgba(2,6,23,.9)}.bg-slate-950\/95{background-color:rgba(2,6,23,.95)}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-tr{background-image:linear-gradient(to top right,var(--tw-gradient-stops))}.from-amber-300{--tw-gradient-from:#fcd34d var(--tw-gradient-from-position);--tw-gradient-to:rgba(252,211,77,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-400{--tw-gradient-from:#fbbf24 var(--tw-gradient-from-position);--tw-gradient-to:rgba(251,191,36,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-500{--tw-gradient-from:#f59e0b var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-500\/10{--tw-gradient-from:rgba(245,158,11,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-500\/20{--tw-gradient-from:rgba(245,158,11,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-950\/30{--tw-gradient-from:rgba(69,26,3,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(69,26,3,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-950\/40{--tw-gradient-from:rgba(69,26,3,.4) var(--tw-gradient-from-position);--tw-gradient-to:rgba(69,26,3,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-cyan-600{--tw-gradient-from:#0891b2 var(--tw-gradient-from-position);--tw-gradient-to:rgba(8,145,178,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-cyan-950\/50{--tw-gradient-from:rgba(8,51,68,.5) var(--tw-gradient-from-position);--tw-gradient-to:rgba(8,51,68,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-600\/30{--tw-gradient-from:rgba(5,150,105,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(5,150,105,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-950\/50{--tw-gradient-from:rgba(2,44,34,.5) var(--tw-gradient-from-position);--tw-gradient-to:rgba(2,44,34,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-950\/80{--tw-gradient-from:rgba(2,44,34,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(2,44,34,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-950\/90{--tw-gradient-from:rgba(2,44,34,.9) var(--tw-gradient-from-position);--tw-gradient-to:rgba(2,44,34,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-500\/20{--tw-gradient-from:rgba(249,115,22,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(249,115,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-600{--tw-gradient-from:#ea580c var(--tw-gradient-from-position);--tw-gradient-to:rgba(234,88,12,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-pink-400{--tw-gradient-from:#f472b6 var(--tw-gradient-from-position);--tw-gradient-to:rgba(244,114,182,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-pink-500{--tw-gradient-from:#ec4899 var(--tw-gradient-from-position);--tw-gradient-to:rgba(236,72,153,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-pink-600{--tw-gradient-from:#db2777 var(--tw-gradient-from-position);--tw-gradient-to:rgba(219,39,119,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-200{--tw-gradient-from:#e9d5ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(233,213,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-400{--tw-gradient-from:#c084fc var(--tw-gradient-from-position);--tw-gradient-to:rgba(192,132,252,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from:#a855f7 var(--tw-gradient-from-position);--tw-gradient-to:rgba(168,85,247,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-600{--tw-gradient-from:#9333ea var(--tw-gradient-from-position);--tw-gradient-to:rgba(147,51,234,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-600\/30{--tw-gradient-from:rgba(147,51,234,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(147,51,234,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-900\/60{--tw-gradient-from:rgba(88,28,135,.6) var(--tw-gradient-from-position);--tw-gradient-to:rgba(88,28,135,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-950\/40{--tw-gradient-from:rgba(59,7,100,.4) var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,7,100,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-950\/50{--tw-gradient-from:rgba(59,7,100,.5) var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,7,100,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-950\/60{--tw-gradient-from:rgba(59,7,100,.6) var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,7,100,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-950\/70{--tw-gradient-from:rgba(59,7,100,.7) var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,7,100,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-950\/80{--tw-gradient-from:rgba(59,7,100,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,7,100,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-900{--tw-gradient-from:#0f172a var(--tw-gradient-from-position);--tw-gradient-to:rgba(15,23,42,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-amber-500\/20{--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(245,158,11,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-indigo-600\/30{--tw-gradient-to:rgba(79,70,229,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(79,70,229,.3) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-orange-500\/10{--tw-gradient-to:rgba(249,115,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(249,115,22,.1) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-orange-500\/20{--tw-gradient-to:rgba(249,115,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(249,115,22,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-pink-300{--tw-gradient-to:rgba(249,168,212,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#f9a8d4 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-pink-400{--tw-gradient-to:rgba(244,114,182,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#f472b6 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-pink-500{--tw-gradient-to:rgba(236,72,153,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#ec4899 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-purple-300{--tw-gradient-to:rgba(216,180,254,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#d8b4fe var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-purple-600{--tw-gradient-to:rgba(147,51,234,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#9333ea var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-slate-900{--tw-gradient-to:rgba(15,23,42,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#0f172a var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-slate-950{--tw-gradient-to:rgba(2,6,23,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#020617 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-slate-950\/70{--tw-gradient-to:rgba(2,6,23,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(2,6,23,.7) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-white{--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#fff var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-amber-500\/10{--tw-gradient-to:rgba(245,158,11,.1) var(--tw-gradient-to-position)}.to-amber-500\/20{--tw-gradient-to:rgba(245,158,11,.2) var(--tw-gradient-to-position)}.to-amber-600{--tw-gradient-to:#d97706 var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to:#2563eb var(--tw-gradient-to-position)}.to-cyan-200{--tw-gradient-to:#a5f3fc var(--tw-gradient-to-position)}.to-cyan-400{--tw-gradient-to:#22d3ee var(--tw-gradient-to-position)}.to-cyan-600{--tw-gradient-to:#0891b2 var(--tw-gradient-to-position)}.to-cyan-600\/30{--tw-gradient-to:rgba(8,145,178,.3) var(--tw-gradient-to-position)}.to-cyan-950\/80{--tw-gradient-to:rgba(8,51,68,.8) var(--tw-gradient-to-position)}.to-indigo-600{--tw-gradient-to:#4f46e5 var(--tw-gradient-to-position)}.to-indigo-900\/60{--tw-gradient-to:rgba(49,46,129,.6) var(--tw-gradient-to-position)}.to-indigo-950\/30{--tw-gradient-to:rgba(30,27,75,.3) var(--tw-gradient-to-position)}.to-indigo-950\/40{--tw-gradient-to:rgba(30,27,75,.4) var(--tw-gradient-to-position)}.to-indigo-950\/50{--tw-gradient-to:rgba(30,27,75,.5) var(--tw-gradient-to-position)}.to-indigo-950\/60{--tw-gradient-to:rgba(30,27,75,.6) var(--tw-gradient-to-position)}.to-indigo-950\/70{--tw-gradient-to:rgba(30,27,75,.7) var(--tw-gradient-to-position)}.to-orange-400{--tw-gradient-to:#fb923c var(--tw-gradient-to-position)}.to-orange-500{--tw-gradient-to:#f97316 var(--tw-gradient-to-position)}.to-orange-500\/20{--tw-gradient-to:rgba(249,115,22,.2) var(--tw-gradient-to-position)}.to-orange-600{--tw-gradient-to:#ea580c var(--tw-gradient-to-position)}.to-orange-950\/30{--tw-gradient-to:rgba(67,20,7,.3) var(--tw-gradient-to-position)}.to-pink-500\/20{--tw-gradient-to:rgba(236,72,153,.2) var(--tw-gradient-to-position)}.to-purple-300{--tw-gradient-to:#d8b4fe var(--tw-gradient-to-position)}.to-purple-500\/20{--tw-gradient-to:rgba(168,85,247,.2) var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to:#9333ea var(--tw-gradient-to-position)}.to-purple-950\/40{--tw-gradient-to:rgba(59,7,100,.4) var(--tw-gradient-to-position)}.to-slate-900{--tw-gradient-to:#0f172a var(--tw-gradient-to-position)}.to-slate-950{--tw-gradient-to:#020617 var(--tw-gradient-to-position)}.to-teal-600\/30{--tw-gradient-to:rgba(13,148,136,.3) var(--tw-gradient-to-position)}.to-teal-950\/80{--tw-gradient-to:rgba(4,47,46,.8) var(--tw-gradient-to-position)}.to-teal-950\/90{--tw-gradient-to:rgba(4,47,46,.9) var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[2px\]{padding:2px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-10{padding-bottom:2.5rem}.pb-16{padding-bottom:4rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pl-10{padding-left:2.5rem}.pl-14{padding-left:3.5rem}.pl-3{padding-left:.75rem}.pl-3\.5{padding-left:.875rem}.pl-6{padding-left:1.5rem}.pl-8{padding-left:2rem}.pr-1{padding-right:.25rem}.pr-2{padding-right:.5rem}.pr-20{padding-right:5rem}.pr-3{padding-right:.75rem}.pr-3\.5{padding-right:.875rem}.pr-4{padding-right:1rem}.pt-1{padding-top:.25rem}.pt-10{padding-top:2.5rem}.pt-12{padding-top:3rem}.pt-2{padding-top:.5rem}.pt-2\.5{padding-top:.625rem}.pt-3{padding-top:.75rem}.pt-3\.5{padding-top:.875rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.font-mono{font-family:JetBrains Mono,monospace}.font-sans{font-family:Plus Jakarta Sans,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.text-amber-200{--tw-text-opacity:1;color:rgb(253 230 138/var(--tw-text-opacity,1))}.text-amber-200\/90{color:hsla(48,97%,77%,.9)}.text-amber-300{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.text-amber-300\/80{color:rgba(252,211,77,.8)}.text-amber-400{--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.text-blue-200{--tw-text-opacity:1;color:rgb(191 219 254/var(--tw-text-opacity,1))}.text-blue-300{--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.text-cyan-200{--tw-text-opacity:1;color:rgb(165 243 252/var(--tw-text-opacity,1))}.text-cyan-300{--tw-text-opacity:1;color:rgb(103 232 249/var(--tw-text-opacity,1))}.text-cyan-400{--tw-text-opacity:1;color:rgb(34 211 238/var(--tw-text-opacity,1))}.text-cyan-400\/90{color:rgba(34,211,238,.9)}.text-emerald-200{--tw-text-opacity:1;color:rgb(167 243 208/var(--tw-text-opacity,1))}.text-emerald-300{--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity,1))}.text-emerald-400{--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.text-indigo-200{--tw-text-opacity:1;color:rgb(199 210 254/var(--tw-text-opacity,1))}.text-orange-200{--tw-text-opacity:1;color:rgb(254 215 170/var(--tw-text-opacity,1))}.text-orange-300{--tw-text-opacity:1;color:rgb(253 186 116/var(--tw-text-opacity,1))}.text-orange-400{--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity,1))}.text-pink-200{--tw-text-opacity:1;color:rgb(251 207 232/var(--tw-text-opacity,1))}.text-pink-300{--tw-text-opacity:1;color:rgb(249 168 212/var(--tw-text-opacity,1))}.text-pink-400{--tw-text-opacity:1;color:rgb(244 114 182/var(--tw-text-opacity,1))}.text-purple-200{--tw-text-opacity:1;color:rgb(233 213 255/var(--tw-text-opacity,1))}.text-purple-200\/80{color:rgba(233,213,255,.8)}.text-purple-300{--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity,1))}.text-purple-400{--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.text-purple-400\/90{color:rgba(192,132,252,.9)}.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity,1))}.text-rose-200{--tw-text-opacity:1;color:rgb(254 205 211/var(--tw-text-opacity,1))}.text-rose-300{--tw-text-opacity:1;color:rgb(253 164 175/var(--tw-text-opacity,1))}.text-rose-400{--tw-text-opacity:1;color:rgb(251 113 133/var(--tw-text-opacity,1))}.text-sky-200{--tw-text-opacity:1;color:rgb(186 230 253/var(--tw-text-opacity,1))}.text-sky-300{--tw-text-opacity:1;color:rgb(125 211 252/var(--tw-text-opacity,1))}.text-slate-100{--tw-text-opacity:1;color:rgb(241 245 249/var(--tw-text-opacity,1))}.text-slate-200{--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.text-slate-300{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.text-slate-950{--tw-text-opacity:1;color:rgb(2 6 23/var(--tw-text-opacity,1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.placeholder-slate-400::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(148 163 184/var(--tw-placeholder-opacity,1))}.placeholder-slate-400::placeholder{--tw-placeholder-opacity:1;color:rgb(148 163 184/var(--tw-placeholder-opacity,1))}.placeholder-slate-500::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(100 116 139/var(--tw-placeholder-opacity,1))}.placeholder-slate-500::placeholder{--tw-placeholder-opacity:1;color:rgb(100 116 139/var(--tw-placeholder-opacity,1))}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-30{opacity:.3}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-2xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow-inner,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-amber-500\/10{--tw-shadow-color:rgba(245,158,11,.1);--tw-shadow:var(--tw-shadow-colored)}.shadow-amber-500\/20{--tw-shadow-color:rgba(245,158,11,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-cyan-600\/25{--tw-shadow-color:rgba(8,145,178,.25);--tw-shadow:var(--tw-shadow-colored)}.shadow-cyan-600\/30{--tw-shadow-color:rgba(8,145,178,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-cyan-950\/70{--tw-shadow-color:rgba(8,51,68,.7);--tw-shadow:var(--tw-shadow-colored)}.shadow-emerald-500\/20{--tw-shadow-color:rgba(16,185,129,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-emerald-600\/20{--tw-shadow-color:rgba(5,150,105,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-emerald-600\/30{--tw-shadow-color:rgba(5,150,105,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-orange-500\/20{--tw-shadow-color:rgba(249,115,22,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-orange-600\/25{--tw-shadow-color:rgba(234,88,12,.25);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-500\/20{--tw-shadow-color:rgba(168,85,247,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-500\/25{--tw-shadow-color:rgba(168,85,247,.25);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-500\/30{--tw-shadow-color:rgba(168,85,247,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-600\/20{--tw-shadow-color:rgba(147,51,234,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-600\/25{--tw-shadow-color:rgba(147,51,234,.25);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-600\/30{--tw-shadow-color:rgba(147,51,234,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-900\/20{--tw-shadow-color:rgba(88,28,135,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-900\/30{--tw-shadow-color:rgba(88,28,135,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-900\/40{--tw-shadow-color:rgba(88,28,135,.4);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-950\/20{--tw-shadow-color:rgba(59,7,100,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-950\/30{--tw-shadow-color:rgba(59,7,100,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-950\/60{--tw-shadow-color:rgba(59,7,100,.6);--tw-shadow:var(--tw-shadow-colored)}.blur{--tw-blur:blur(8px)}.blur,.blur-2xl{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-2xl{--tw-blur:blur(40px)}.blur-3xl{--tw-blur:blur(64px)}.blur-3xl,.blur-\[100px\]{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-\[100px\]{--tw-blur:blur(100px)}.blur-\[120px\]{--tw-blur:blur(120px)}.blur-\[120px\],.blur-xl{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-xl{--tw-blur:blur(24px)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur:blur(8px)}.backdrop-blur,.backdrop-blur-2xl{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-2xl{--tw-backdrop-blur:blur(40px)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-md,.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.backdrop-blur-xl{--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-1000{transition-duration:1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.selection\:bg-purple-500 ::-moz-selection{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.selection\:bg-purple-500 ::selection{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.selection\:bg-purple-600 ::-moz-selection{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.selection\:bg-purple-600 ::selection{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.selection\:text-white ::-moz-selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:text-white ::selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:bg-purple-500::-moz-selection{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.selection\:bg-purple-500::selection{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.selection\:bg-purple-600::-moz-selection{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.selection\:bg-purple-600::selection{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.selection\:text-white::-moz-selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:text-white::selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:-translate-y-0\.5:hover{--tw-translate-y:-0.125rem}.hover\:-translate-y-0\.5:hover,.hover\:scale-105:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05}.hover\:border-amber-400:hover{--tw-border-opacity:1;border-color:rgb(251 191 36/var(--tw-border-opacity,1))}.hover\:border-amber-500\/40:hover{border-color:rgba(245,158,11,.4)}.hover\:border-amber-500\/50:hover{border-color:rgba(245,158,11,.5)}.hover\:border-cyan-400:hover{--tw-border-opacity:1;border-color:rgb(34 211 238/var(--tw-border-opacity,1))}.hover\:border-cyan-500\/40:hover{border-color:rgba(6,182,212,.4)}.hover\:border-cyan-500\/50:hover{border-color:rgba(6,182,212,.5)}.hover\:border-emerald-400:hover{--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity,1))}.hover\:border-emerald-500\/50:hover{border-color:rgba(16,185,129,.5)}.hover\:border-purple-400:hover{--tw-border-opacity:1;border-color:rgb(192 132 252/var(--tw-border-opacity,1))}.hover\:border-purple-500:hover{--tw-border-opacity:1;border-color:rgb(168 85 247/var(--tw-border-opacity,1))}.hover\:border-purple-500\/40:hover{border-color:rgba(168,85,247,.4)}.hover\:border-purple-500\/50:hover{border-color:rgba(168,85,247,.5)}.hover\:border-purple-500\/60:hover{border-color:rgba(168,85,247,.6)}.hover\:border-sky-500\/50:hover{border-color:rgba(14,165,233,.5)}.hover\:border-slate-600:hover{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity,1))}.hover\:border-slate-700:hover{--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.hover\:bg-amber-900:hover{--tw-bg-opacity:1;background-color:rgb(120 53 15/var(--tw-bg-opacity,1))}.hover\:bg-blue-900:hover{--tw-bg-opacity:1;background-color:rgb(30 58 138/var(--tw-bg-opacity,1))}.hover\:bg-blue-950\/60:hover{background-color:rgba(23,37,84,.6)}.hover\:bg-cyan-500:hover{--tw-bg-opacity:1;background-color:rgb(6 182 212/var(--tw-bg-opacity,1))}.hover\:bg-cyan-900:hover{--tw-bg-opacity:1;background-color:rgb(22 78 99/var(--tw-bg-opacity,1))}.hover\:bg-emerald-500:hover{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.hover\:bg-emerald-900:hover{--tw-bg-opacity:1;background-color:rgb(6 78 59/var(--tw-bg-opacity,1))}.hover\:bg-indigo-900:hover{--tw-bg-opacity:1;background-color:rgb(49 46 129/var(--tw-bg-opacity,1))}.hover\:bg-indigo-950\/60:hover{background-color:rgba(30,27,75,.6)}.hover\:bg-orange-900:hover{--tw-bg-opacity:1;background-color:rgb(124 45 18/var(--tw-bg-opacity,1))}.hover\:bg-pink-900\/80:hover{background-color:rgba(131,24,67,.8)}.hover\:bg-pink-950\/60:hover{background-color:rgba(80,7,36,.6)}.hover\:bg-purple-500:hover{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.hover\:bg-purple-600:hover{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.hover\:bg-purple-900:hover{--tw-bg-opacity:1;background-color:rgb(88 28 135/var(--tw-bg-opacity,1))}.hover\:bg-purple-900\/70:hover{background-color:rgba(88,28,135,.7)}.hover\:bg-purple-900\/90:hover{background-color:rgba(88,28,135,.9)}.hover\:bg-purple-950:hover{--tw-bg-opacity:1;background-color:rgb(59 7 100/var(--tw-bg-opacity,1))}.hover\:bg-purple-950\/60:hover{background-color:rgba(59,7,100,.6)}.hover\:bg-rose-900:hover{--tw-bg-opacity:1;background-color:rgb(136 19 55/var(--tw-bg-opacity,1))}.hover\:bg-sky-900\/80:hover{background-color:rgba(12,74,110,.8)}.hover\:bg-slate-200:hover{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.hover\:bg-slate-700:hover{--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.hover\:bg-slate-800:hover{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.hover\:bg-slate-800\/40:hover{background-color:rgba(30,41,59,.4)}.hover\:bg-slate-900:hover{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.hover\:from-amber-300:hover{--tw-gradient-from:#fcd34d var(--tw-gradient-from-position);--tw-gradient-to:rgba(252,211,77,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-amber-400:hover{--tw-gradient-from:#fbbf24 var(--tw-gradient-from-position);--tw-gradient-to:rgba(251,191,36,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-amber-500\/20:hover{--tw-gradient-from:rgba(245,158,11,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-amber-500\/30:hover{--tw-gradient-from:rgba(245,158,11,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-cyan-500:hover{--tw-gradient-from:#06b6d4 var(--tw-gradient-from-position);--tw-gradient-to:rgba(6,182,212,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-emerald-600\/50:hover{--tw-gradient-from:rgba(5,150,105,.5) var(--tw-gradient-from-position);--tw-gradient-to:rgba(5,150,105,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-emerald-900:hover{--tw-gradient-from:#064e3b var(--tw-gradient-from-position);--tw-gradient-to:rgba(6,78,59,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-orange-500:hover{--tw-gradient-from:#f97316 var(--tw-gradient-from-position);--tw-gradient-to:rgba(249,115,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-pink-500:hover{--tw-gradient-from:#ec4899 var(--tw-gradient-from-position);--tw-gradient-to:rgba(236,72,153,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-purple-500:hover{--tw-gradient-from:#a855f7 var(--tw-gradient-from-position);--tw-gradient-to:rgba(168,85,247,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-purple-600\/50:hover{--tw-gradient-from:rgba(147,51,234,.5) var(--tw-gradient-from-position);--tw-gradient-to:rgba(147,51,234,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-purple-800\/80:hover{--tw-gradient-from:rgba(107,33,168,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(107,33,168,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:to-amber-500:hover{--tw-gradient-to:#f59e0b var(--tw-gradient-to-position)}.hover\:to-blue-500:hover{--tw-gradient-to:#3b82f6 var(--tw-gradient-to-position)}.hover\:to-cyan-500:hover{--tw-gradient-to:#06b6d4 var(--tw-gradient-to-position)}.hover\:to-cyan-600\/50:hover{--tw-gradient-to:rgba(8,145,178,.5) var(--tw-gradient-to-position)}.hover\:to-indigo-500:hover{--tw-gradient-to:#6366f1 var(--tw-gradient-to-position)}.hover\:to-indigo-800\/80:hover{--tw-gradient-to:rgba(55,48,163,.8) var(--tw-gradient-to-position)}.hover\:to-orange-300:hover{--tw-gradient-to:#fdba74 var(--tw-gradient-to-position)}.hover\:to-orange-400:hover{--tw-gradient-to:#fb923c var(--tw-gradient-to-position)}.hover\:to-orange-500:hover{--tw-gradient-to:#f97316 var(--tw-gradient-to-position)}.hover\:to-orange-500\/20:hover{--tw-gradient-to:rgba(249,115,22,.2) var(--tw-gradient-to-position)}.hover\:to-orange-500\/30:hover{--tw-gradient-to:rgba(249,115,22,.3) var(--tw-gradient-to-position)}.hover\:to-purple-500:hover{--tw-gradient-to:#a855f7 var(--tw-gradient-to-position)}.hover\:to-teal-600\/50:hover{--tw-gradient-to:rgba(13,148,136,.5) var(--tw-gradient-to-position)}.hover\:to-teal-900:hover{--tw-gradient-to:#134e4a var(--tw-gradient-to-position)}.hover\:text-amber-300:hover{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.hover\:text-cyan-200:hover{--tw-text-opacity:1;color:rgb(165 243 252/var(--tw-text-opacity,1))}.hover\:text-cyan-300:hover{--tw-text-opacity:1;color:rgb(103 232 249/var(--tw-text-opacity,1))}.hover\:text-emerald-300:hover{--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity,1))}.hover\:text-emerald-400:hover{--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.hover\:text-pink-300:hover{--tw-text-opacity:1;color:rgb(249 168 212/var(--tw-text-opacity,1))}.hover\:text-purple-300:hover{--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity,1))}.hover\:text-purple-400:hover{--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.hover\:text-rose-300:hover{--tw-text-opacity:1;color:rgb(253 164 175/var(--tw-text-opacity,1))}.hover\:text-rose-400:hover{--tw-text-opacity:1;color:rgb(251 113 133/var(--tw-text-opacity,1))}.hover\:text-slate-200:hover{--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.hover\:text-slate-300:hover{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.hover\:text-slate-400:hover{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-95:hover{opacity:.95}.focus\:border-cyan-500:focus{--tw-border-opacity:1;border-color:rgb(6 182 212/var(--tw-border-opacity,1))}.focus\:border-purple-400:focus{--tw-border-opacity:1;border-color:rgb(192 132 252/var(--tw-border-opacity,1))}.focus\:border-purple-500:focus{--tw-border-opacity:1;border-color:rgb(168 85 247/var(--tw-border-opacity,1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-1:focus,.focus\:ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-purple-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(192 132 252/var(--tw-ring-opacity,1))}.focus\:ring-purple-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(168 85 247/var(--tw-ring-opacity,1))}.focus\:ring-purple-500\/50:focus{--tw-ring-color:rgba(168,85,247,.5)}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.group[open] .group-open\:rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:visible{visibility:visible}.group:hover .group-hover\:-translate-y-0\.5{--tw-translate-y:-0.125rem}.group:hover .group-hover\:-translate-y-0\.5,.group:hover .group-hover\:translate-x-0\.5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-0\.5{--tw-translate-x:0.125rem}.group:hover .group-hover\:translate-x-1{--tw-translate-x:0.25rem}.group:hover .group-hover\:rotate-180,.group:hover .group-hover\:translate-x-1{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:rotate-180{--tw-rotate:180deg}.group:hover .group-hover\:scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:text-amber-300{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-cyan-300{--tw-text-opacity:1;color:rgb(103 232 249/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-emerald-300{--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-pink-300{--tw-text-opacity:1;color:rgb(249 168 212/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-purple-300{--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity,1))}.group:hover .group-hover\:opacity-100{opacity:1}@media (min-width:640px){.sm\:block{display:block}.sm\:inline-block{display:inline-block}.sm\:inline{display:inline}.sm\:inline-flex{display:inline-flex}.sm\:w-64{width:16rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:self-auto{align-self:auto}.sm\:p-4{padding:1rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:p-8{padding:2rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-12{padding-top:3rem;padding-bottom:3rem}.sm\:pb-0{padding-bottom:0}.sm\:text-left{text-align:left}.sm\:text-right{text-align:right}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-6xl{font-size:3.75rem;line-height:1}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:768px){.md\:block{display:block}.md\:inline{display:inline}.md\:flex{display:flex}.md\:hidden{display:none}.md\:w-auto{width:auto}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-end{justify-content:flex-end}.md\:justify-between{justify-content:space-between}.md\:divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:0;border-right-width:calc(1px*var(--tw-divide-x-reverse));border-left-width:calc(1px*(1 - var(--tw-divide-x-reverse)))}.md\:divide-y-0>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(0px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(0px*var(--tw-divide-y-reverse))}.md\:py-16{padding-top:4rem;padding-bottom:4rem}.md\:pl-0{padding-left:0}.md\:pl-6{padding-left:1.5rem}.md\:pt-0{padding-top:0}.md\:text-right{text-align:right}}@media (min-width:1024px){.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:inline-flex{display:inline-flex}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:text-6xl{font-size:3.75rem;line-height:1}}@media (min-width:1280px){.xl\:flex{display:flex}.xl\:hidden{display:none}}@media print{.print\:hidden{display:none}.print\:divide-slate-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(226 232 240/var(--tw-divide-opacity,1))}.print\:border-none{border-style:none}.print\:border-emerald-600{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity,1))}.print\:border-slate-300{--tw-border-opacity:1;border-color:rgb(203 213 225/var(--tw-border-opacity,1))}.print\:bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.print\:bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.print\:bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.print\:p-0{padding:0}.print\:text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.print\:text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.print\:text-emerald-800{--tw-text-opacity:1;color:rgb(6 95 70/var(--tw-text-opacity,1))}.print\:text-purple-700{--tw-text-opacity:1;color:rgb(126 34 206/var(--tw-text-opacity,1))}.print\:text-purple-800{--tw-text-opacity:1;color:rgb(107 33 168/var(--tw-text-opacity,1))}.print\:text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.print\:text-slate-800{--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1))}.print\:shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}} \ No newline at end of file +*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Plus Jakarta Sans,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:JetBrains Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{top:0;bottom:0}.-left-32{left:-8rem}.-right-12{right:-3rem}.-right-16{right:-4rem}.-right-32{right:-8rem}.-right-8{right:-2rem}.-top-12{top:-3rem}.-top-16{top:-4rem}.-top-3{top:-.75rem}.-top-32{top:-8rem}.-top-8{top:-2rem}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-1\/2{left:50%}.left-3\.5{left:.875rem}.right-0{right:0}.right-1\.5{right:.375rem}.right-3\.5{right:.875rem}.right-5{right:1.25rem}.right-6{right:1.5rem}.top-0{top:0}.top-1\/2{top:50%}.top-5{top:1.25rem}.top-\[1200px\]{top:1200px}.top-\[500px\]{top:500px}.top-\[600px\]{top:600px}.-z-10{z-index:-10}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-8{margin-top:2rem;margin-bottom:2rem}.my-auto{margin-top:auto;margin-bottom:auto}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-14{margin-bottom:3.5rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-20{margin-bottom:5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-3\.5{margin-top:.875rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.\!grid{display:grid!important}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[400px\]{height:400px}.h-\[450px\]{height:450px}.h-\[500px\]{height:500px}.h-full{height:100%}.max-h-24{max-height:6rem}.max-h-52{max-height:13rem}.max-h-\[340px\]{max-height:340px}.max-h-\[380px\]{max-height:380px}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.min-h-\[120px\]{min-height:120px}.min-h-\[220px\]{min-height:220px}.min-h-\[40px\]{min-height:40px}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-64{width:16rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[400px\]{width:400px}.w-\[500px\]{width:500px}.w-\[800px\]{width:800px}.w-\[94\%\]{width:94%}.w-full{width:100%}.min-w-0{min-width:0}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[150px\]{max-width:150px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.translate-y-0{--tw-translate-y:0px}.translate-y-0,.translate-y-20{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-20{--tw-translate-y:5rem}.translate-y-4{--tw-translate-y:1rem}.scale-105,.translate-y-4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05}.scale-95{--tw-scale-x:.95;--tw-scale-y:.95}.scale-95,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.resize{resize:both}.scroll-mt-24{scroll-margin-top:6rem}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-y-1{row-gap:.25rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}.space-x-1\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.375rem*var(--tw-space-x-reverse));margin-left:calc(.375rem*(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem*var(--tw-space-x-reverse));margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))}.space-x-2\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.625rem*var(--tw-space-x-reverse));margin-left:calc(.625rem*(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem*var(--tw-space-x-reverse));margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))}.space-x-3\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.875rem*var(--tw-space-x-reverse));margin-left:calc(.875rem*(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem*var(--tw-space-x-reverse));margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1.5rem*var(--tw-space-x-reverse));margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem*var(--tw-space-y-reverse))}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.625rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-3\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.875rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.875rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-slate-800>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(30 41 59/var(--tw-divide-opacity,1))}.divide-slate-800\/60>:not([hidden])~:not([hidden]){border-color:rgba(30,41,59,.6)}.divide-slate-800\/80>:not([hidden])~:not([hidden]){border-color:rgba(30,41,59,.8)}.self-start{align-self:flex-start}.self-center{align-self:center}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.scroll-smooth{scroll-behavior:smooth}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[10px\]{border-radius:10px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-amber-400{--tw-border-opacity:1;border-color:rgb(251 191 36/var(--tw-border-opacity,1))}.border-amber-500\/30{border-color:rgba(245,158,11,.3)}.border-amber-500\/40{border-color:rgba(245,158,11,.4)}.border-amber-500\/50{border-color:rgba(245,158,11,.5)}.border-amber-500\/60{border-color:rgba(245,158,11,.6)}.border-blue-500\/30{border-color:rgba(59,130,246,.3)}.border-blue-500\/50{border-color:rgba(59,130,246,.5)}.border-cyan-400{--tw-border-opacity:1;border-color:rgb(34 211 238/var(--tw-border-opacity,1))}.border-cyan-500\/30{border-color:rgba(6,182,212,.3)}.border-cyan-500\/40{border-color:rgba(6,182,212,.4)}.border-cyan-500\/50{border-color:rgba(6,182,212,.5)}.border-emerald-400{--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity,1))}.border-emerald-400\/60{border-color:rgba(52,211,153,.6)}.border-emerald-500\/20{border-color:rgba(16,185,129,.2)}.border-emerald-500\/30{border-color:rgba(16,185,129,.3)}.border-emerald-500\/40{border-color:rgba(16,185,129,.4)}.border-emerald-500\/50{border-color:rgba(16,185,129,.5)}.border-emerald-500\/60{border-color:rgba(16,185,129,.6)}.border-indigo-500\/50{border-color:rgba(99,102,241,.5)}.border-orange-500\/30{border-color:rgba(249,115,22,.3)}.border-orange-500\/40{border-color:rgba(249,115,22,.4)}.border-orange-500\/50{border-color:rgba(249,115,22,.5)}.border-pink-400{--tw-border-opacity:1;border-color:rgb(244 114 182/var(--tw-border-opacity,1))}.border-pink-500\/40{border-color:rgba(236,72,153,.4)}.border-pink-500\/50{border-color:rgba(236,72,153,.5)}.border-purple-400{--tw-border-opacity:1;border-color:rgb(192 132 252/var(--tw-border-opacity,1))}.border-purple-400\/50{border-color:rgba(192,132,252,.5)}.border-purple-400\/70{border-color:rgba(192,132,252,.7)}.border-purple-500{--tw-border-opacity:1;border-color:rgb(168 85 247/var(--tw-border-opacity,1))}.border-purple-500\/20{border-color:rgba(168,85,247,.2)}.border-purple-500\/30{border-color:rgba(168,85,247,.3)}.border-purple-500\/40{border-color:rgba(168,85,247,.4)}.border-purple-500\/50{border-color:rgba(168,85,247,.5)}.border-purple-500\/60{border-color:rgba(168,85,247,.6)}.border-purple-500\/70{border-color:rgba(168,85,247,.7)}.border-purple-900\/40{border-color:rgba(88,28,135,.4)}.border-rose-500\/20{border-color:rgba(244,63,94,.2)}.border-rose-500\/40{border-color:rgba(244,63,94,.4)}.border-rose-500\/50{border-color:rgba(244,63,94,.5)}.border-sky-500\/40{border-color:rgba(14,165,233,.4)}.border-sky-500\/50{border-color:rgba(14,165,233,.5)}.border-slate-600{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity,1))}.border-slate-700{--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.border-slate-700\/60{border-color:rgba(51,65,85,.6)}.border-slate-700\/80{border-color:rgba(51,65,85,.8)}.border-slate-800{--tw-border-opacity:1;border-color:rgb(30 41 59/var(--tw-border-opacity,1))}.border-slate-800\/60{border-color:rgba(30,41,59,.6)}.border-slate-800\/70{border-color:rgba(30,41,59,.7)}.border-slate-800\/80{border-color:rgba(30,41,59,.8)}.border-slate-800\/90{border-color:rgba(30,41,59,.9)}.bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-amber-500\/20{background-color:rgba(245,158,11,.2)}.bg-amber-500\/25{background-color:rgba(245,158,11,.25)}.bg-amber-950{--tw-bg-opacity:1;background-color:rgb(69 26 3/var(--tw-bg-opacity,1))}.bg-amber-950\/20{background-color:rgba(69,26,3,.2)}.bg-amber-950\/30{background-color:rgba(69,26,3,.3)}.bg-amber-950\/40{background-color:rgba(69,26,3,.4)}.bg-amber-950\/80{background-color:rgba(69,26,3,.8)}.bg-blue-950\/70{background-color:rgba(23,37,84,.7)}.bg-blue-950\/80{background-color:rgba(23,37,84,.8)}.bg-cyan-400{--tw-bg-opacity:1;background-color:rgb(34 211 238/var(--tw-bg-opacity,1))}.bg-cyan-500{--tw-bg-opacity:1;background-color:rgb(6 182 212/var(--tw-bg-opacity,1))}.bg-cyan-600{--tw-bg-opacity:1;background-color:rgb(8 145 178/var(--tw-bg-opacity,1))}.bg-cyan-600\/15{background-color:rgba(8,145,178,.15)}.bg-cyan-900\/60{background-color:rgba(22,78,99,.6)}.bg-cyan-950{--tw-bg-opacity:1;background-color:rgb(8 51 68/var(--tw-bg-opacity,1))}.bg-cyan-950\/40{background-color:rgba(8,51,68,.4)}.bg-cyan-950\/70{background-color:rgba(8,51,68,.7)}.bg-cyan-950\/80{background-color:rgba(8,51,68,.8)}.bg-emerald-400{--tw-bg-opacity:1;background-color:rgb(52 211 153/var(--tw-bg-opacity,1))}.bg-emerald-500{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.bg-emerald-500\/10{background-color:rgba(16,185,129,.1)}.bg-emerald-500\/20{background-color:rgba(16,185,129,.2)}.bg-emerald-600{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity,1))}.bg-emerald-900\/60{background-color:rgba(6,78,59,.6)}.bg-emerald-950{--tw-bg-opacity:1;background-color:rgb(2 44 34/var(--tw-bg-opacity,1))}.bg-emerald-950\/40{background-color:rgba(2,44,34,.4)}.bg-emerald-950\/60{background-color:rgba(2,44,34,.6)}.bg-emerald-950\/70{background-color:rgba(2,44,34,.7)}.bg-emerald-950\/80{background-color:rgba(2,44,34,.8)}.bg-indigo-950\/70{background-color:rgba(30,27,75,.7)}.bg-orange-500\/20{background-color:rgba(249,115,22,.2)}.bg-orange-950{--tw-bg-opacity:1;background-color:rgb(67 20 7/var(--tw-bg-opacity,1))}.bg-orange-950\/20{background-color:rgba(67,20,7,.2)}.bg-orange-950\/80{background-color:rgba(67,20,7,.8)}.bg-orange-950\/90{background-color:rgba(67,20,7,.9)}.bg-pink-600\/10{background-color:rgba(219,39,119,.1)}.bg-pink-600\/15{background-color:rgba(219,39,119,.15)}.bg-pink-900\/50{background-color:rgba(131,24,67,.5)}.bg-pink-950\/60{background-color:rgba(80,7,36,.6)}.bg-pink-950\/70{background-color:rgba(80,7,36,.7)}.bg-pink-950\/80{background-color:rgba(80,7,36,.8)}.bg-pink-950\/90{background-color:rgba(80,7,36,.9)}.bg-purple-500{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.bg-purple-500\/10{background-color:rgba(168,85,247,.1)}.bg-purple-600{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.bg-purple-600\/10{background-color:rgba(147,51,234,.1)}.bg-purple-600\/15{background-color:rgba(147,51,234,.15)}.bg-purple-600\/20{background-color:rgba(147,51,234,.2)}.bg-purple-600\/30{background-color:rgba(147,51,234,.3)}.bg-purple-600\/90{background-color:rgba(147,51,234,.9)}.bg-purple-900{--tw-bg-opacity:1;background-color:rgb(88 28 135/var(--tw-bg-opacity,1))}.bg-purple-900\/40{background-color:rgba(88,28,135,.4)}.bg-purple-900\/50{background-color:rgba(88,28,135,.5)}.bg-purple-900\/60{background-color:rgba(88,28,135,.6)}.bg-purple-900\/80{background-color:rgba(88,28,135,.8)}.bg-purple-950{--tw-bg-opacity:1;background-color:rgb(59 7 100/var(--tw-bg-opacity,1))}.bg-purple-950\/40{background-color:rgba(59,7,100,.4)}.bg-purple-950\/50{background-color:rgba(59,7,100,.5)}.bg-purple-950\/60{background-color:rgba(59,7,100,.6)}.bg-purple-950\/70{background-color:rgba(59,7,100,.7)}.bg-purple-950\/80{background-color:rgba(59,7,100,.8)}.bg-rose-500{--tw-bg-opacity:1;background-color:rgb(244 63 94/var(--tw-bg-opacity,1))}.bg-rose-500\/10{background-color:rgba(244,63,94,.1)}.bg-rose-950\/70{background-color:rgba(76,5,25,.7)}.bg-rose-950\/80{background-color:rgba(76,5,25,.8)}.bg-sky-950\/60{background-color:rgba(8,47,73,.6)}.bg-sky-950\/80{background-color:rgba(8,47,73,.8)}.bg-sky-950\/90{background-color:rgba(8,47,73,.9)}.bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.bg-slate-800\/60{background-color:rgba(30,41,59,.6)}.bg-slate-800\/80{background-color:rgba(30,41,59,.8)}.bg-slate-800\/90{background-color:rgba(30,41,59,.9)}.bg-slate-900{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.bg-slate-900\/30{background-color:rgba(15,23,42,.3)}.bg-slate-900\/40{background-color:rgba(15,23,42,.4)}.bg-slate-900\/50{background-color:rgba(15,23,42,.5)}.bg-slate-900\/60{background-color:rgba(15,23,42,.6)}.bg-slate-900\/70{background-color:rgba(15,23,42,.7)}.bg-slate-900\/80{background-color:rgba(15,23,42,.8)}.bg-slate-900\/90{background-color:rgba(15,23,42,.9)}.bg-slate-900\/95{background-color:rgba(15,23,42,.95)}.bg-slate-950{--tw-bg-opacity:1;background-color:rgb(2 6 23/var(--tw-bg-opacity,1))}.bg-slate-950\/30{background-color:rgba(2,6,23,.3)}.bg-slate-950\/40{background-color:rgba(2,6,23,.4)}.bg-slate-950\/50{background-color:rgba(2,6,23,.5)}.bg-slate-950\/60{background-color:rgba(2,6,23,.6)}.bg-slate-950\/70{background-color:rgba(2,6,23,.7)}.bg-slate-950\/80{background-color:rgba(2,6,23,.8)}.bg-slate-950\/85{background-color:rgba(2,6,23,.85)}.bg-slate-950\/90{background-color:rgba(2,6,23,.9)}.bg-slate-950\/95{background-color:rgba(2,6,23,.95)}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-tr{background-image:linear-gradient(to top right,var(--tw-gradient-stops))}.from-amber-300{--tw-gradient-from:#fcd34d var(--tw-gradient-from-position);--tw-gradient-to:rgba(252,211,77,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-400{--tw-gradient-from:#fbbf24 var(--tw-gradient-from-position);--tw-gradient-to:rgba(251,191,36,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-500{--tw-gradient-from:#f59e0b var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-500\/10{--tw-gradient-from:rgba(245,158,11,.1) var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-500\/20{--tw-gradient-from:rgba(245,158,11,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-950\/30{--tw-gradient-from:rgba(69,26,3,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(69,26,3,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-amber-950\/40{--tw-gradient-from:rgba(69,26,3,.4) var(--tw-gradient-from-position);--tw-gradient-to:rgba(69,26,3,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-cyan-600{--tw-gradient-from:#0891b2 var(--tw-gradient-from-position);--tw-gradient-to:rgba(8,145,178,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-cyan-950\/50{--tw-gradient-from:rgba(8,51,68,.5) var(--tw-gradient-from-position);--tw-gradient-to:rgba(8,51,68,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-600\/30{--tw-gradient-from:rgba(5,150,105,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(5,150,105,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-950\/50{--tw-gradient-from:rgba(2,44,34,.5) var(--tw-gradient-from-position);--tw-gradient-to:rgba(2,44,34,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-950\/80{--tw-gradient-from:rgba(2,44,34,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(2,44,34,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-950\/90{--tw-gradient-from:rgba(2,44,34,.9) var(--tw-gradient-from-position);--tw-gradient-to:rgba(2,44,34,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-500\/20{--tw-gradient-from:rgba(249,115,22,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(249,115,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-600{--tw-gradient-from:#ea580c var(--tw-gradient-from-position);--tw-gradient-to:rgba(234,88,12,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-pink-400{--tw-gradient-from:#f472b6 var(--tw-gradient-from-position);--tw-gradient-to:rgba(244,114,182,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-pink-500{--tw-gradient-from:#ec4899 var(--tw-gradient-from-position);--tw-gradient-to:rgba(236,72,153,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-pink-600{--tw-gradient-from:#db2777 var(--tw-gradient-from-position);--tw-gradient-to:rgba(219,39,119,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-200{--tw-gradient-from:#e9d5ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(233,213,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-400{--tw-gradient-from:#c084fc var(--tw-gradient-from-position);--tw-gradient-to:rgba(192,132,252,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from:#a855f7 var(--tw-gradient-from-position);--tw-gradient-to:rgba(168,85,247,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-600{--tw-gradient-from:#9333ea var(--tw-gradient-from-position);--tw-gradient-to:rgba(147,51,234,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-600\/30{--tw-gradient-from:rgba(147,51,234,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(147,51,234,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-900\/60{--tw-gradient-from:rgba(88,28,135,.6) var(--tw-gradient-from-position);--tw-gradient-to:rgba(88,28,135,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-950\/40{--tw-gradient-from:rgba(59,7,100,.4) var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,7,100,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-950\/50{--tw-gradient-from:rgba(59,7,100,.5) var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,7,100,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-950\/60{--tw-gradient-from:rgba(59,7,100,.6) var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,7,100,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-950\/70{--tw-gradient-from:rgba(59,7,100,.7) var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,7,100,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-950\/80{--tw-gradient-from:rgba(59,7,100,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,7,100,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-900{--tw-gradient-from:#0f172a var(--tw-gradient-from-position);--tw-gradient-to:rgba(15,23,42,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-amber-500\/20{--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(245,158,11,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-indigo-600\/30{--tw-gradient-to:rgba(79,70,229,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(79,70,229,.3) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-orange-500\/10{--tw-gradient-to:rgba(249,115,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(249,115,22,.1) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-orange-500\/20{--tw-gradient-to:rgba(249,115,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(249,115,22,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-pink-300{--tw-gradient-to:rgba(249,168,212,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#f9a8d4 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-pink-400{--tw-gradient-to:rgba(244,114,182,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#f472b6 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-pink-500{--tw-gradient-to:rgba(236,72,153,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#ec4899 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-purple-300{--tw-gradient-to:rgba(216,180,254,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#d8b4fe var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-purple-600{--tw-gradient-to:rgba(147,51,234,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#9333ea var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-slate-900{--tw-gradient-to:rgba(15,23,42,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#0f172a var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-slate-950{--tw-gradient-to:rgba(2,6,23,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#020617 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-slate-950\/70{--tw-gradient-to:rgba(2,6,23,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(2,6,23,.7) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-white{--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#fff var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-amber-500\/10{--tw-gradient-to:rgba(245,158,11,.1) var(--tw-gradient-to-position)}.to-amber-500\/20{--tw-gradient-to:rgba(245,158,11,.2) var(--tw-gradient-to-position)}.to-amber-600{--tw-gradient-to:#d97706 var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to:#2563eb var(--tw-gradient-to-position)}.to-cyan-200{--tw-gradient-to:#a5f3fc var(--tw-gradient-to-position)}.to-cyan-400{--tw-gradient-to:#22d3ee var(--tw-gradient-to-position)}.to-cyan-600{--tw-gradient-to:#0891b2 var(--tw-gradient-to-position)}.to-cyan-600\/30{--tw-gradient-to:rgba(8,145,178,.3) var(--tw-gradient-to-position)}.to-cyan-950\/80{--tw-gradient-to:rgba(8,51,68,.8) var(--tw-gradient-to-position)}.to-indigo-600{--tw-gradient-to:#4f46e5 var(--tw-gradient-to-position)}.to-indigo-900\/60{--tw-gradient-to:rgba(49,46,129,.6) var(--tw-gradient-to-position)}.to-indigo-950\/30{--tw-gradient-to:rgba(30,27,75,.3) var(--tw-gradient-to-position)}.to-indigo-950\/40{--tw-gradient-to:rgba(30,27,75,.4) var(--tw-gradient-to-position)}.to-indigo-950\/50{--tw-gradient-to:rgba(30,27,75,.5) var(--tw-gradient-to-position)}.to-indigo-950\/60{--tw-gradient-to:rgba(30,27,75,.6) var(--tw-gradient-to-position)}.to-indigo-950\/70{--tw-gradient-to:rgba(30,27,75,.7) var(--tw-gradient-to-position)}.to-orange-400{--tw-gradient-to:#fb923c var(--tw-gradient-to-position)}.to-orange-500{--tw-gradient-to:#f97316 var(--tw-gradient-to-position)}.to-orange-500\/20{--tw-gradient-to:rgba(249,115,22,.2) var(--tw-gradient-to-position)}.to-orange-600{--tw-gradient-to:#ea580c var(--tw-gradient-to-position)}.to-orange-950\/30{--tw-gradient-to:rgba(67,20,7,.3) var(--tw-gradient-to-position)}.to-pink-500\/20{--tw-gradient-to:rgba(236,72,153,.2) var(--tw-gradient-to-position)}.to-purple-300{--tw-gradient-to:#d8b4fe var(--tw-gradient-to-position)}.to-purple-500\/20{--tw-gradient-to:rgba(168,85,247,.2) var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to:#9333ea var(--tw-gradient-to-position)}.to-purple-950\/40{--tw-gradient-to:rgba(59,7,100,.4) var(--tw-gradient-to-position)}.to-slate-900{--tw-gradient-to:#0f172a var(--tw-gradient-to-position)}.to-slate-950{--tw-gradient-to:#020617 var(--tw-gradient-to-position)}.to-teal-600\/30{--tw-gradient-to:rgba(13,148,136,.3) var(--tw-gradient-to-position)}.to-teal-950\/80{--tw-gradient-to:rgba(4,47,46,.8) var(--tw-gradient-to-position)}.to-teal-950\/90{--tw-gradient-to:rgba(4,47,46,.9) var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[2px\]{padding:2px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-10{padding-bottom:2.5rem}.pb-16{padding-bottom:4rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pl-10{padding-left:2.5rem}.pl-14{padding-left:3.5rem}.pl-3{padding-left:.75rem}.pl-3\.5{padding-left:.875rem}.pl-6{padding-left:1.5rem}.pl-8{padding-left:2rem}.pr-1{padding-right:.25rem}.pr-2{padding-right:.5rem}.pr-20{padding-right:5rem}.pr-3{padding-right:.75rem}.pr-3\.5{padding-right:.875rem}.pr-4{padding-right:1rem}.pt-1{padding-top:.25rem}.pt-10{padding-top:2.5rem}.pt-12{padding-top:3rem}.pt-2{padding-top:.5rem}.pt-2\.5{padding-top:.625rem}.pt-3{padding-top:.75rem}.pt-3\.5{padding-top:.875rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.font-mono{font-family:JetBrains Mono,monospace}.font-sans{font-family:Plus Jakarta Sans,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.text-amber-200{--tw-text-opacity:1;color:rgb(253 230 138/var(--tw-text-opacity,1))}.text-amber-200\/90{color:hsla(48,97%,77%,.9)}.text-amber-300{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.text-amber-300\/80{color:rgba(252,211,77,.8)}.text-amber-400{--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity,1))}.text-blue-200{--tw-text-opacity:1;color:rgb(191 219 254/var(--tw-text-opacity,1))}.text-blue-300{--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.text-cyan-200{--tw-text-opacity:1;color:rgb(165 243 252/var(--tw-text-opacity,1))}.text-cyan-300{--tw-text-opacity:1;color:rgb(103 232 249/var(--tw-text-opacity,1))}.text-cyan-400{--tw-text-opacity:1;color:rgb(34 211 238/var(--tw-text-opacity,1))}.text-cyan-400\/90{color:rgba(34,211,238,.9)}.text-emerald-200{--tw-text-opacity:1;color:rgb(167 243 208/var(--tw-text-opacity,1))}.text-emerald-300{--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity,1))}.text-emerald-400{--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.text-indigo-200{--tw-text-opacity:1;color:rgb(199 210 254/var(--tw-text-opacity,1))}.text-orange-200{--tw-text-opacity:1;color:rgb(254 215 170/var(--tw-text-opacity,1))}.text-orange-300{--tw-text-opacity:1;color:rgb(253 186 116/var(--tw-text-opacity,1))}.text-orange-400{--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity,1))}.text-pink-200{--tw-text-opacity:1;color:rgb(251 207 232/var(--tw-text-opacity,1))}.text-pink-300{--tw-text-opacity:1;color:rgb(249 168 212/var(--tw-text-opacity,1))}.text-pink-400{--tw-text-opacity:1;color:rgb(244 114 182/var(--tw-text-opacity,1))}.text-purple-200{--tw-text-opacity:1;color:rgb(233 213 255/var(--tw-text-opacity,1))}.text-purple-200\/80{color:rgba(233,213,255,.8)}.text-purple-300{--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity,1))}.text-purple-400{--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.text-purple-400\/90{color:rgba(192,132,252,.9)}.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity,1))}.text-rose-200{--tw-text-opacity:1;color:rgb(254 205 211/var(--tw-text-opacity,1))}.text-rose-300{--tw-text-opacity:1;color:rgb(253 164 175/var(--tw-text-opacity,1))}.text-rose-400{--tw-text-opacity:1;color:rgb(251 113 133/var(--tw-text-opacity,1))}.text-sky-200{--tw-text-opacity:1;color:rgb(186 230 253/var(--tw-text-opacity,1))}.text-sky-300{--tw-text-opacity:1;color:rgb(125 211 252/var(--tw-text-opacity,1))}.text-slate-100{--tw-text-opacity:1;color:rgb(241 245 249/var(--tw-text-opacity,1))}.text-slate-200{--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.text-slate-300{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.text-slate-950{--tw-text-opacity:1;color:rgb(2 6 23/var(--tw-text-opacity,1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.placeholder-slate-400::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(148 163 184/var(--tw-placeholder-opacity,1))}.placeholder-slate-400::placeholder{--tw-placeholder-opacity:1;color:rgb(148 163 184/var(--tw-placeholder-opacity,1))}.placeholder-slate-500::-moz-placeholder{--tw-placeholder-opacity:1;color:rgb(100 116 139/var(--tw-placeholder-opacity,1))}.placeholder-slate-500::placeholder{--tw-placeholder-opacity:1;color:rgb(100 116 139/var(--tw-placeholder-opacity,1))}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-30{opacity:.3}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-2xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow-inner,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-amber-500\/10{--tw-shadow-color:rgba(245,158,11,.1);--tw-shadow:var(--tw-shadow-colored)}.shadow-amber-500\/20{--tw-shadow-color:rgba(245,158,11,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-amber-950\/20{--tw-shadow-color:rgba(69,26,3,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-cyan-600\/25{--tw-shadow-color:rgba(8,145,178,.25);--tw-shadow:var(--tw-shadow-colored)}.shadow-cyan-600\/30{--tw-shadow-color:rgba(8,145,178,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-cyan-950\/70{--tw-shadow-color:rgba(8,51,68,.7);--tw-shadow:var(--tw-shadow-colored)}.shadow-emerald-500\/20{--tw-shadow-color:rgba(16,185,129,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-emerald-600\/20{--tw-shadow-color:rgba(5,150,105,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-emerald-600\/30{--tw-shadow-color:rgba(5,150,105,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-orange-500\/20{--tw-shadow-color:rgba(249,115,22,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-orange-600\/25{--tw-shadow-color:rgba(234,88,12,.25);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-500\/20{--tw-shadow-color:rgba(168,85,247,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-500\/25{--tw-shadow-color:rgba(168,85,247,.25);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-500\/30{--tw-shadow-color:rgba(168,85,247,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-600\/20{--tw-shadow-color:rgba(147,51,234,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-600\/25{--tw-shadow-color:rgba(147,51,234,.25);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-600\/30{--tw-shadow-color:rgba(147,51,234,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-900\/20{--tw-shadow-color:rgba(88,28,135,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-900\/30{--tw-shadow-color:rgba(88,28,135,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-900\/40{--tw-shadow-color:rgba(88,28,135,.4);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-950\/20{--tw-shadow-color:rgba(59,7,100,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-950\/30{--tw-shadow-color:rgba(59,7,100,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-950\/60{--tw-shadow-color:rgba(59,7,100,.6);--tw-shadow:var(--tw-shadow-colored)}.blur{--tw-blur:blur(8px)}.blur,.blur-2xl{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-2xl{--tw-blur:blur(40px)}.blur-3xl{--tw-blur:blur(64px)}.blur-3xl,.blur-\[100px\]{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-\[100px\]{--tw-blur:blur(100px)}.blur-\[120px\]{--tw-blur:blur(120px)}.blur-\[120px\],.blur-xl{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-xl{--tw-blur:blur(24px)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur:blur(8px)}.backdrop-blur,.backdrop-blur-2xl{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-2xl{--tw-backdrop-blur:blur(40px)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-md,.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.backdrop-blur-xl{--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-1000{transition-duration:1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.selection\:bg-purple-500 ::-moz-selection{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.selection\:bg-purple-500 ::selection{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.selection\:bg-purple-600 ::-moz-selection{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.selection\:bg-purple-600 ::selection{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.selection\:text-white ::-moz-selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:text-white ::selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:bg-purple-500::-moz-selection{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.selection\:bg-purple-500::selection{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.selection\:bg-purple-600::-moz-selection{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.selection\:bg-purple-600::selection{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.selection\:text-white::-moz-selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:text-white::selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:-translate-y-0\.5:hover{--tw-translate-y:-0.125rem}.hover\:-translate-y-0\.5:hover,.hover\:scale-105:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05}.hover\:border-amber-400:hover{--tw-border-opacity:1;border-color:rgb(251 191 36/var(--tw-border-opacity,1))}.hover\:border-amber-500\/40:hover{border-color:rgba(245,158,11,.4)}.hover\:border-amber-500\/50:hover{border-color:rgba(245,158,11,.5)}.hover\:border-cyan-400:hover{--tw-border-opacity:1;border-color:rgb(34 211 238/var(--tw-border-opacity,1))}.hover\:border-cyan-500\/40:hover{border-color:rgba(6,182,212,.4)}.hover\:border-cyan-500\/50:hover{border-color:rgba(6,182,212,.5)}.hover\:border-emerald-400:hover{--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity,1))}.hover\:border-emerald-500\/50:hover{border-color:rgba(16,185,129,.5)}.hover\:border-purple-400:hover{--tw-border-opacity:1;border-color:rgb(192 132 252/var(--tw-border-opacity,1))}.hover\:border-purple-500:hover{--tw-border-opacity:1;border-color:rgb(168 85 247/var(--tw-border-opacity,1))}.hover\:border-purple-500\/40:hover{border-color:rgba(168,85,247,.4)}.hover\:border-purple-500\/50:hover{border-color:rgba(168,85,247,.5)}.hover\:border-purple-500\/60:hover{border-color:rgba(168,85,247,.6)}.hover\:border-sky-500\/50:hover{border-color:rgba(14,165,233,.5)}.hover\:border-slate-600:hover{--tw-border-opacity:1;border-color:rgb(71 85 105/var(--tw-border-opacity,1))}.hover\:border-slate-700:hover{--tw-border-opacity:1;border-color:rgb(51 65 85/var(--tw-border-opacity,1))}.hover\:bg-amber-900:hover{--tw-bg-opacity:1;background-color:rgb(120 53 15/var(--tw-bg-opacity,1))}.hover\:bg-blue-900:hover{--tw-bg-opacity:1;background-color:rgb(30 58 138/var(--tw-bg-opacity,1))}.hover\:bg-blue-950\/60:hover{background-color:rgba(23,37,84,.6)}.hover\:bg-cyan-500:hover{--tw-bg-opacity:1;background-color:rgb(6 182 212/var(--tw-bg-opacity,1))}.hover\:bg-cyan-900:hover{--tw-bg-opacity:1;background-color:rgb(22 78 99/var(--tw-bg-opacity,1))}.hover\:bg-emerald-500:hover{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.hover\:bg-emerald-900:hover{--tw-bg-opacity:1;background-color:rgb(6 78 59/var(--tw-bg-opacity,1))}.hover\:bg-indigo-900:hover{--tw-bg-opacity:1;background-color:rgb(49 46 129/var(--tw-bg-opacity,1))}.hover\:bg-indigo-950\/60:hover{background-color:rgba(30,27,75,.6)}.hover\:bg-orange-900:hover{--tw-bg-opacity:1;background-color:rgb(124 45 18/var(--tw-bg-opacity,1))}.hover\:bg-pink-900\/80:hover{background-color:rgba(131,24,67,.8)}.hover\:bg-pink-950\/60:hover{background-color:rgba(80,7,36,.6)}.hover\:bg-purple-500:hover{--tw-bg-opacity:1;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.hover\:bg-purple-600:hover{--tw-bg-opacity:1;background-color:rgb(147 51 234/var(--tw-bg-opacity,1))}.hover\:bg-purple-900:hover{--tw-bg-opacity:1;background-color:rgb(88 28 135/var(--tw-bg-opacity,1))}.hover\:bg-purple-900\/70:hover{background-color:rgba(88,28,135,.7)}.hover\:bg-purple-900\/90:hover{background-color:rgba(88,28,135,.9)}.hover\:bg-purple-950:hover{--tw-bg-opacity:1;background-color:rgb(59 7 100/var(--tw-bg-opacity,1))}.hover\:bg-purple-950\/60:hover{background-color:rgba(59,7,100,.6)}.hover\:bg-rose-900:hover{--tw-bg-opacity:1;background-color:rgb(136 19 55/var(--tw-bg-opacity,1))}.hover\:bg-sky-900\/80:hover{background-color:rgba(12,74,110,.8)}.hover\:bg-slate-200:hover{--tw-bg-opacity:1;background-color:rgb(226 232 240/var(--tw-bg-opacity,1))}.hover\:bg-slate-700:hover{--tw-bg-opacity:1;background-color:rgb(51 65 85/var(--tw-bg-opacity,1))}.hover\:bg-slate-800:hover{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.hover\:bg-slate-800\/40:hover{background-color:rgba(30,41,59,.4)}.hover\:bg-slate-900:hover{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.hover\:from-amber-300:hover{--tw-gradient-from:#fcd34d var(--tw-gradient-from-position);--tw-gradient-to:rgba(252,211,77,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-amber-400:hover{--tw-gradient-from:#fbbf24 var(--tw-gradient-from-position);--tw-gradient-to:rgba(251,191,36,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-amber-500\/20:hover{--tw-gradient-from:rgba(245,158,11,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-amber-500\/30:hover{--tw-gradient-from:rgba(245,158,11,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-cyan-500:hover{--tw-gradient-from:#06b6d4 var(--tw-gradient-from-position);--tw-gradient-to:rgba(6,182,212,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-emerald-600\/50:hover{--tw-gradient-from:rgba(5,150,105,.5) var(--tw-gradient-from-position);--tw-gradient-to:rgba(5,150,105,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-emerald-900:hover{--tw-gradient-from:#064e3b var(--tw-gradient-from-position);--tw-gradient-to:rgba(6,78,59,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-orange-500:hover{--tw-gradient-from:#f97316 var(--tw-gradient-from-position);--tw-gradient-to:rgba(249,115,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-pink-500:hover{--tw-gradient-from:#ec4899 var(--tw-gradient-from-position);--tw-gradient-to:rgba(236,72,153,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-purple-500:hover{--tw-gradient-from:#a855f7 var(--tw-gradient-from-position);--tw-gradient-to:rgba(168,85,247,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-purple-600\/50:hover{--tw-gradient-from:rgba(147,51,234,.5) var(--tw-gradient-from-position);--tw-gradient-to:rgba(147,51,234,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:from-purple-800\/80:hover{--tw-gradient-from:rgba(107,33,168,.8) var(--tw-gradient-from-position);--tw-gradient-to:rgba(107,33,168,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:to-amber-500:hover{--tw-gradient-to:#f59e0b var(--tw-gradient-to-position)}.hover\:to-blue-500:hover{--tw-gradient-to:#3b82f6 var(--tw-gradient-to-position)}.hover\:to-cyan-500:hover{--tw-gradient-to:#06b6d4 var(--tw-gradient-to-position)}.hover\:to-cyan-600\/50:hover{--tw-gradient-to:rgba(8,145,178,.5) var(--tw-gradient-to-position)}.hover\:to-indigo-500:hover{--tw-gradient-to:#6366f1 var(--tw-gradient-to-position)}.hover\:to-indigo-800\/80:hover{--tw-gradient-to:rgba(55,48,163,.8) var(--tw-gradient-to-position)}.hover\:to-orange-300:hover{--tw-gradient-to:#fdba74 var(--tw-gradient-to-position)}.hover\:to-orange-400:hover{--tw-gradient-to:#fb923c var(--tw-gradient-to-position)}.hover\:to-orange-500:hover{--tw-gradient-to:#f97316 var(--tw-gradient-to-position)}.hover\:to-orange-500\/20:hover{--tw-gradient-to:rgba(249,115,22,.2) var(--tw-gradient-to-position)}.hover\:to-orange-500\/30:hover{--tw-gradient-to:rgba(249,115,22,.3) var(--tw-gradient-to-position)}.hover\:to-purple-500:hover{--tw-gradient-to:#a855f7 var(--tw-gradient-to-position)}.hover\:to-teal-600\/50:hover{--tw-gradient-to:rgba(13,148,136,.5) var(--tw-gradient-to-position)}.hover\:to-teal-900:hover{--tw-gradient-to:#134e4a var(--tw-gradient-to-position)}.hover\:text-amber-300:hover{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.hover\:text-cyan-200:hover{--tw-text-opacity:1;color:rgb(165 243 252/var(--tw-text-opacity,1))}.hover\:text-cyan-300:hover{--tw-text-opacity:1;color:rgb(103 232 249/var(--tw-text-opacity,1))}.hover\:text-emerald-300:hover{--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity,1))}.hover\:text-emerald-400:hover{--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.hover\:text-pink-300:hover{--tw-text-opacity:1;color:rgb(249 168 212/var(--tw-text-opacity,1))}.hover\:text-purple-300:hover{--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity,1))}.hover\:text-purple-400:hover{--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.hover\:text-rose-300:hover{--tw-text-opacity:1;color:rgb(253 164 175/var(--tw-text-opacity,1))}.hover\:text-rose-400:hover{--tw-text-opacity:1;color:rgb(251 113 133/var(--tw-text-opacity,1))}.hover\:text-slate-200:hover{--tw-text-opacity:1;color:rgb(226 232 240/var(--tw-text-opacity,1))}.hover\:text-slate-300:hover{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.hover\:text-slate-400:hover{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-95:hover{opacity:.95}.focus\:border-cyan-500:focus{--tw-border-opacity:1;border-color:rgb(6 182 212/var(--tw-border-opacity,1))}.focus\:border-purple-400:focus{--tw-border-opacity:1;border-color:rgb(192 132 252/var(--tw-border-opacity,1))}.focus\:border-purple-500:focus{--tw-border-opacity:1;border-color:rgb(168 85 247/var(--tw-border-opacity,1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-1:focus,.focus\:ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-purple-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(192 132 252/var(--tw-ring-opacity,1))}.focus\:ring-purple-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(168 85 247/var(--tw-ring-opacity,1))}.focus\:ring-purple-500\/50:focus{--tw-ring-color:rgba(168,85,247,.5)}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.group[open] .group-open\:rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:visible{visibility:visible}.group:hover .group-hover\:-translate-y-0\.5{--tw-translate-y:-0.125rem}.group:hover .group-hover\:-translate-y-0\.5,.group:hover .group-hover\:translate-x-0\.5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-0\.5{--tw-translate-x:0.125rem}.group:hover .group-hover\:translate-x-1{--tw-translate-x:0.25rem}.group:hover .group-hover\:rotate-180,.group:hover .group-hover\:translate-x-1{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:rotate-180{--tw-rotate:180deg}.group:hover .group-hover\:scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:text-amber-300{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-cyan-300{--tw-text-opacity:1;color:rgb(103 232 249/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-emerald-300{--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-pink-300{--tw-text-opacity:1;color:rgb(249 168 212/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-purple-300{--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity,1))}.group:hover .group-hover\:opacity-100{opacity:1}@media (min-width:640px){.sm\:block{display:block}.sm\:inline-block{display:inline-block}.sm\:inline{display:inline}.sm\:inline-flex{display:inline-flex}.sm\:w-64{width:16rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:self-auto{align-self:auto}.sm\:p-4{padding:1rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:p-8{padding:2rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-12{padding-top:3rem;padding-bottom:3rem}.sm\:pb-0{padding-bottom:0}.sm\:text-left{text-align:left}.sm\:text-right{text-align:right}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-6xl{font-size:3.75rem;line-height:1}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:768px){.md\:block{display:block}.md\:inline{display:inline}.md\:flex{display:flex}.md\:hidden{display:none}.md\:w-auto{width:auto}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-end{justify-content:flex-end}.md\:justify-between{justify-content:space-between}.md\:divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:0;border-right-width:calc(1px*var(--tw-divide-x-reverse));border-left-width:calc(1px*(1 - var(--tw-divide-x-reverse)))}.md\:divide-y-0>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(0px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(0px*var(--tw-divide-y-reverse))}.md\:py-16{padding-top:4rem;padding-bottom:4rem}.md\:pl-0{padding-left:0}.md\:pl-6{padding-left:1.5rem}.md\:pt-0{padding-top:0}.md\:text-right{text-align:right}}@media (min-width:1024px){.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:inline-flex{display:inline-flex}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:text-6xl{font-size:3.75rem;line-height:1}}@media (min-width:1280px){.xl\:flex{display:flex}.xl\:hidden{display:none}}@media print{.print\:hidden{display:none}.print\:divide-slate-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(226 232 240/var(--tw-divide-opacity,1))}.print\:border-none{border-style:none}.print\:border-emerald-600{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity,1))}.print\:border-slate-300{--tw-border-opacity:1;border-color:rgb(203 213 225/var(--tw-border-opacity,1))}.print\:bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.print\:bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.print\:bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.print\:p-0{padding:0}.print\:text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.print\:text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.print\:text-emerald-800{--tw-text-opacity:1;color:rgb(6 95 70/var(--tw-text-opacity,1))}.print\:text-purple-700{--tw-text-opacity:1;color:rgb(126 34 206/var(--tw-text-opacity,1))}.print\:text-purple-800{--tw-text-opacity:1;color:rgb(107 33 168/var(--tw-text-opacity,1))}.print\:text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.print\:text-slate-800{--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1))}.print\:shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}} \ No newline at end of file diff --git a/site/tools/1password-for-open-source.html b/site/tools/1password-for-open-source.html index a0e482ab..92dcc89e 100644 --- a/site/tools/1password-for-open-source.html +++ b/site/tools/1password-for-open-source.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools

diff --git a/site/tools/7timer.html b/site/tools/7timer.html index d7e51b3d..84130ec1 100644 --- a/site/tools/7timer.html +++ b/site/tools/7timer.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/act.html b/site/tools/act.html index 4d754365..9597e4ef 100644 --- a/site/tools/act.html +++ b/site/tools/act.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/adonisjs-starter.html b/site/tools/adonisjs-starter.html index 7ee55a97..cbfbee33 100644 --- a/site/tools/adonisjs-starter.html +++ b/site/tools/adonisjs-starter.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/advice-slip-api.html b/site/tools/advice-slip-api.html index 89f04cee..523dda07 100644 --- a/site/tools/advice-slip-api.html +++ b/site/tools/advice-slip-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/affine.html b/site/tools/affine.html index 013d9425..1b4f8716 100644 --- a/site/tools/affine.html +++ b/site/tools/affine.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/agent-browser.html b/site/tools/agent-browser.html index 53bf4639..d4ac3bf7 100644 --- a/site/tools/agent-browser.html +++ b/site/tools/agent-browser.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/agent-qa.html b/site/tools/agent-qa.html index c75900b3..d418e155 100644 --- a/site/tools/agent-qa.html +++ b/site/tools/agent-qa.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/agentshield.html b/site/tools/agentshield.html index 921f8449..799a66c2 100644 --- a/site/tools/agentshield.html +++ b/site/tools/agentshield.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/agify-api.html b/site/tools/agify-api.html index c2c74e8e..b15dce2c 100644 --- a/site/tools/agify-api.html +++ b/site/tools/agify-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/agifyio.html b/site/tools/agifyio.html index ff4a0c49..b3d2962b 100644 --- a/site/tools/agifyio.html +++ b/site/tools/agifyio.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/aider.html b/site/tools/aider.html index 5e33eeee..9fad6632 100644 --- a/site/tools/aider.html +++ b/site/tools/aider.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/aiven-free-tier.html b/site/tools/aiven-free-tier.html index f2310f01..5702a004 100644 --- a/site/tools/aiven-free-tier.html +++ b/site/tools/aiven-free-tier.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/anilist-graphql-api.html b/site/tools/anilist-graphql-api.html index d6d14182..7836eff5 100644 --- a/site/tools/anilist-graphql-api.html +++ b/site/tools/anilist-graphql-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/annoy.html b/site/tools/annoy.html index 7b1a6614..4b017201 100644 --- a/site/tools/annoy.html +++ b/site/tools/annoy.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/anythingllm.html b/site/tools/anythingllm.html index ffb143bb..c4847c08 100644 --- a/site/tools/anythingllm.html +++ b/site/tools/anythingllm.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/aphrodite-engine.html b/site/tools/aphrodite-engine.html index 9666c848..56d9b72b 100644 --- a/site/tools/aphrodite-engine.html +++ b/site/tools/aphrodite-engine.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/appflowy.html b/site/tools/appflowy.html index 8b546696..18696130 100644 --- a/site/tools/appflowy.html +++ b/site/tools/appflowy.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/appium.html b/site/tools/appium.html index 80494823..9c997e06 100644 --- a/site/tools/appium.html +++ b/site/tools/appium.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/appwrite.html b/site/tools/appwrite.html index b68ed6ba..0897def8 100644 --- a/site/tools/appwrite.html +++ b/site/tools/appwrite.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/archiveorg-api.html b/site/tools/archiveorg-api.html index 080f12c1..3f2e3afa 100644 --- a/site/tools/archiveorg-api.html +++ b/site/tools/archiveorg-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/arcmira-youtube-transcript-search.html b/site/tools/arcmira-youtube-transcript-search.html index c8bf5b71..dd33d8d1 100644 --- a/site/tools/arcmira-youtube-transcript-search.html +++ b/site/tools/arcmira-youtube-transcript-search.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/aria2.html b/site/tools/aria2.html index 4765084b..e702ef4a 100644 --- a/site/tools/aria2.html +++ b/site/tools/aria2.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/artillery.html b/site/tools/artillery.html index c00d86ce..418abee5 100644 --- a/site/tools/artillery.html +++ b/site/tools/artillery.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/asdf-vm.html b/site/tools/asdf-vm.html index 5df65b54..27ea7ce6 100644 --- a/site/tools/asdf-vm.html +++ b/site/tools/asdf-vm.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/ast-grep.html b/site/tools/ast-grep.html index ccdbef5f..7be2f159 100644 --- a/site/tools/ast-grep.html +++ b/site/tools/ast-grep.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/astro-blog-starter.html b/site/tools/astro-blog-starter.html index 46ee7036..cfcc1a5b 100644 --- a/site/tools/astro-blog-starter.html +++ b/site/tools/astro-blog-starter.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/astro-paper.html b/site/tools/astro-paper.html index a2d5ff76..21b46c40 100644 --- a/site/tools/astro-paper.html +++ b/site/tools/astro-paper.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/astrowind-starter.html b/site/tools/astrowind-starter.html index 6c41a50a..fc3d8688 100644 --- a/site/tools/astrowind-starter.html +++ b/site/tools/astrowind-starter.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/atlassian-open-source-project-licensing.html b/site/tools/atlassian-open-source-project-licensing.html index b2d277e5..dbf283a4 100644 --- a/site/tools/atlassian-open-source-project-licensing.html +++ b/site/tools/atlassian-open-source-project-licensing.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/atuin.html b/site/tools/atuin.html index a2750e5b..589f2694 100644 --- a/site/tools/atuin.html +++ b/site/tools/atuin.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/authelia.html b/site/tools/authelia.html index a55e3da6..e6ae2f1d 100644 --- a/site/tools/authelia.html +++ b/site/tools/authelia.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/authentik.html b/site/tools/authentik.html index 18f87454..86040840 100644 --- a/site/tools/authentik.html +++ b/site/tools/authentik.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/authjs.html b/site/tools/authjs.html index 88ea3f7a..ba20b14d 100644 --- a/site/tools/authjs.html +++ b/site/tools/authjs.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/autoawq.html b/site/tools/autoawq.html index fadbc963..b018bf2c 100644 --- a/site/tools/autoawq.html +++ b/site/tools/autoawq.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/autocannon.html b/site/tools/autocannon.html index a1f0e84f..3163445b 100644 --- a/site/tools/autocannon.html +++ b/site/tools/autocannon.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/autogen.html b/site/tools/autogen.html index 9eacc213..5dd75b5d 100644 --- a/site/tools/autogen.html +++ b/site/tools/autogen.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/autogpt.html b/site/tools/autogpt.html index 2513b126..28f85b7f 100644 --- a/site/tools/autogpt.html +++ b/site/tools/autogpt.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/autogptq.html b/site/tools/autogptq.html index 4a7b4913..6f898904 100644 --- a/site/tools/autogptq.html +++ b/site/tools/autogptq.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/autoheal-qa.html b/site/tools/autoheal-qa.html index a84fff2a..ca822cc3 100644 --- a/site/tools/autoheal-qa.html +++ b/site/tools/autoheal-qa.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/autoround.html b/site/tools/autoround.html index 795be07f..1afd917d 100644 --- a/site/tools/autoround.html +++ b/site/tools/autoround.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/aws-activate-founders.html b/site/tools/aws-activate-founders.html index ba24c198..a5a31588 100644 --- a/site/tools/aws-activate-founders.html +++ b/site/tools/aws-activate-founders.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/axe-core.html b/site/tools/axe-core.html index c6a670f9..6a789604 100644 --- a/site/tools/axe-core.html +++ b/site/tools/axe-core.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/axolotl.html b/site/tools/axolotl.html index 2adda667..d7ec4a14 100644 --- a/site/tools/axolotl.html +++ b/site/tools/axolotl.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/babyagi.html b/site/tools/babyagi.html index 0ea514aa..5eb915d4 100644 --- a/site/tools/babyagi.html +++ b/site/tools/babyagi.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/backblaze-b2.html b/site/tools/backblaze-b2.html index 8ec5db5b..3736b3c7 100644 --- a/site/tools/backblaze-b2.html +++ b/site/tools/backblaze-b2.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/backstopjs.html b/site/tools/backstopjs.html index 5608b7df..b1b55c07 100644 --- a/site/tools/backstopjs.html +++ b/site/tools/backstopjs.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/bandit.html b/site/tools/bandit.html index 3d330a0f..9ef9027b 100644 --- a/site/tools/bandit.html +++ b/site/tools/bandit.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/bandwhich.html b/site/tools/bandwhich.html index 03c8e5d0..2e6f74a1 100644 --- a/site/tools/bandwhich.html +++ b/site/tools/bandwhich.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/bark.html b/site/tools/bark.html index 02709cfe..8a4b8452 100644 --- a/site/tools/bark.html +++ b/site/tools/bark.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/bat.html b/site/tools/bat.html index a23b7d51..52780e3c 100644 --- a/site/tools/bat.html +++ b/site/tools/bat.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/beeceptor.html b/site/tools/beeceptor.html index 15181e72..b6865636 100644 --- a/site/tools/beeceptor.html +++ b/site/tools/beeceptor.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/better-auth.html b/site/tools/better-auth.html index 40073177..e04e72bd 100644 --- a/site/tools/better-auth.html +++ b/site/tools/better-auth.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/big-data-cloud-free-ip.html b/site/tools/big-data-cloud-free-ip.html index c0b44e00..e9c964eb 100644 --- a/site/tools/big-data-cloud-free-ip.html +++ b/site/tools/big-data-cloud-free-ip.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/binlist.html b/site/tools/binlist.html index acc3c4df..f7c33e82 100644 --- a/site/tools/binlist.html +++ b/site/tools/binlist.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/biome.html b/site/tools/biome.html index b9932fc8..69c73c19 100644 --- a/site/tools/biome.html +++ b/site/tools/biome.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/bitsandbytes.html b/site/tools/bitsandbytes.html index ba99d3d1..b40bd2aa 100644 --- a/site/tools/bitsandbytes.html +++ b/site/tools/bitsandbytes.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/bogus.html b/site/tools/bogus.html index 14e14873..17318516 100644 --- a/site/tools/bogus.html +++ b/site/tools/bogus.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/bored-api-mirror.html b/site/tools/bored-api-mirror.html index b106dd27..59856cff 100644 --- a/site/tools/bored-api-mirror.html +++ b/site/tools/bored-api-mirror.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/bored-api.html b/site/tools/bored-api.html index 3173fe48..55b5efd8 100644 --- a/site/tools/bored-api.html +++ b/site/tools/bored-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/bottom.html b/site/tools/bottom.html index b707b1eb..13407366 100644 --- a/site/tools/bottom.html +++ b/site/tools/bottom.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/brakeman.html b/site/tools/brakeman.html index 89da12e3..27415aec 100644 --- a/site/tools/brakeman.html +++ b/site/tools/brakeman.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/brevo-formerly-sendinblue.html b/site/tools/brevo-formerly-sendinblue.html index 3d011b56..c9bdc333 100644 --- a/site/tools/brevo-formerly-sendinblue.html +++ b/site/tools/brevo-formerly-sendinblue.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/broot.html b/site/tools/broot.html index a33858d4..5d65fb97 100644 --- a/site/tools/broot.html +++ b/site/tools/broot.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/browserstack-open-source.html b/site/tools/browserstack-open-source.html index 9623bebd..e6f05499 100644 --- a/site/tools/browserstack-open-source.html +++ b/site/tools/browserstack-open-source.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/bruno.html b/site/tools/bruno.html index d4a0401a..c52507ec 100644 --- a/site/tools/bruno.html +++ b/site/tools/bruno.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/btop.html b/site/tools/btop.html index b5fba985..f5d94661 100644 --- a/site/tools/btop.html +++ b/site/tools/btop.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/bubo.html b/site/tools/bubo.html index 6f52357c..84beb7ef 100644 --- a/site/tools/bubo.html +++ b/site/tools/bubo.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/bulletproof-react.html b/site/tools/bulletproof-react.html index dc9fb6b1..f4e3e412 100644 --- a/site/tools/bulletproof-react.html +++ b/site/tools/bulletproof-react.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/bun.html b/site/tools/bun.html index 6775f031..f197448a 100644 --- a/site/tools/bun.html +++ b/site/tools/bun.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/caddy-web-server.html b/site/tools/caddy-web-server.html index 1bd3a989..5f0ff06b 100644 --- a/site/tools/caddy-web-server.html +++ b/site/tools/caddy-web-server.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/calcom.html b/site/tools/calcom.html index a2b6ed31..79c6f848 100644 --- a/site/tools/calcom.html +++ b/site/tools/calcom.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/caprover.html b/site/tools/caprover.html index 64f119f1..638d0203 100644 --- a/site/tools/caprover.html +++ b/site/tools/caprover.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/caption-pack-api.html b/site/tools/caption-pack-api.html index 1a3f672e..1005b677 100644 --- a/site/tools/caption-pack-api.html +++ b/site/tools/caption-pack-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/carbon-interface-api.html b/site/tools/carbon-interface-api.html index 3e57343e..d41b3adf 100644 --- a/site/tools/carbon-interface-api.html +++ b/site/tools/carbon-interface-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/carejobsnow-open-healthcare-jobs-and-pay-data.html b/site/tools/carejobsnow-open-healthcare-jobs-and-pay-data.html index 285c3458..925770f3 100644 --- a/site/tools/carejobsnow-open-healthcare-jobs-and-pay-data.html +++ b/site/tools/carejobsnow-open-healthcare-jobs-and-pay-data.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/casaos.html b/site/tools/casaos.html index 7f5aaeb3..584ac46d 100644 --- a/site/tools/casaos.html +++ b/site/tools/casaos.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/casbin.html b/site/tools/casbin.html index ae7339f9..924f43bd 100644 --- a/site/tools/casbin.html +++ b/site/tools/casbin.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/cascadia-code.html b/site/tools/cascadia-code.html index 79e8ad69..1935be68 100644 --- a/site/tools/cascadia-code.html +++ b/site/tools/cascadia-code.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/casdoor.html b/site/tools/casdoor.html index da4a50d0..1bf4df78 100644 --- a/site/tools/casdoor.html +++ b/site/tools/casdoor.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/cat-facts.html b/site/tools/cat-facts.html index b6c82fc7..2a31cced 100644 --- a/site/tools/cat-facts.html +++ b/site/tools/cat-facts.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/cataas-cat-as-a-service.html b/site/tools/cataas-cat-as-a-service.html index feb6c4e9..97995d63 100644 --- a/site/tools/cataas-cat-as-a-service.html +++ b/site/tools/cataas-cat-as-a-service.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/cerbos.html b/site/tools/cerbos.html index 4a4769a2..9279bc1a 100644 --- a/site/tools/cerbos.html +++ b/site/tools/cerbos.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/chatdev.html b/site/tools/chatdev.html index 13cc08bb..fc749f0b 100644 --- a/site/tools/chatdev.html +++ b/site/tools/chatdev.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/chattts.html b/site/tools/chattts.html index 16d47cbb..da0bea7e 100644 --- a/site/tools/chattts.html +++ b/site/tools/chattts.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/chatwoot.html b/site/tools/chatwoot.html index f4a79c8a..a5019ca9 100644 --- a/site/tools/chatwoot.html +++ b/site/tools/chatwoot.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/checkov.html b/site/tools/checkov.html index cfc71160..e6838ed4 100644 --- a/site/tools/checkov.html +++ b/site/tools/checkov.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/choose.html b/site/tools/choose.html index 3a152a0c..5b33f393 100644 --- a/site/tools/choose.html +++ b/site/tools/choose.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/chroma.html b/site/tools/chroma.html index ff8f3610..fdfa2a30 100644 --- a/site/tools/chroma.html +++ b/site/tools/chroma.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/chuck-norris-jokes-api.html b/site/tools/chuck-norris-jokes-api.html index d4ad9597..49ce3219 100644 --- a/site/tools/chuck-norris-jokes-api.html +++ b/site/tools/chuck-norris-jokes-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/clerk.html b/site/tools/clerk.html index e55e4e78..67c788cc 100644 --- a/site/tools/clerk.html +++ b/site/tools/clerk.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/clockshift.html b/site/tools/clockshift.html new file mode 100644 index 00000000..cc94a5f4 --- /dev/null +++ b/site/tools/clockshift.html @@ -0,0 +1,270 @@ + + + + + + Clockshift - Free Developer Tool | DevShelf + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+
+ +
+
+
+ + Testing & QA Reliability + + + +
+

Clockshift

+
+ +
+ +

+ Find missing or repeated local clock times in daily and weekly schedules, with CSV export and a weekday filter. Includes a browser UI and a dependency-free Node.js CLI; scheduler execution policy must be checked separately. +

+ +
+
+ Pricing Model + Free access; limits may apply +
+
LanguageJavaScript / Node.js and browser Intl
+
LicenseMIT
+ +
Free Tier AllowanceSee the official site for free access and limits.
+
+ + + + + +
+
+
+
+ ๐Ÿท๏ธ DevShelf Directory Badge +
+ +
+
+ Featured on DevShelf +
+ +
+ +
+
+
+ ๐Ÿ›ก๏ธ Secured by AgentShield Badge +
+ +
+
+ Secured by AgentShield +
+ +
+
+ +
+
+ ๐Ÿš€ + Are you the creator of Clockshift or building a devtool in this category? +
+ + Feature in AI Chats ($49) โ†’ + +
+ + +
+

๐Ÿ’ฌ Frequently Asked Questions (AI & Developer Summary)

+
+ +
+ + What free access does Clockshift offer? + โ–ผ + +

+ See the official site for free access and limits. License: MIT. +

+
+
+ + What are the authentication and access requirements for Clockshift? + โ–ผ + +

+ See the official site for authentication and access requirements. +

+
+
+
+ + +
+
+ + + + diff --git a/site/tools/clonepeek.html b/site/tools/clonepeek.html index ab078cd6..ec365ba3 100644 --- a/site/tools/clonepeek.html +++ b/site/tools/clonepeek.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/cloudflare-for-open-source.html b/site/tools/cloudflare-for-open-source.html index e611a0ff..ebdcf707 100644 --- a/site/tools/cloudflare-for-open-source.html +++ b/site/tools/cloudflare-for-open-source.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/cloudflare-pages.html b/site/tools/cloudflare-pages.html index 78f40bea..4da22f2a 100644 --- a/site/tools/cloudflare-pages.html +++ b/site/tools/cloudflare-pages.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/cloudflare-workers.html b/site/tools/cloudflare-workers.html index 5adc5aa7..f98f7bbb 100644 --- a/site/tools/cloudflare-workers.html +++ b/site/tools/cloudflare-workers.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/cockroachdb-serverless.html b/site/tools/cockroachdb-serverless.html index c5f1d943..2c987aab 100644 --- a/site/tools/cockroachdb-serverless.html +++ b/site/tools/cockroachdb-serverless.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/codecov-for-open-source.html b/site/tools/codecov-for-open-source.html index f7d275ff..b8ec2e84 100644 --- a/site/tools/codecov-for-open-source.html +++ b/site/tools/codecov-for-open-source.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/codex-quota-overlay.html b/site/tools/codex-quota-overlay.html index 45d63d98..4d61b6db 100644 --- a/site/tools/codex-quota-overlay.html +++ b/site/tools/codex-quota-overlay.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/coingecko-free-api.html b/site/tools/coingecko-free-api.html index 263c73cc..b54a213b 100644 --- a/site/tools/coingecko-free-api.html +++ b/site/tools/coingecko-free-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/coinpaprika-api.html b/site/tools/coinpaprika-api.html index 7457a0c6..269b931f 100644 --- a/site/tools/coinpaprika-api.html +++ b/site/tools/coinpaprika-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/comfyui.html b/site/tools/comfyui.html index 90e7f23f..08b0e1fd 100644 --- a/site/tools/comfyui.html +++ b/site/tools/comfyui.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/continue.html b/site/tools/continue.html index 797165ab..b8045fdb 100644 --- a/site/tools/continue.html +++ b/site/tools/continue.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/coolify.html b/site/tools/coolify.html index 1d9419fd..40710545 100644 --- a/site/tools/coolify.html +++ b/site/tools/coolify.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/corporate-bullshit-generator.html b/site/tools/corporate-bullshit-generator.html index c1926515..4313667f 100644 --- a/site/tools/corporate-bullshit-generator.html +++ b/site/tools/corporate-bullshit-generator.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/countapi.html b/site/tools/countapi.html index 4d5ff454..ef7b8e5f 100644 --- a/site/tools/countapi.html +++ b/site/tools/countapi.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/court-rules.html b/site/tools/court-rules.html index 158f2673..9a64cdbf 100644 --- a/site/tools/court-rules.html +++ b/site/tools/court-rules.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/create-t3-app.html b/site/tools/create-t3-app.html index 4bdcfa9a..2f8affe7 100644 --- a/site/tools/create-t3-app.html +++ b/site/tools/create-t3-app.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/crewai.html b/site/tools/crewai.html index e778852b..b8c637c5 100644 --- a/site/tools/crewai.html +++ b/site/tools/crewai.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/croc.html b/site/tools/croc.html index 71045a60..a865d587 100644 --- a/site/tools/croc.html +++ b/site/tools/croc.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/crowdin-for-open-source.html b/site/tools/crowdin-for-open-source.html index 2bc8ace2..f021be3c 100644 --- a/site/tools/crowdin-for-open-source.html +++ b/site/tools/crowdin-for-open-source.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/cryptocompare-api.html b/site/tools/cryptocompare-api.html index 3f2b5ccc..9c9f86ea 100644 --- a/site/tools/cryptocompare-api.html +++ b/site/tools/cryptocompare-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/csvkit.html b/site/tools/csvkit.html index ba0a72e2..c5a92646 100644 --- a/site/tools/csvkit.html +++ b/site/tools/csvkit.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/ctop.html b/site/tools/ctop.html index ba5931d2..7ee6e32d 100644 --- a/site/tools/ctop.html +++ b/site/tools/ctop.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/curlie.html b/site/tools/curlie.html index aa2e0269..4ce02217 100644 --- a/site/tools/curlie.html +++ b/site/tools/curlie.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/curlshot.html b/site/tools/curlshot.html index b6dc70c1..9578419f 100644 --- a/site/tools/curlshot.html +++ b/site/tools/curlshot.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/cypress.html b/site/tools/cypress.html index de18d226..c3698d40 100644 --- a/site/tools/cypress.html +++ b/site/tools/cypress.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/cz-cli.html b/site/tools/cz-cli.html index 2582b42e..724f8720 100644 --- a/site/tools/cz-cli.html +++ b/site/tools/cz-cli.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/dasel.html b/site/tools/dasel.html index 1b992700..1ce49774 100644 --- a/site/tools/dasel.html +++ b/site/tools/dasel.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/datadog-for-open-source.html b/site/tools/datadog-for-open-source.html index a0f1f38f..2186aeea 100644 --- a/site/tools/datadog-for-open-source.html +++ b/site/tools/datadog-for-open-source.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/dateparser-kotlin.html b/site/tools/dateparser-kotlin.html index 5054a64b..579c304b 100644 --- a/site/tools/dateparser-kotlin.html +++ b/site/tools/dateparser-kotlin.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/deck-of-cards-api.html b/site/tools/deck-of-cards-api.html index 68ae35e1..38527d3f 100644 --- a/site/tools/deck-of-cards-api.html +++ b/site/tools/deck-of-cards-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/deepeval.html b/site/tools/deepeval.html index c98bd4cc..b3bf60ba 100644 --- a/site/tools/deepeval.html +++ b/site/tools/deepeval.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/delta.html b/site/tools/delta.html index 87912682..071d76ba 100644 --- a/site/tools/delta.html +++ b/site/tools/delta.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/deno-deploy.html b/site/tools/deno-deploy.html index 7bd6098a..afe90204 100644 --- a/site/tools/deno-deploy.html +++ b/site/tools/deno-deploy.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/deno.html b/site/tools/deno.html index 948300f1..53624421 100644 --- a/site/tools/deno.html +++ b/site/tools/deno.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/detox.html b/site/tools/detox.html index 9288f84b..85ab6559 100644 --- a/site/tools/detox.html +++ b/site/tools/detox.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/devto-api.html b/site/tools/devto-api.html index f5d5e89c..31ff8942 100644 --- a/site/tools/devto-api.html +++ b/site/tools/devto-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/dicebear.html b/site/tools/dicebear.html index c7574994..8b194979 100644 --- a/site/tools/dicebear.html +++ b/site/tools/dicebear.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/dictionary-api.html b/site/tools/dictionary-api.html index 56edca3c..bbc906eb 100644 --- a/site/tools/dictionary-api.html +++ b/site/tools/dictionary-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/dify.html b/site/tools/dify.html index b0d1a454..32ba8a2e 100644 --- a/site/tools/dify.html +++ b/site/tools/dify.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/digitalocean-open-source-sponsorship.html b/site/tools/digitalocean-open-source-sponsorship.html index 60f991d3..1dbb0b65 100644 --- a/site/tools/digitalocean-open-source-sponsorship.html +++ b/site/tools/digitalocean-open-source-sponsorship.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/directus-instant-data-engine.html b/site/tools/directus-instant-data-engine.html index a73d1de7..fc1d29a9 100644 --- a/site/tools/directus-instant-data-engine.html +++ b/site/tools/directus-instant-data-engine.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/directus.html b/site/tools/directus.html index 4453c8d4..2ed84c0b 100644 --- a/site/tools/directus.html +++ b/site/tools/directus.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/direnv.html b/site/tools/direnv.html index 26d2ca37..fc84098f 100644 --- a/site/tools/direnv.html +++ b/site/tools/direnv.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/diskonaut.html b/site/tools/diskonaut.html index 25f94521..e22f00ac 100644 --- a/site/tools/diskonaut.html +++ b/site/tools/diskonaut.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/dive.html b/site/tools/dive.html index bac343f9..0f826bfa 100644 --- a/site/tools/dive.html +++ b/site/tools/dive.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/django-boilerplate-wemake.html b/site/tools/django-boilerplate-wemake.html index ef618412..76967880 100644 --- a/site/tools/django-boilerplate-wemake.html +++ b/site/tools/django-boilerplate-wemake.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/docker-open-source-community.html b/site/tools/docker-open-source-community.html index c88477ff..03be9b8b 100644 --- a/site/tools/docker-open-source-community.html +++ b/site/tools/docker-open-source-community.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/docs-link-integrity-checker.html b/site/tools/docs-link-integrity-checker.html index 25611db3..b4c73d10 100644 --- a/site/tools/docs-link-integrity-checker.html +++ b/site/tools/docs-link-integrity-checker.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/documenso.html b/site/tools/documenso.html index eae2b886..8e25d6eb 100644 --- a/site/tools/documenso.html +++ b/site/tools/documenso.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/dog-api.html b/site/tools/dog-api.html index f49f7897..5fed0067 100644 --- a/site/tools/dog-api.html +++ b/site/tools/dog-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/doggo.html b/site/tools/doggo.html index e074844d..237aa707 100644 --- a/site/tools/doggo.html +++ b/site/tools/doggo.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/dokku.html b/site/tools/dokku.html index a6ee70ae..cf07556f 100644 --- a/site/tools/dokku.html +++ b/site/tools/dokku.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/dragonfly.html b/site/tools/dragonfly.html index 95ce4f10..c6cf6260 100644 --- a/site/tools/dragonfly.html +++ b/site/tools/dragonfly.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/dredd.html b/site/tools/dredd.html index d6ea36a3..09ea326a 100644 --- a/site/tools/dredd.html +++ b/site/tools/dredd.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/drill.html b/site/tools/drill.html index b9be6085..452e2eb6 100644 --- a/site/tools/drill.html +++ b/site/tools/drill.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/dspy.html b/site/tools/dspy.html index 5ea3208c..c00a0756 100644 --- a/site/tools/dspy.html +++ b/site/tools/dspy.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/dubco.html b/site/tools/dubco.html index 2985d274..5ea84766 100644 --- a/site/tools/dubco.html +++ b/site/tools/dubco.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/duf.html b/site/tools/duf.html index edcb30ba..2e4fa08d 100644 --- a/site/tools/duf.html +++ b/site/tools/duf.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/dummyjson.html b/site/tools/dummyjson.html index d6b269a2..c5c163a2 100644 --- a/site/tools/dummyjson.html +++ b/site/tools/dummyjson.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/dust.html b/site/tools/dust.html index dac50e8b..ca02e943 100644 --- a/site/tools/dust.html +++ b/site/tools/dust.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/easypanel.html b/site/tools/easypanel.html index 1ac575a1..165f3b7b 100644 --- a/site/tools/easypanel.html +++ b/site/tools/easypanel.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/eclipse-mosquitto.html b/site/tools/eclipse-mosquitto.html index 4f690edf..6b21d51c 100644 --- a/site/tools/eclipse-mosquitto.html +++ b/site/tools/eclipse-mosquitto.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/eigenwise-toolshed.html b/site/tools/eigenwise-toolshed.html index b5c22b8b..123909f7 100644 --- a/site/tools/eigenwise-toolshed.html +++ b/site/tools/eigenwise-toolshed.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/electron-react-boilerplate.html b/site/tools/electron-react-boilerplate.html index 66956a4f..03a84d88 100644 --- a/site/tools/electron-react-boilerplate.html +++ b/site/tools/electron-react-boilerplate.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/elysia-starter.html b/site/tools/elysia-starter.html index 9b613b1e..3ffedbb9 100644 --- a/site/tools/elysia-starter.html +++ b/site/tools/elysia-starter.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/emqx.html b/site/tools/emqx.html index 647d2fd7..4d68f785 100644 --- a/site/tools/emqx.html +++ b/site/tools/emqx.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/evil-insult-generator.html b/site/tools/evil-insult-generator.html index ae26ba1c..cd7b03d6 100644 --- a/site/tools/evil-insult-generator.html +++ b/site/tools/evil-insult-generator.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/excalidraw.html b/site/tools/excalidraw.html index 4030428c..27c36d9f 100644 --- a/site/tools/excalidraw.html +++ b/site/tools/excalidraw.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/exchangerate-api.html b/site/tools/exchangerate-api.html index 0dd18174..c82de609 100644 --- a/site/tools/exchangerate-api.html +++ b/site/tools/exchangerate-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/exllamav2.html b/site/tools/exllamav2.html index c16b4e60..89c79628 100644 --- a/site/tools/exllamav2.html +++ b/site/tools/exllamav2.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/expo-starter-kit.html b/site/tools/expo-starter-kit.html index eb396e01..f6026eda 100644 --- a/site/tools/expo-starter-kit.html +++ b/site/tools/expo-starter-kit.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/eza.html b/site/tools/eza.html index 018e5944..0b7e5d82 100644 --- a/site/tools/eza.html +++ b/site/tools/eza.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/fabric.html b/site/tools/fabric.html index a141364e..0a07e399 100644 --- a/site/tools/fabric.html +++ b/site/tools/fabric.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/faiss.html b/site/tools/faiss.html index 5d9f8867..f0edd21e 100644 --- a/site/tools/faiss.html +++ b/site/tools/faiss.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/faker.html b/site/tools/faker.html index fce9e629..643df024 100644 --- a/site/tools/faker.html +++ b/site/tools/faker.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/fastapi-clean-architecture.html b/site/tools/fastapi-clean-architecture.html index 49a9c37a..deb12c9b 100644 --- a/site/tools/fastapi-clean-architecture.html +++ b/site/tools/fastapi-clean-architecture.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/fastapi-full-stack-template.html b/site/tools/fastapi-full-stack-template.html index ba228879..f4efaf50 100644 --- a/site/tools/fastapi-full-stack-template.html +++ b/site/tools/fastapi-full-stack-template.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/fastchat.html b/site/tools/fastchat.html index bef07976..f43998ae 100644 --- a/site/tools/fastchat.html +++ b/site/tools/fastchat.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/faster-whisper.html b/site/tools/faster-whisper.html index 1e215641..8b01ca57 100644 --- a/site/tools/faster-whisper.html +++ b/site/tools/faster-whisper.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/fastfetch.html b/site/tools/fastfetch.html index 98dc8130..b26bd14f 100644 --- a/site/tools/fastfetch.html +++ b/site/tools/fastfetch.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/fastify-starter.html b/site/tools/fastify-starter.html index c96ada18..7798c41d 100644 --- a/site/tools/fastify-starter.html +++ b/site/tools/fastify-starter.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/fd.html b/site/tools/fd.html index 3c0c6506..1a734384 100644 --- a/site/tools/fd.html +++ b/site/tools/fd.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/figma-for-education.html b/site/tools/figma-for-education.html index 94e02d8a..4a937222 100644 --- a/site/tools/figma-for-education.html +++ b/site/tools/figma-for-education.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/fira-code.html b/site/tools/fira-code.html index 5d77520b..c7e97eb6 100644 --- a/site/tools/fira-code.html +++ b/site/tools/fira-code.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/fishwatch-api.html b/site/tools/fishwatch-api.html index e415f99b..0a70f696 100644 --- a/site/tools/fishwatch-api.html +++ b/site/tools/fishwatch-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/flashlane.html b/site/tools/flashlane.html index 418039f4..5496944f 100644 --- a/site/tools/flashlane.html +++ b/site/tools/flashlane.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/flowise.html b/site/tools/flowise.html index 7e041847..b38ead14 100644 --- a/site/tools/flowise.html +++ b/site/tools/flowise.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/flutter-starter-kit.html b/site/tools/flutter-starter-kit.html index 2a681a2c..e0536a13 100644 --- a/site/tools/flutter-starter-kit.html +++ b/site/tools/flutter-starter-kit.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/flyio.html b/site/tools/flyio.html index e7bc19e0..7478b233 100644 --- a/site/tools/flyio.html +++ b/site/tools/flyio.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/fooocus.html b/site/tools/fooocus.html index 023bcbcb..fe68417b 100644 --- a/site/tools/fooocus.html +++ b/site/tools/fooocus.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/foxpics.html b/site/tools/foxpics.html index ba4c3fc3..58f08731 100644 --- a/site/tools/foxpics.html +++ b/site/tools/foxpics.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/frankfurter.html b/site/tools/frankfurter.html index 81fcae9a..3d8d2fbf 100644 --- a/site/tools/frankfurter.html +++ b/site/tools/frankfurter.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/free-dictionary.html b/site/tools/free-dictionary.html index 6a6c696a..4564c310 100644 --- a/site/tools/free-dictionary.html +++ b/site/tools/free-dictionary.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/freecodecamp.html b/site/tools/freecodecamp.html index caf20e6c..bd1eca8c 100644 --- a/site/tools/freecodecamp.html +++ b/site/tools/freecodecamp.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/full-stack-fastapi-template.html b/site/tools/full-stack-fastapi-template.html index 5b69f704..9f153571 100644 --- a/site/tools/full-stack-fastapi-template.html +++ b/site/tools/full-stack-fastapi-template.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/fusionauth.html b/site/tools/fusionauth.html index 34540d70..db800851 100644 --- a/site/tools/fusionauth.html +++ b/site/tools/fusionauth.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/fx.html b/site/tools/fx.html index e199f614..4ccd6d77 100644 --- a/site/tools/fx.html +++ b/site/tools/fx.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/fzf.html b/site/tools/fzf.html index 3a313745..98ed37fc 100644 --- a/site/tools/fzf.html +++ b/site/tools/fzf.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/gatling.html b/site/tools/gatling.html index dd870119..a18e91b7 100644 --- a/site/tools/gatling.html +++ b/site/tools/gatling.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/gdu.html b/site/tools/gdu.html index 7f2b64fa..97bb71e4 100644 --- a/site/tools/gdu.html +++ b/site/tools/gdu.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/geek-jokes-api.html b/site/tools/geek-jokes-api.html index 5dcd28d2..6f2bfd19 100644 --- a/site/tools/geek-jokes-api.html +++ b/site/tools/geek-jokes-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/genderize-api.html b/site/tools/genderize-api.html index 90e6d645..a2adb022 100644 --- a/site/tools/genderize-api.html +++ b/site/tools/genderize-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/genderizeio.html b/site/tools/genderizeio.html index 7f3e5a33..ab9bbd9e 100644 --- a/site/tools/genderizeio.html +++ b/site/tools/genderizeio.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/geocodexyz.html b/site/tools/geocodexyz.html index 24b79e06..f6ead628 100644 --- a/site/tools/geocodexyz.html +++ b/site/tools/geocodexyz.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/gh-dash.html b/site/tools/gh-dash.html index 19262937..6fc161c7 100644 --- a/site/tools/gh-dash.html +++ b/site/tools/gh-dash.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/gh.html b/site/tools/gh.html index e2af5d0d..a6835072 100644 --- a/site/tools/gh.html +++ b/site/tools/gh.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/ghost.html b/site/tools/ghost.html index 12dce3dc..289fc37e 100644 --- a/site/tools/ghost.html +++ b/site/tools/ghost.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/git-cliff.html b/site/tools/git-cliff.html index cea43bcb..d9b9cfc4 100644 --- a/site/tools/git-cliff.html +++ b/site/tools/git-cliff.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/git-sizer.html b/site/tools/git-sizer.html index 0edc2c8b..ebd9d051 100644 --- a/site/tools/git-sizer.html +++ b/site/tools/git-sizer.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/github-for-startups.html b/site/tools/github-for-startups.html index 29673613..c1896b73 100644 --- a/site/tools/github-for-startups.html +++ b/site/tools/github-for-startups.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/github-pages.html b/site/tools/github-pages.html index 1430497d..db15e9b1 100644 --- a/site/tools/github-pages.html +++ b/site/tools/github-pages.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/github-student-developer-pack.html b/site/tools/github-student-developer-pack.html index 60a64cf8..fcb72329 100644 --- a/site/tools/github-student-developer-pack.html +++ b/site/tools/github-student-developer-pack.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/gitlab-for-open-source.html b/site/tools/gitlab-for-open-source.html index 04088805..0c222a11 100644 --- a/site/tools/gitlab-for-open-source.html +++ b/site/tools/gitlab-for-open-source.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/gitlab-pages.html b/site/tools/gitlab-pages.html index b8b1f6f6..893354e7 100644 --- a/site/tools/gitlab-pages.html +++ b/site/tools/gitlab-pages.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/gitleaks.html b/site/tools/gitleaks.html index c11f81fd..a2135d89 100644 --- a/site/tools/gitleaks.html +++ b/site/tools/gitleaks.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/gitwhisper.html b/site/tools/gitwhisper.html index fa631df0..e6426628 100644 --- a/site/tools/gitwhisper.html +++ b/site/tools/gitwhisper.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/glab.html b/site/tools/glab.html index 0a2422ab..adf12180 100644 --- a/site/tools/glab.html +++ b/site/tools/glab.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/glances.html b/site/tools/glances.html index 3c683ed1..88ce2615 100644 --- a/site/tools/glances.html +++ b/site/tools/glances.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/glitch.html b/site/tools/glitch.html index fe1fde1f..c117aa35 100644 --- a/site/tools/glitch.html +++ b/site/tools/glitch.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/glitchtip.html b/site/tools/glitchtip.html index 43dd3e0d..049ee782 100644 --- a/site/tools/glitchtip.html +++ b/site/tools/glitchtip.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/glow.html b/site/tools/glow.html index 5470c6fc..838ced5f 100644 --- a/site/tools/glow.html +++ b/site/tools/glow.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/go-clean-architecture-api.html b/site/tools/go-clean-architecture-api.html index c3a09903..906bd80f 100644 --- a/site/tools/go-clean-architecture-api.html +++ b/site/tools/go-clean-architecture-api.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/go-clean-architecture-template.html b/site/tools/go-clean-architecture-template.html index e75bb2a4..9706573c 100644 --- a/site/tools/go-clean-architecture-template.html +++ b/site/tools/go-clean-architecture-template.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/google-cloud-for-startups.html b/site/tools/google-cloud-for-startups.html index 8ae9ddfd..1e9eb64f 100644 --- a/site/tools/google-cloud-for-startups.html +++ b/site/tools/google-cloud-for-startups.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/gping.html b/site/tools/gping.html index 5c8051d0..40b8af56 100644 --- a/site/tools/gping.html +++ b/site/tools/gping.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/gpt4all.html b/site/tools/gpt4all.html index dc992c34..d916d6fb 100644 --- a/site/tools/gpt4all.html +++ b/site/tools/gpt4all.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/gptcache.html b/site/tools/gptcache.html index d645dade..61ae453c 100644 --- a/site/tools/gptcache.html +++ b/site/tools/gptcache.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/grafana-oss.html b/site/tools/grafana-oss.html index 531be7e4..05518d10 100644 --- a/site/tools/grafana-oss.html +++ b/site/tools/grafana-oss.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/groqcloud-free-tier.html b/site/tools/groqcloud-free-tier.html index bb8fe393..70a5767c 100644 --- a/site/tools/groqcloud-free-tier.html +++ b/site/tools/groqcloud-free-tier.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/grpcurl.html b/site/tools/grpcurl.html index 7848c195..e3ed6a45 100644 --- a/site/tools/grpcurl.html +++ b/site/tools/grpcurl.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/guidance.html b/site/tools/guidance.html index 9e1191d3..5bbcf0bc 100644 --- a/site/tools/guidance.html +++ b/site/tools/guidance.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/gum.html b/site/tools/gum.html index d06cdc99..dcfcc52c 100644 --- a/site/tools/gum.html +++ b/site/tools/gum.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/gutendex.html b/site/tools/gutendex.html index 47268719..fa33c5a9 100644 --- a/site/tools/gutendex.html +++ b/site/tools/gutendex.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/hacker-news-firebase-api.html b/site/tools/hacker-news-firebase-api.html index 0ceeca29..6a0b3f1f 100644 --- a/site/tools/hacker-news-firebase-api.html +++ b/site/tools/hacker-news-firebase-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/hadolint.html b/site/tools/hadolint.html index b8d768a7..83abd242 100644 --- a/site/tools/hadolint.html +++ b/site/tools/hadolint.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/have-i-been-pwned-pwned-passwords.html b/site/tools/have-i-been-pwned-pwned-passwords.html index 46d36834..46505b3e 100644 --- a/site/tools/have-i-been-pwned-pwned-passwords.html +++ b/site/tools/have-i-been-pwned-pwned-passwords.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/helix.html b/site/tools/helix.html index ec3f9b38..ad95faa2 100644 --- a/site/tools/helix.html +++ b/site/tools/helix.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/helm.html b/site/tools/helm.html index 31437e8c..83f18677 100644 --- a/site/tools/helm.html +++ b/site/tools/helm.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/hey.html b/site/tools/hey.html index 8363429a..b5c9720a 100644 --- a/site/tools/hey.html +++ b/site/tools/hey.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/hono-starter.html b/site/tools/hono-starter.html index 2408e52b..b8b837c2 100644 --- a/site/tools/hono-starter.html +++ b/site/tools/hono-starter.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/hoppscotch.html b/site/tools/hoppscotch.html index 1b596481..96c59238 100644 --- a/site/tools/hoppscotch.html +++ b/site/tools/hoppscotch.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/htop.html b/site/tools/htop.html index bbffda33..a89811f7 100644 --- a/site/tools/htop.html +++ b/site/tools/htop.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/httpbinorg.html b/site/tools/httpbinorg.html index 116a115a..b28faf45 100644 --- a/site/tools/httpbinorg.html +++ b/site/tools/httpbinorg.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/httpie.html b/site/tools/httpie.html index 3f8418c8..22003396 100644 --- a/site/tools/httpie.html +++ b/site/tools/httpie.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/hugging-face-serverless-inference.html b/site/tools/hugging-face-serverless-inference.html index 95f218fd..0d86e85a 100644 --- a/site/tools/hugging-face-serverless-inference.html +++ b/site/tools/hugging-face-serverless-inference.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/hyperconsciousness.html b/site/tools/hyperconsciousness.html index e8a0c9ce..f8b2f117 100644 --- a/site/tools/hyperconsciousness.html +++ b/site/tools/hyperconsciousness.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/hyperfine.html b/site/tools/hyperfine.html index ae81148b..bf67cd98 100644 --- a/site/tools/hyperfine.html +++ b/site/tools/hyperfine.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/image-format-readiness.html b/site/tools/image-format-readiness.html index 2d827c85..0d102c5d 100644 --- a/site/tools/image-format-readiness.html +++ b/site/tools/image-format-readiness.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/infisical.html b/site/tools/infisical.html index 1282f842..636e47a5 100644 --- a/site/tools/infisical.html +++ b/site/tools/infisical.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/infracost.html b/site/tools/infracost.html index 40e5baf1..2a60b209 100644 --- a/site/tools/infracost.html +++ b/site/tools/infracost.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/insomnia.html b/site/tools/insomnia.html index 65ac9ae1..ccdc09a4 100644 --- a/site/tools/insomnia.html +++ b/site/tools/insomnia.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/instructor.html b/site/tools/instructor.html index 7818e0c2..1060643f 100644 --- a/site/tools/instructor.html +++ b/site/tools/instructor.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/invokeai.html b/site/tools/invokeai.html index 9643ae00..092b2e6d 100644 --- a/site/tools/invokeai.html +++ b/site/tools/invokeai.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/invokely.html b/site/tools/invokely.html index a79b893d..b35a76d2 100644 --- a/site/tools/invokely.html +++ b/site/tools/invokely.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/inxi.html b/site/tools/inxi.html index 5c8c877f..afbcae7c 100644 --- a/site/tools/inxi.html +++ b/site/tools/inxi.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/ip-api.html b/site/tools/ip-api.html index 1a3e536d..05953d25 100644 --- a/site/tools/ip-api.html +++ b/site/tools/ip-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/ipapico.html b/site/tools/ipapico.html index 5e03affe..dbdd41ae 100644 --- a/site/tools/ipapico.html +++ b/site/tools/ipapico.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/ipify.html b/site/tools/ipify.html index ba84ec7f..9db8a1fd 100644 --- a/site/tools/ipify.html +++ b/site/tools/ipify.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/ipinfoio-lite.html b/site/tools/ipinfoio-lite.html index a99e168d..799dacb1 100644 --- a/site/tools/ipinfoio-lite.html +++ b/site/tools/ipinfoio-lite.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/iredis.html b/site/tools/iredis.html index 4c5d71a5..223617e0 100644 --- a/site/tools/iredis.html +++ b/site/tools/iredis.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/jan.html b/site/tools/jan.html index 1035b44d..3cb69400 100644 --- a/site/tools/jan.html +++ b/site/tools/jan.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/jest.html b/site/tools/jest.html index bbde6c29..b48af77c 100644 --- a/site/tools/jest.html +++ b/site/tools/jest.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/jetbrains-free-open-source-license.html b/site/tools/jetbrains-free-open-source-license.html index 22b62eb7..1db0241b 100644 --- a/site/tools/jetbrains-free-open-source-license.html +++ b/site/tools/jetbrains-free-open-source-license.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/jetbrains-mono.html b/site/tools/jetbrains-mono.html index d0b856e3..0bad8267 100644 --- a/site/tools/jetbrains-mono.html +++ b/site/tools/jetbrains-mono.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/jetbrains-student-pack.html b/site/tools/jetbrains-student-pack.html index f04f52f2..f7aaed8e 100644 --- a/site/tools/jetbrains-student-pack.html +++ b/site/tools/jetbrains-student-pack.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/jikan-api.html b/site/tools/jikan-api.html index 2e6768ab..1b670b4b 100644 --- a/site/tools/jikan-api.html +++ b/site/tools/jikan-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/jless.html b/site/tools/jless.html index 01961347..9da46d2c 100644 --- a/site/tools/jless.html +++ b/site/tools/jless.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/jmeter.html b/site/tools/jmeter.html index 0747ee48..51ced590 100644 --- a/site/tools/jmeter.html +++ b/site/tools/jmeter.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/jokeapi.html b/site/tools/jokeapi.html index 6fa623dd..7bd93b2d 100644 --- a/site/tools/jokeapi.html +++ b/site/tools/jokeapi.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/jq.html b/site/tools/jq.html index bc696cdf..78419e74 100644 --- a/site/tools/jq.html +++ b/site/tools/jq.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/json-server.html b/site/tools/json-server.html index e1822be5..3f8a4af6 100644 --- a/site/tools/json-server.html +++ b/site/tools/json-server.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/jsonbinio.html b/site/tools/jsonbinio.html index 8edadf49..b53be27d 100644 --- a/site/tools/jsonbinio.html +++ b/site/tools/jsonbinio.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/jsonplaceholder.html b/site/tools/jsonplaceholder.html index e0b81306..8d72b33c 100644 --- a/site/tools/jsonplaceholder.html +++ b/site/tools/jsonplaceholder.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/k6.html b/site/tools/k6.html index 62fe8bf3..34bbca46 100644 --- a/site/tools/k6.html +++ b/site/tools/k6.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/k9s.html b/site/tools/k9s.html index 90c767ac..a29ca063 100644 --- a/site/tools/k9s.html +++ b/site/tools/k9s.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/kanye-rest.html b/site/tools/kanye-rest.html index 1d0137ee..2a328bbf 100644 --- a/site/tools/kanye-rest.html +++ b/site/tools/kanye-rest.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/karate-framework.html b/site/tools/karate-framework.html index fce9c0bc..af91a0ee 100644 --- a/site/tools/karate-framework.html +++ b/site/tools/karate-framework.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/keycloak.html b/site/tools/keycloak.html index 91e370de..d09e9ea6 100644 --- a/site/tools/keycloak.html +++ b/site/tools/keycloak.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/khoj.html b/site/tools/khoj.html index f023e190..1ffb1cc9 100644 --- a/site/tools/khoj.html +++ b/site/tools/khoj.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/kind.html b/site/tools/kind.html index 3c4149a8..078c9e14 100644 --- a/site/tools/kind.html +++ b/site/tools/kind.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/kokoro-tts.html b/site/tools/kokoro-tts.html index 829d7f9d..934428c2 100644 --- a/site/tools/kokoro-tts.html +++ b/site/tools/kokoro-tts.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/koyeb.html b/site/tools/koyeb.html index 03ffce0a..907deb34 100644 --- a/site/tools/koyeb.html +++ b/site/tools/koyeb.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/kubectx.html b/site/tools/kubectx.html index 1e8b0b0d..231ed392 100644 --- a/site/tools/kubectx.html +++ b/site/tools/kubectx.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/kustomize.html b/site/tools/kustomize.html index 929a4a2a..983069ca 100644 --- a/site/tools/kustomize.html +++ b/site/tools/kustomize.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/lancedb.html b/site/tools/lancedb.html index cc184493..eaa83c16 100644 --- a/site/tools/lancedb.html +++ b/site/tools/lancedb.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/langchain-nextjs-template.html b/site/tools/langchain-nextjs-template.html index 3e298026..e35b4dfa 100644 --- a/site/tools/langchain-nextjs-template.html +++ b/site/tools/langchain-nextjs-template.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/langchain.html b/site/tools/langchain.html index 09b6fafc..5b3f1f6d 100644 --- a/site/tools/langchain.html +++ b/site/tools/langchain.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/langflow.html b/site/tools/langflow.html index 49fa6a3c..25e820d4 100644 --- a/site/tools/langflow.html +++ b/site/tools/langflow.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/launch-library-2.html b/site/tools/launch-library-2.html index 544071e3..f59c5f5e 100644 --- a/site/tools/launch-library-2.html +++ b/site/tools/launch-library-2.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/lazydocker.html b/site/tools/lazydocker.html index 5c5bbada..df31fde9 100644 --- a/site/tools/lazydocker.html +++ b/site/tools/lazydocker.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/lazygit.html b/site/tools/lazygit.html index 85bc98f8..7919d580 100644 --- a/site/tools/lazygit.html +++ b/site/tools/lazygit.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/lazysql.html b/site/tools/lazysql.html index 63e2ac0b..c4ec0d03 100644 --- a/site/tools/lazysql.html +++ b/site/tools/lazysql.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/leanfps.html b/site/tools/leanfps.html index c2ab32a2..732a6b33 100644 --- a/site/tools/leanfps.html +++ b/site/tools/leanfps.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/lf.html b/site/tools/lf.html index 19e5e701..8786f99b 100644 --- a/site/tools/lf.html +++ b/site/tools/lf.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/librechat.html b/site/tools/librechat.html index 1d557410..827d9609 100644 --- a/site/tools/librechat.html +++ b/site/tools/librechat.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/lighthouse-ci.html b/site/tools/lighthouse-ci.html index 363be606..a456ab18 100644 --- a/site/tools/lighthouse-ci.html +++ b/site/tools/lighthouse-ci.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/litecli.html b/site/tools/litecli.html index ac6247a6..ec9c7e2e 100644 --- a/site/tools/litecli.html +++ b/site/tools/litecli.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/litellm.html b/site/tools/litellm.html index 167dd7cb..1afc1006 100644 --- a/site/tools/litellm.html +++ b/site/tools/litellm.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/llama-factory.html b/site/tools/llama-factory.html index 0eee9239..781af996 100644 --- a/site/tools/llama-factory.html +++ b/site/tools/llama-factory.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/llamacpp.html b/site/tools/llamacpp.html index cd5e7921..c1e51f4f 100644 --- a/site/tools/llamacpp.html +++ b/site/tools/llamacpp.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/llamafile.html b/site/tools/llamafile.html index 25042435..0bb303fe 100644 --- a/site/tools/llamafile.html +++ b/site/tools/llamafile.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/llamaindex.html b/site/tools/llamaindex.html index 9aafd26b..5acd4233 100644 --- a/site/tools/llamaindex.html +++ b/site/tools/llamaindex.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/llava.html b/site/tools/llava.html index 2f27c149..baede18f 100644 --- a/site/tools/llava.html +++ b/site/tools/llava.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/lmql.html b/site/tools/lmql.html index 40cbfb4b..5550b324 100644 --- a/site/tools/lmql.html +++ b/site/tools/lmql.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/localai.html b/site/tools/localai.html index 155c72d3..5402ccfc 100644 --- a/site/tools/localai.html +++ b/site/tools/localai.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/locust.html b/site/tools/locust.html index f15dd1a3..bd2dcf84 100644 --- a/site/tools/locust.html +++ b/site/tools/locust.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/logto.html b/site/tools/logto.html index 81542510..7e9b4afc 100644 --- a/site/tools/logto.html +++ b/site/tools/logto.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/loki.html b/site/tools/loki.html index c633097f..d458e267 100644 --- a/site/tools/loki.html +++ b/site/tools/loki.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/lost-pixel.html b/site/tools/lost-pixel.html index c4722af4..0a459f16 100644 --- a/site/tools/lost-pixel.html +++ b/site/tools/lost-pixel.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/lucia.html b/site/tools/lucia.html index 901d62f7..259fbcb0 100644 --- a/site/tools/lucia.html +++ b/site/tools/lucia.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/maestro.html b/site/tools/maestro.html index 2a5b22a5..fae75a9a 100644 --- a/site/tools/maestro.html +++ b/site/tools/maestro.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/magic-wormhole.html b/site/tools/magic-wormhole.html index 4129cb2e..9abdd6b9 100644 --- a/site/tools/magic-wormhole.html +++ b/site/tools/magic-wormhole.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/mailgun-free-foundation.html b/site/tools/mailgun-free-foundation.html index 00bc566e..44d9c3c5 100644 --- a/site/tools/mailgun-free-foundation.html +++ b/site/tools/mailgun-free-foundation.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/mcfly.html b/site/tools/mcfly.html index db9417b7..7045925f 100644 --- a/site/tools/mcfly.html +++ b/site/tools/mcfly.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/mcp-dubai.html b/site/tools/mcp-dubai.html index 88965665..a78470d4 100644 --- a/site/tools/mcp-dubai.html +++ b/site/tools/mcp-dubai.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/medusa.html b/site/tools/medusa.html index 618a96ac..32729809 100644 --- a/site/tools/medusa.html +++ b/site/tools/medusa.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/meilisearch.html b/site/tools/meilisearch.html index e96d91e9..0d0d2329 100644 --- a/site/tools/meilisearch.html +++ b/site/tools/meilisearch.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/mem0.html b/site/tools/mem0.html index 65d346ec..5cae898f 100644 --- a/site/tools/mem0.html +++ b/site/tools/mem0.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/meme-generator-api.html b/site/tools/meme-generator-api.html index 6462f518..6c47dda7 100644 --- a/site/tools/meme-generator-api.html +++ b/site/tools/meme-generator-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/metagpt.html b/site/tools/metagpt.html index 4c346145..3c880a2e 100644 --- a/site/tools/metagpt.html +++ b/site/tools/metagpt.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/microsoft-for-startups-founders-hub.html b/site/tools/microsoft-for-startups-founders-hub.html index fb97bbea..ff4fa6be 100644 --- a/site/tools/microsoft-for-startups-founders-hub.html +++ b/site/tools/microsoft-for-startups-founders-hub.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/miller.html b/site/tools/miller.html index 285b599f..923d21cd 100644 --- a/site/tools/miller.html +++ b/site/tools/miller.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/milvus.html b/site/tools/milvus.html index bcf533f3..c317df21 100644 --- a/site/tools/milvus.html +++ b/site/tools/milvus.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/mimesis.html b/site/tools/mimesis.html index a80a1efa..f3076c27 100644 --- a/site/tools/mimesis.html +++ b/site/tools/mimesis.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/mindsdb.html b/site/tools/mindsdb.html index 8ec78762..581ea1aa 100644 --- a/site/tools/mindsdb.html +++ b/site/tools/mindsdb.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/minikube.html b/site/tools/minikube.html index c8225de0..a0675a05 100644 --- a/site/tools/minikube.html +++ b/site/tools/minikube.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/minio.html b/site/tools/minio.html index e288e379..14eff6af 100644 --- a/site/tools/minio.html +++ b/site/tools/minio.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/mise.html b/site/tools/mise.html index 3de19120..4d56b6af 100644 --- a/site/tools/mise.html +++ b/site/tools/mise.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/mitmproxy.html b/site/tools/mitmproxy.html index 6969a0b1..72cba07d 100644 --- a/site/tools/mitmproxy.html +++ b/site/tools/mitmproxy.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/mockoon.html b/site/tools/mockoon.html index 5576c234..9f564006 100644 --- a/site/tools/mockoon.html +++ b/site/tools/mockoon.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/mockserver.html b/site/tools/mockserver.html index 1778b04d..9a0ea409 100644 --- a/site/tools/mockserver.html +++ b/site/tools/mockserver.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/mockyio.html b/site/tools/mockyio.html index 5a76d4ff..442c53ad 100644 --- a/site/tools/mockyio.html +++ b/site/tools/mockyio.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/mongodb-atlas.html b/site/tools/mongodb-atlas.html index 8ee01ace..1def1cdd 100644 --- a/site/tools/mongodb-atlas.html +++ b/site/tools/mongodb-atlas.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/mongodb-for-startups.html b/site/tools/mongodb-for-startups.html index 2468106b..eeac8b8a 100644 --- a/site/tools/mongodb-for-startups.html +++ b/site/tools/mongodb-for-startups.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/msw-mock-service-worker.html b/site/tools/msw-mock-service-worker.html index 980bd2fb..9947fd9b 100644 --- a/site/tools/msw-mock-service-worker.html +++ b/site/tools/msw-mock-service-worker.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/mycli.html b/site/tools/mycli.html index ba7d4afe..9f5e5d38 100644 --- a/site/tools/mycli.html +++ b/site/tools/mycli.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/nasa-open-apis.html b/site/tools/nasa-open-apis.html index 84839b48..5928317a 100644 --- a/site/tools/nasa-open-apis.html +++ b/site/tools/nasa-open-apis.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/nationalize-api.html b/site/tools/nationalize-api.html index e2e47961..c072608e 100644 --- a/site/tools/nationalize-api.html +++ b/site/tools/nationalize-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/nationalizeio.html b/site/tools/nationalizeio.html index 37c31b2d..39b6e086 100644 --- a/site/tools/nationalizeio.html +++ b/site/tools/nationalizeio.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/ncdu.html b/site/tools/ncdu.html index 1db2ab47..200d027d 100644 --- a/site/tools/ncdu.html +++ b/site/tools/ncdu.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/nemo-guardrails.html b/site/tools/nemo-guardrails.html index 23be8270..cbdc3cc7 100644 --- a/site/tools/nemo-guardrails.html +++ b/site/tools/nemo-guardrails.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/neon.html b/site/tools/neon.html index 99bbeb67..b9150600 100644 --- a/site/tools/neon.html +++ b/site/tools/neon.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/nestjs-starter.html b/site/tools/nestjs-starter.html index 74657997..dac42918 100644 --- a/site/tools/nestjs-starter.html +++ b/site/tools/nestjs-starter.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/netlify-for-open-source.html b/site/tools/netlify-for-open-source.html index 8a10abb5..ad6bff1b 100644 --- a/site/tools/netlify-for-open-source.html +++ b/site/tools/netlify-for-open-source.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/netlify.html b/site/tools/netlify.html index 7946aa83..997bfcae 100644 --- a/site/tools/netlify.html +++ b/site/tools/netlify.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/newman.html b/site/tools/newman.html index d4115894..6bc6b409 100644 --- a/site/tools/newman.html +++ b/site/tools/newman.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/next-forge.html b/site/tools/next-forge.html index c8492e11..031f9c76 100644 --- a/site/tools/next-forge.html +++ b/site/tools/next-forge.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/nextjs-enterprise-boilerplate.html b/site/tools/nextjs-enterprise-boilerplate.html index 85db4373..d655d210 100644 --- a/site/tools/nextjs-enterprise-boilerplate.html +++ b/site/tools/nextjs-enterprise-boilerplate.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/nginx-proxy-manager.html b/site/tools/nginx-proxy-manager.html index 9120f854..80032d2b 100644 --- a/site/tools/nginx-proxy-manager.html +++ b/site/tools/nginx-proxy-manager.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/nightwatchjs.html b/site/tools/nightwatchjs.html index c9e8fd62..ff33e643 100644 --- a/site/tools/nightwatchjs.html +++ b/site/tools/nightwatchjs.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/nnn.html b/site/tools/nnn.html index a0dd117c..5fe918d7 100644 --- a/site/tools/nnn.html +++ b/site/tools/nnn.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/nominatim-openstreetmap.html b/site/tools/nominatim-openstreetmap.html index 02dcd032..6ff1f6e2 100644 --- a/site/tools/nominatim-openstreetmap.html +++ b/site/tools/nominatim-openstreetmap.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/notion-for-education.html b/site/tools/notion-for-education.html index bb93054e..71c8943a 100644 --- a/site/tools/notion-for-education.html +++ b/site/tools/notion-for-education.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/nuclei.html b/site/tools/nuclei.html index 577984b5..461d4561 100644 --- a/site/tools/nuclei.html +++ b/site/tools/nuclei.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/nushell.html b/site/tools/nushell.html index acf1ec5f..94b4d211 100644 --- a/site/tools/nushell.html +++ b/site/tools/nushell.html @@ -121,7 +121,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/nuxt-3-starter.html b/site/tools/nuxt-3-starter.html index 33b4f7de..45aa738e 100644 --- a/site/tools/nuxt-3-starter.html +++ b/site/tools/nuxt-3-starter.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/ollama.html b/site/tools/ollama.html index 26997ab3..3df1e21f 100644 --- a/site/tools/ollama.html +++ b/site/tools/ollama.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/onefetch.html b/site/tools/onefetch.html index 77c66cef..b64c0e12 100644 --- a/site/tools/onefetch.html +++ b/site/tools/onefetch.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/open-brewery-db.html b/site/tools/open-brewery-db.html index b4743acc..4b5318dd 100644 --- a/site/tools/open-brewery-db.html +++ b/site/tools/open-brewery-db.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/open-food-facts.html b/site/tools/open-food-facts.html index 79e343d5..f25073c8 100644 --- a/site/tools/open-food-facts.html +++ b/site/tools/open-food-facts.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/open-interpreter.html b/site/tools/open-interpreter.html index f01f68e4..741b2279 100644 --- a/site/tools/open-interpreter.html +++ b/site/tools/open-interpreter.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/open-library-covers-api.html b/site/tools/open-library-covers-api.html index 99cbf8c6..7897465d 100644 --- a/site/tools/open-library-covers-api.html +++ b/site/tools/open-library-covers-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/open-library.html b/site/tools/open-library.html index 4ff2e6fb..b60587e8 100644 --- a/site/tools/open-library.html +++ b/site/tools/open-library.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/open-meteo-air-quality.html b/site/tools/open-meteo-air-quality.html index 863642bc..45ac8722 100644 --- a/site/tools/open-meteo-air-quality.html +++ b/site/tools/open-meteo-air-quality.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/open-meteo.html b/site/tools/open-meteo.html index 304b0ce7..228e594f 100644 --- a/site/tools/open-meteo.html +++ b/site/tools/open-meteo.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/open-source-ideas.html b/site/tools/open-source-ideas.html index 1dcf5114..3fb8e250 100644 --- a/site/tools/open-source-ideas.html +++ b/site/tools/open-source-ideas.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/open-source-licenses-api.html b/site/tools/open-source-licenses-api.html index 82003cb5..4dc7934c 100644 --- a/site/tools/open-source-licenses-api.html +++ b/site/tools/open-source-licenses-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/open-trivia-db.html b/site/tools/open-trivia-db.html index d5061d7f..b8734006 100644 --- a/site/tools/open-trivia-db.html +++ b/site/tools/open-trivia-db.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/open-webui.html b/site/tools/open-webui.html index 807de1f0..42203776 100644 --- a/site/tools/open-webui.html +++ b/site/tools/open-webui.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/openapi-example-validator.html b/site/tools/openapi-example-validator.html index 691fab64..70441608 100644 --- a/site/tools/openapi-example-validator.html +++ b/site/tools/openapi-example-validator.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/opencodeinterpreter.html b/site/tools/opencodeinterpreter.html index f664990a..29240c96 100644 --- a/site/tools/opencodeinterpreter.html +++ b/site/tools/opencodeinterpreter.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/openhands.html b/site/tools/openhands.html index 0ec45c06..75743e69 100644 --- a/site/tools/openhands.html +++ b/site/tools/openhands.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/opensky-network-api.html b/site/tools/opensky-network-api.html index db7e50ef..fd2e6d85 100644 --- a/site/tools/opensky-network-api.html +++ b/site/tools/opensky-network-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/oracle-cloud-always-free.html b/site/tools/oracle-cloud-always-free.html index 2985001d..c9ca2566 100644 --- a/site/tools/oracle-cloud-always-free.html +++ b/site/tools/oracle-cloud-always-free.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/orkasvideostudio.html b/site/tools/orkasvideostudio.html index 5c6ce749..8fce74f9 100644 --- a/site/tools/orkasvideostudio.html +++ b/site/tools/orkasvideostudio.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/ory-kratos.html b/site/tools/ory-kratos.html index f9699988..2a3df2b0 100644 --- a/site/tools/ory-kratos.html +++ b/site/tools/ory-kratos.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/osv-scanner.html b/site/tools/osv-scanner.html index f5b6128e..e0f7feb6 100644 --- a/site/tools/osv-scanner.html +++ b/site/tools/osv-scanner.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/outlines.html b/site/tools/outlines.html index ee8ba71a..b2982aee 100644 --- a/site/tools/outlines.html +++ b/site/tools/outlines.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/owasp-zap.html b/site/tools/owasp-zap.html index 83a7c3f0..fb029884 100644 --- a/site/tools/owasp-zap.html +++ b/site/tools/owasp-zap.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/pa11y.html b/site/tools/pa11y.html index 73538e1d..02432964 100644 --- a/site/tools/pa11y.html +++ b/site/tools/pa11y.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/pact.html b/site/tools/pact.html index c17248ce..b1f00266 100644 --- a/site/tools/pact.html +++ b/site/tools/pact.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/pactumjs.html b/site/tools/pactumjs.html index 89689a83..d254998e 100644 --- a/site/tools/pactumjs.html +++ b/site/tools/pactumjs.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/paddleocr.html b/site/tools/paddleocr.html index 6d01fb1e..995f80f4 100644 --- a/site/tools/paddleocr.html +++ b/site/tools/paddleocr.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/pandoc.html b/site/tools/pandoc.html index 273029aa..7ef4330b 100644 --- a/site/tools/pandoc.html +++ b/site/tools/pandoc.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/payload-cms-starter.html b/site/tools/payload-cms-starter.html index 4cc25930..fd07a565 100644 --- a/site/tools/payload-cms-starter.html +++ b/site/tools/payload-cms-starter.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/peft.html b/site/tools/peft.html index 861d0ebd..86d76065 100644 --- a/site/tools/peft.html +++ b/site/tools/peft.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/pgcli.html b/site/tools/pgcli.html index deded900..af040731 100644 --- a/site/tools/pgcli.html +++ b/site/tools/pgcli.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/pgvector.html b/site/tools/pgvector.html index 2099490f..b871aff1 100644 --- a/site/tools/pgvector.html +++ b/site/tools/pgvector.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/piper-tts.html b/site/tools/piper-tts.html index d404a53f..4695508c 100644 --- a/site/tools/piper-tts.html +++ b/site/tools/piper-tts.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/pixelmatch.html b/site/tools/pixelmatch.html index a9e8bd48..afad24cb 100644 --- a/site/tools/pixelmatch.html +++ b/site/tools/pixelmatch.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/plausible-analytics-self-hosted.html b/site/tools/plausible-analytics-self-hosted.html index afc276a6..1b4e277b 100644 --- a/site/tools/plausible-analytics-self-hosted.html +++ b/site/tools/plausible-analytics-self-hosted.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/playwright.html b/site/tools/playwright.html index 4011e905..359f8a35 100644 --- a/site/tools/playwright.html +++ b/site/tools/playwright.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/pnpm.html b/site/tools/pnpm.html index fd71f274..8409231b 100644 --- a/site/tools/pnpm.html +++ b/site/tools/pnpm.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/pocketbase-1-click-backend.html b/site/tools/pocketbase-1-click-backend.html index e169a1c2..673377bb 100644 --- a/site/tools/pocketbase-1-click-backend.html +++ b/site/tools/pocketbase-1-click-backend.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/pocketbase.html b/site/tools/pocketbase.html index 64d4809c..e8cb647e 100644 --- a/site/tools/pocketbase.html +++ b/site/tools/pocketbase.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/poetrydb.html b/site/tools/poetrydb.html index 64814041..a4b51c8b 100644 --- a/site/tools/poetrydb.html +++ b/site/tools/poetrydb.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/pokeapi.html b/site/tools/pokeapi.html index de49f384..57f3af67 100644 --- a/site/tools/pokeapi.html +++ b/site/tools/pokeapi.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/portainer-community.html b/site/tools/portainer-community.html index f6fe8123..0565fc74 100644 --- a/site/tools/portainer-community.html +++ b/site/tools/portainer-community.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/posthog.html b/site/tools/posthog.html index fb3c52e1..f5babd97 100644 --- a/site/tools/posthog.html +++ b/site/tools/posthog.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/postman-echo.html b/site/tools/postman-echo.html index 7263d408..bff36334 100644 --- a/site/tools/postman-echo.html +++ b/site/tools/postman-echo.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/postman-open-source-sponsorship.html b/site/tools/postman-open-source-sponsorship.html index d5a99e9c..7abf2940 100644 --- a/site/tools/postman-open-source-sponsorship.html +++ b/site/tools/postman-open-source-sponsorship.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/prism.html b/site/tools/prism.html index bc168210..bce0863d 100644 --- a/site/tools/prism.html +++ b/site/tools/prism.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/privategpt.html b/site/tools/privategpt.html index a23b3591..993e462d 100644 --- a/site/tools/privategpt.html +++ b/site/tools/privategpt.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/procs.html b/site/tools/procs.html index 6d452d97..8cb870a4 100644 --- a/site/tools/procs.html +++ b/site/tools/procs.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/prometheus.html b/site/tools/prometheus.html index 8878fa20..942f8cba 100644 --- a/site/tools/prometheus.html +++ b/site/tools/prometheus.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/promptfoo.html b/site/tools/promptfoo.html index 90b6ef14..c5a62fab 100644 --- a/site/tools/promptfoo.html +++ b/site/tools/promptfoo.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/public-apis-index.html b/site/tools/public-apis-index.html index 55ac2495..5d950e71 100644 --- a/site/tools/public-apis-index.html +++ b/site/tools/public-apis-index.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/puppeteer.html b/site/tools/puppeteer.html index 9e305949..0844b610 100644 --- a/site/tools/puppeteer.html +++ b/site/tools/puppeteer.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/q.html b/site/tools/q.html index 1b9cb1f2..59f873eb 100644 --- a/site/tools/q.html +++ b/site/tools/q.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/qdrant-cloud.html b/site/tools/qdrant-cloud.html index 5b3af421..1d6abc98 100644 --- a/site/tools/qdrant-cloud.html +++ b/site/tools/qdrant-cloud.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/qdrant.html b/site/tools/qdrant.html index 3fa2d77b..8512b339 100644 --- a/site/tools/qdrant.html +++ b/site/tools/qdrant.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/qr-code-generator-api.html b/site/tools/qr-code-generator-api.html index ebb4e29c..a9daa7f2 100644 --- a/site/tools/qr-code-generator-api.html +++ b/site/tools/qr-code-generator-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/quotable-api.html b/site/tools/quotable-api.html index 51dfa69e..7531d636 100644 --- a/site/tools/quotable-api.html +++ b/site/tools/quotable-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/rabbitmq.html b/site/tools/rabbitmq.html index 8da45c5a..c9c118cd 100644 --- a/site/tools/rabbitmq.html +++ b/site/tools/rabbitmq.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/ragas.html b/site/tools/ragas.html index 991f1471..52148f2f 100644 --- a/site/tools/ragas.html +++ b/site/tools/ragas.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/ragflow.html b/site/tools/ragflow.html index 78802fde..43af7f54 100644 --- a/site/tools/ragflow.html +++ b/site/tools/ragflow.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/railway.html b/site/tools/railway.html index c40fbf81..27bf3c7f 100644 --- a/site/tools/railway.html +++ b/site/tools/railway.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/randomfox-api.html b/site/tools/randomfox-api.html index 76975e2f..7e7bce64 100644 --- a/site/tools/randomfox-api.html +++ b/site/tools/randomfox-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/randomuserme.html b/site/tools/randomuserme.html index f1a1d55d..b11ef019 100644 --- a/site/tools/randomuserme.html +++ b/site/tools/randomuserme.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/ranger.html b/site/tools/ranger.html index 211b1351..8ab899c1 100644 --- a/site/tools/ranger.html +++ b/site/tools/ranger.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/reddit-json-api.html b/site/tools/reddit-json-api.html index be312ae1..94b350c6 100644 --- a/site/tools/reddit-json-api.html +++ b/site/tools/reddit-json-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/redis-cloud.html b/site/tools/redis-cloud.html index 083d5b38..625531c4 100644 --- a/site/tools/redis-cloud.html +++ b/site/tools/redis-cloud.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/refine.html b/site/tools/refine.html index f0bca89c..394ee3e5 100644 --- a/site/tools/refine.html +++ b/site/tools/refine.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/remix-indie-stack.html b/site/tools/remix-indie-stack.html index 4cf3b419..52fc3658 100644 --- a/site/tools/remix-indie-stack.html +++ b/site/tools/remix-indie-stack.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/render.html b/site/tools/render.html index 7d234025..0c4b7035 100644 --- a/site/tools/render.html +++ b/site/tools/render.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/reqres.html b/site/tools/reqres.html index 3eb8dadf..3c2253b4 100644 --- a/site/tools/reqres.html +++ b/site/tools/reqres.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/requestbin.html b/site/tools/requestbin.html index a3258bd8..3b440988 100644 --- a/site/tools/requestbin.html +++ b/site/tools/requestbin.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/resend.html b/site/tools/resend.html index d3c313d4..c820708d 100644 --- a/site/tools/resend.html +++ b/site/tools/resend.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/rest-countries-v3.html b/site/tools/rest-countries-v3.html index 1931085b..c101b243 100644 --- a/site/tools/rest-countries-v3.html +++ b/site/tools/rest-countries-v3.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/rest-countries.html b/site/tools/rest-countries.html index 6a086725..a821d49f 100644 --- a/site/tools/rest-countries.html +++ b/site/tools/rest-countries.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/restassured.html b/site/tools/restassured.html index cbb8fefe..759923ee 100644 --- a/site/tools/restassured.html +++ b/site/tools/restassured.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/rick-and-morty-api.html b/site/tools/rick-and-morty-api.html index 9b3b0828..65334735 100644 --- a/site/tools/rick-and-morty-api.html +++ b/site/tools/rick-and-morty-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/ripgrep.html b/site/tools/ripgrep.html index d52b43b1..d20554d8 100644 --- a/site/tools/ripgrep.html +++ b/site/tools/ripgrep.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/robohash.html b/site/tools/robohash.html index 2152f006..5d1e8221 100644 --- a/site/tools/robohash.html +++ b/site/tools/robohash.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/rowsafe.html b/site/tools/rowsafe.html index 9be5f245..17edbdb3 100644 --- a/site/tools/rowsafe.html +++ b/site/tools/rowsafe.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/rust-axum-starter.html b/site/tools/rust-axum-starter.html index 1821fff7..df28e091 100644 --- a/site/tools/rust-axum-starter.html +++ b/site/tools/rust-axum-starter.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/saas-boilerplate-by-boxyhq.html b/site/tools/saas-boilerplate-by-boxyhq.html index 0d59052b..0815aa41 100644 --- a/site/tools/saas-boilerplate-by-boxyhq.html +++ b/site/tools/saas-boilerplate-by-boxyhq.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/safety-cli.html b/site/tools/safety-cli.html index 3df9eba6..a33f63a5 100644 --- a/site/tools/safety-cli.html +++ b/site/tools/safety-cli.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/scaleway-stardust-object-storage.html b/site/tools/scaleway-stardust-object-storage.html index 6b38df1d..a8db895d 100644 --- a/site/tools/scaleway-stardust-object-storage.html +++ b/site/tools/scaleway-stardust-object-storage.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/schemathesis.html b/site/tools/schemathesis.html index 183777ce..5aea7a04 100644 --- a/site/tools/schemathesis.html +++ b/site/tools/schemathesis.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/sd.html b/site/tools/sd.html index 76bcf3fa..e9e8fedc 100644 --- a/site/tools/sd.html +++ b/site/tools/sd.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/searxng.html b/site/tools/searxng.html index 7a7c5bfd..109fbaba 100644 --- a/site/tools/searxng.html +++ b/site/tools/searxng.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/segment-anything-sam.html b/site/tools/segment-anything-sam.html index c7fde83e..b8dfe7c1 100644 --- a/site/tools/segment-anything-sam.html +++ b/site/tools/segment-anything-sam.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/selenium.html b/site/tools/selenium.html index a02cf850..345a806f 100644 --- a/site/tools/selenium.html +++ b/site/tools/selenium.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/semgrep.html b/site/tools/semgrep.html index b8614c61..79423a2c 100644 --- a/site/tools/semgrep.html +++ b/site/tools/semgrep.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/sendgrid-free-tier.html b/site/tools/sendgrid-free-tier.html index 6bea4bb4..7f32ae5b 100644 --- a/site/tools/sendgrid-free-tier.html +++ b/site/tools/sendgrid-free-tier.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/sentry-for-open-source.html b/site/tools/sentry-for-open-source.html index 2d2543c0..cce9afaf 100644 --- a/site/tools/sentry-for-open-source.html +++ b/site/tools/sentry-for-open-source.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/sglang.html b/site/tools/sglang.html index 3f96b18c..f4cd6cd6 100644 --- a/site/tools/sglang.html +++ b/site/tools/sglang.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/shadcn-taxonomy.html b/site/tools/shadcn-taxonomy.html index b7560ee8..cb01ae5b 100644 --- a/site/tools/shadcn-taxonomy.html +++ b/site/tools/shadcn-taxonomy.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/shibeonline.html b/site/tools/shibeonline.html index f04b99dc..268521ff 100644 --- a/site/tools/shibeonline.html +++ b/site/tools/shibeonline.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/shipvela-publishing-plugin-and-skills.html b/site/tools/shipvela-publishing-plugin-and-skills.html index 4397a9bf..823d7b8d 100644 --- a/site/tools/shipvela-publishing-plugin-and-skills.html +++ b/site/tools/shipvela-publishing-plugin-and-skills.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/snyk-for-open-source.html b/site/tools/snyk-for-open-source.html index 2afaa246..945422eb 100644 --- a/site/tools/snyk-for-open-source.html +++ b/site/tools/snyk-for-open-source.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/solar-system-opendata-api.html b/site/tools/solar-system-opendata-api.html index 9b1d9313..f2f66218 100644 --- a/site/tools/solar-system-opendata-api.html +++ b/site/tools/solar-system-opendata-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/solaris-dev-shop.html b/site/tools/solaris-dev-shop.html index ee7ac40a..f2a2e981 100644 --- a/site/tools/solaris-dev-shop.html +++ b/site/tools/solaris-dev-shop.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/sonarqube-community.html b/site/tools/sonarqube-community.html index 9821b3e9..a8595777 100644 --- a/site/tools/sonarqube-community.html +++ b/site/tools/sonarqube-community.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/spacex-rest-api.html b/site/tools/spacex-rest-api.html index c3a486fc..a583f65c 100644 --- a/site/tools/spacex-rest-api.html +++ b/site/tools/spacex-rest-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/speedtest-cli.html b/site/tools/speedtest-cli.html index 6eb39753..50ebeaaa 100644 --- a/site/tools/speedtest-cli.html +++ b/site/tools/speedtest-cli.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/spring-boot-initializr-template.html b/site/tools/spring-boot-initializr-template.html index 737c1b49..758ce8b5 100644 --- a/site/tools/spring-boot-initializr-template.html +++ b/site/tools/spring-boot-initializr-template.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/stable-diffusion-webui.html b/site/tools/stable-diffusion-webui.html index c765c031..6052e0f9 100644 --- a/site/tools/stable-diffusion-webui.html +++ b/site/tools/stable-diffusion-webui.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/starship.html b/site/tools/starship.html index bc40599d..fec6907c 100644 --- a/site/tools/starship.html +++ b/site/tools/starship.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/stern.html b/site/tools/stern.html index 15d07b9f..5cd6d64e 100644 --- a/site/tools/stern.html +++ b/site/tools/stern.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/stirling-pdf-ultimate-toolbox.html b/site/tools/stirling-pdf-ultimate-toolbox.html index 3bba5fd3..49482934 100644 --- a/site/tools/stirling-pdf-ultimate-toolbox.html +++ b/site/tools/stirling-pdf-ultimate-toolbox.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/stonesvn.html b/site/tools/stonesvn.html index 99cc03c0..a90ed13b 100644 --- a/site/tools/stonesvn.html +++ b/site/tools/stonesvn.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/strapi.html b/site/tools/strapi.html index b78fe535..6969fe1d 100644 --- a/site/tools/strapi.html +++ b/site/tools/strapi.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/streamlit-ai-dashboard-starter.html b/site/tools/streamlit-ai-dashboard-starter.html index ea028ecd..63c99178 100644 --- a/site/tools/streamlit-ai-dashboard-starter.html +++ b/site/tools/streamlit-ai-dashboard-starter.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/stryker.html b/site/tools/stryker.html index 8a103c32..23ee884c 100644 --- a/site/tools/stryker.html +++ b/site/tools/stryker.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/sunrise-sunsetorg-api.html b/site/tools/sunrise-sunsetorg-api.html index 4c64456a..8166e2f9 100644 --- a/site/tools/sunrise-sunsetorg-api.html +++ b/site/tools/sunrise-sunsetorg-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/supabase.html b/site/tools/supabase.html index f43635b2..4bd9b270 100644 --- a/site/tools/supabase.html +++ b/site/tools/supabase.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/superagi.html b/site/tools/superagi.html index 9bc756b8..eedb71a6 100644 --- a/site/tools/superagi.html +++ b/site/tools/superagi.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/superfile.html b/site/tools/superfile.html index 23756b39..28e4e8d3 100644 --- a/site/tools/superfile.html +++ b/site/tools/superfile.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/supertokens.html b/site/tools/supertokens.html index 0b64656b..92f03248 100644 --- a/site/tools/supertokens.html +++ b/site/tools/supertokens.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/swe-agent.html b/site/tools/swe-agent.html index 9cad613f..d3862298 100644 --- a/site/tools/swe-agent.html +++ b/site/tools/swe-agent.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/tabby.html b/site/tools/tabby.html index b9f2cd1e..62eca951 100644 --- a/site/tools/tabby.html +++ b/site/tools/tabby.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/taiko.html b/site/tools/taiko.html index a8e74281..a4eab4dc 100644 --- a/site/tools/taiko.html +++ b/site/tools/taiko.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/tale.html b/site/tools/tale.html index e3498189..791777db 100644 --- a/site/tools/tale.html +++ b/site/tools/tale.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/tauri-app-starter.html b/site/tools/tauri-app-starter.html index ac960e60..738704fd 100644 --- a/site/tools/tauri-app-starter.html +++ b/site/tools/tauri-app-starter.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/tensorrt-llm.html b/site/tools/tensorrt-llm.html index 12127f76..4ce59cdf 100644 --- a/site/tools/tensorrt-llm.html +++ b/site/tools/tensorrt-llm.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/termius-for-students.html b/site/tools/termius-for-students.html index 7b131068..cb7128c7 100644 --- a/site/tools/termius-for-students.html +++ b/site/tools/termius-for-students.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/testcontainers.html b/site/tools/testcontainers.html index 9912afad..40ea1bba 100644 --- a/site/tools/testcontainers.html +++ b/site/tools/testcontainers.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/tgi-text-generation-inference.html b/site/tools/tgi-text-generation-inference.html index ba9c301c..07646a59 100644 --- a/site/tools/tgi-text-generation-inference.html +++ b/site/tools/tgi-text-generation-inference.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/the-movie-database-tmdb-api.html b/site/tools/the-movie-database-tmdb-api.html index ed58c386..0808bb87 100644 --- a/site/tools/the-movie-database-tmdb-api.html +++ b/site/tools/the-movie-database-tmdb-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/thefuck.html b/site/tools/thefuck.html index b0e92330..1e8d94bf 100644 --- a/site/tools/thefuck.html +++ b/site/tools/thefuck.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/tidb-serverless.html b/site/tools/tidb-serverless.html index 3588eff3..6a0e6ebe 100644 --- a/site/tools/tidb-serverless.html +++ b/site/tools/tidb-serverless.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/tldr.html b/site/tools/tldr.html index 92d6e958..205ca692 100644 --- a/site/tools/tldr.html +++ b/site/tools/tldr.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/tmux.html b/site/tools/tmux.html index 5962c918..183ff4a1 100644 --- a/site/tools/tmux.html +++ b/site/tools/tmux.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/tokei.html b/site/tools/tokei.html index 336017a1..6b700fd2 100644 --- a/site/tools/tokei.html +++ b/site/tools/tokei.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/traefik-community.html b/site/tools/traefik-community.html index 885f4095..59c2c93e 100644 --- a/site/tools/traefik-community.html +++ b/site/tools/traefik-community.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/trippy.html b/site/tools/trippy.html index f0399e51..867f72f9 100644 --- a/site/tools/trippy.html +++ b/site/tools/trippy.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/trivy.html b/site/tools/trivy.html index bfc1067c..5f578fdd 100644 --- a/site/tools/trivy.html +++ b/site/tools/trivy.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/trl.html b/site/tools/trl.html index 6751923b..0d6eefa8 100644 --- a/site/tools/trl.html +++ b/site/tools/trl.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/tronald-dump-api.html b/site/tools/tronald-dump-api.html index f2f923ce..2246d8cd 100644 --- a/site/tools/tronald-dump-api.html +++ b/site/tools/tronald-dump-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/trufflehog.html b/site/tools/trufflehog.html index ca3149ec..f584612d 100644 --- a/site/tools/trufflehog.html +++ b/site/tools/trufflehog.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/turborepo-starter.html b/site/tools/turborepo-starter.html index 06fadb84..4e3293a0 100644 --- a/site/tools/turborepo-starter.html +++ b/site/tools/turborepo-starter.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/turso.html b/site/tools/turso.html index 43659603..adb84732 100644 --- a/site/tools/turso.html +++ b/site/tools/turso.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/tvmaze-api.html b/site/tools/tvmaze-api.html index bc0a3575..baab4895 100644 --- a/site/tools/tvmaze-api.html +++ b/site/tools/tvmaze-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/twenty.html b/site/tools/twenty.html index 249e8838..acdaefb9 100644 --- a/site/tools/twenty.html +++ b/site/tools/twenty.html @@ -121,7 +121,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/twilio-startups-program.html b/site/tools/twilio-startups-program.html index 22e2a61b..964e6059 100644 --- a/site/tools/twilio-startups-program.html +++ b/site/tools/twilio-startups-program.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/typesense.html b/site/tools/typesense.html index c5c75b57..8f55c62a 100644 --- a/site/tools/typesense.html +++ b/site/tools/typesense.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/typos-cli.html b/site/tools/typos-cli.html index 7322388c..956926f3 100644 --- a/site/tools/typos-cli.html +++ b/site/tools/typos-cli.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/umami.html b/site/tools/umami.html index 4896f13a..c7b65c81 100644 --- a/site/tools/umami.html +++ b/site/tools/umami.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/umbrel.html b/site/tools/umbrel.html index ad0bc121..c5ef0a50 100644 --- a/site/tools/umbrel.html +++ b/site/tools/umbrel.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/universities-list-api.html b/site/tools/universities-list-api.html index 37f99a9c..51ef73d1 100644 --- a/site/tools/universities-list-api.html +++ b/site/tools/universities-list-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/unsloth.html b/site/tools/unsloth.html index 748e8538..59e735b8 100644 --- a/site/tools/unsloth.html +++ b/site/tools/unsloth.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/up-for-grabs.html b/site/tools/up-for-grabs.html index b1f36230..8f5ca444 100644 --- a/site/tools/up-for-grabs.html +++ b/site/tools/up-for-grabs.html @@ -113,7 +113,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/upstash.html b/site/tools/upstash.html index bba5f4e2..ba15c018 100644 --- a/site/tools/upstash.html +++ b/site/tools/upstash.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/uptime-kuma.html b/site/tools/uptime-kuma.html index 32b3b872..1ed35646 100644 --- a/site/tools/uptime-kuma.html +++ b/site/tools/uptime-kuma.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/urlhaus-malware-api.html b/site/tools/urlhaus-malware-api.html index 6b8fbd51..4f35cdc2 100644 --- a/site/tools/urlhaus-malware-api.html +++ b/site/tools/urlhaus-malware-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/usgs-earthquake-api.html b/site/tools/usgs-earthquake-api.html index 7b32f0b7..b1fda166 100644 --- a/site/tools/usgs-earthquake-api.html +++ b/site/tools/usgs-earthquake-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/usql.html b/site/tools/usql.html index bde8e298..2f04ee21 100644 --- a/site/tools/usql.html +++ b/site/tools/usql.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/vale.html b/site/tools/vale.html index f67cf633..03667fb3 100644 --- a/site/tools/vale.html +++ b/site/tools/vale.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/vegeta.html b/site/tools/vegeta.html index cb75bb49..2529c335 100644 --- a/site/tools/vegeta.html +++ b/site/tools/vegeta.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/vercel-ai-sdk-starter.html b/site/tools/vercel-ai-sdk-starter.html index 0d09fb2e..2eae6f68 100644 --- a/site/tools/vercel-ai-sdk-starter.html +++ b/site/tools/vercel-ai-sdk-starter.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/vercel-for-open-source.html b/site/tools/vercel-for-open-source.html index 37686f5d..ff1a9268 100644 --- a/site/tools/vercel-for-open-source.html +++ b/site/tools/vercel-for-open-source.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/vercel.html b/site/tools/vercel.html index 71a9b9e8..5985d4e6 100644 --- a/site/tools/vercel.html +++ b/site/tools/vercel.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/vespa.html b/site/tools/vespa.html index b446357e..f5bc592f 100644 --- a/site/tools/vespa.html +++ b/site/tools/vespa.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/vhs.html b/site/tools/vhs.html index b4446ba1..37317e45 100644 --- a/site/tools/vhs.html +++ b/site/tools/vhs.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/vitesse-webext.html b/site/tools/vitesse-webext.html index 9dcd41d8..1be35f07 100644 --- a/site/tools/vitesse-webext.html +++ b/site/tools/vitesse-webext.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/vitesse.html b/site/tools/vitesse.html index 0d263e46..936cc692 100644 --- a/site/tools/vitesse.html +++ b/site/tools/vitesse.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/vitest.html b/site/tools/vitest.html index 5d35ad12..3de45c51 100644 --- a/site/tools/vitest.html +++ b/site/tools/vitest.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/vllm.html b/site/tools/vllm.html index 6a373f9c..9b3165c3 100644 --- a/site/tools/vllm.html +++ b/site/tools/vllm.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/volta.html b/site/tools/volta.html index 1f3863cb..f1278190 100644 --- a/site/tools/volta.html +++ b/site/tools/volta.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/weaviate.html b/site/tools/weaviate.html index 16777cfe..2d4ed1d8 100644 --- a/site/tools/weaviate.html +++ b/site/tools/weaviate.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/web-performance-budget-gate.html b/site/tools/web-performance-budget-gate.html index 8c07e7d8..d4df0b6c 100644 --- a/site/tools/web-performance-budget-gate.html +++ b/site/tools/web-performance-budget-gate.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/webdriverio.html b/site/tools/webdriverio.html index 4d9ef6e6..8ad856a3 100644 --- a/site/tools/webdriverio.html +++ b/site/tools/webdriverio.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/websocat.html b/site/tools/websocat.html index e82350c8..7e32f270 100644 --- a/site/tools/websocat.html +++ b/site/tools/websocat.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/wezterm.html b/site/tools/wezterm.html index a55fbb0e..1ac5cce4 100644 --- a/site/tools/wezterm.html +++ b/site/tools/wezterm.html @@ -121,7 +121,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/whispercpp.html b/site/tools/whispercpp.html index 0224c271..63532c61 100644 --- a/site/tools/whispercpp.html +++ b/site/tools/whispercpp.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/wikidata-sparql-api.html b/site/tools/wikidata-sparql-api.html index bfef6cd7..c4cc3423 100644 --- a/site/tools/wikidata-sparql-api.html +++ b/site/tools/wikidata-sparql-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/wikipedia-rest-api.html b/site/tools/wikipedia-rest-api.html index 54f231ca..38042013 100644 --- a/site/tools/wikipedia-rest-api.html +++ b/site/tools/wikipedia-rest-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/wiremock.html b/site/tools/wiremock.html index ef929255..61ba5b21 100644 --- a/site/tools/wiremock.html +++ b/site/tools/wiremock.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/wrk.html b/site/tools/wrk.html index c29ebbd4..1ab2e7df 100644 --- a/site/tools/wrk.html +++ b/site/tools/wrk.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/wxt-extension-framework.html b/site/tools/wxt-extension-framework.html index ae40d517..61b2b020 100644 --- a/site/tools/wxt-extension-framework.html +++ b/site/tools/wxt-extension-framework.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/xh.html b/site/tools/xh.html index 416e3c38..5a2807e2 100644 --- a/site/tools/xh.html +++ b/site/tools/xh.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/xkcd-json-api.html b/site/tools/xkcd-json-api.html index 4568666c..27ee7046 100644 --- a/site/tools/xkcd-json-api.html +++ b/site/tools/xkcd-json-api.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/yazi.html b/site/tools/yazi.html index a0265a9a..4c73f7a1 100644 --- a/site/tools/yazi.html +++ b/site/tools/yazi.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/yolov8.html b/site/tools/yolov8.html index ed822469..22f8092b 100644 --- a/site/tools/yolov8.html +++ b/site/tools/yolov8.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/yq.html b/site/tools/yq.html index d864fb47..1de01c43 100644 --- a/site/tools/yq.html +++ b/site/tools/yq.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/yunohost.html b/site/tools/yunohost.html index c58a4b2f..31e773d2 100644 --- a/site/tools/yunohost.html +++ b/site/tools/yunohost.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/yylo.html b/site/tools/yylo.html index 8326f846..0d724fee 100644 --- a/site/tools/yylo.html +++ b/site/tools/yylo.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/zed.html b/site/tools/zed.html index 73b1f86e..48271e70 100644 --- a/site/tools/zed.html +++ b/site/tools/zed.html @@ -121,7 +121,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/zellij.html b/site/tools/zellij.html index 77ebff9e..154306ee 100644 --- a/site/tools/zellij.html +++ b/site/tools/zellij.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/zenith.html b/site/tools/zenith.html index e43d8a9d..b32efe27 100644 --- a/site/tools/zenith.html +++ b/site/tools/zenith.html @@ -114,7 +114,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/zippopotamus.html b/site/tools/zippopotamus.html index 8d91083e..3f7821b3 100644 --- a/site/tools/zippopotamus.html +++ b/site/tools/zippopotamus.html @@ -112,7 +112,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/zitadel.html b/site/tools/zitadel.html index bd96e4e7..f5ed18c2 100644 --- a/site/tools/zitadel.html +++ b/site/tools/zitadel.html @@ -120,7 +120,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/site/tools/zoxide.html b/site/tools/zoxide.html index 9b126b66..20a909e7 100644 --- a/site/tools/zoxide.html +++ b/site/tools/zoxide.html @@ -122,7 +122,7 @@ โšก Promote Your Tool - โ† Browse 536 Tools + โ† Browse 537 Tools diff --git a/tests/activate-sponsor.test.ts b/tests/activate-sponsor.test.ts index 020e5d92..d93e21c5 100644 --- a/tests/activate-sponsor.test.ts +++ b/tests/activate-sponsor.test.ts @@ -4,19 +4,13 @@ import { activateSponsor } from "../scripts/activate-sponsor.js"; describe("DevShelf Self-Serve Sponsor Activation Engine (Phase 3)", () => { test("throws an error when name or url is missing", async () => { - await assert.rejects( - async () => { - await activateSponsor({ name: "", url: "https://example.com" }); - }, - /Missing required option: --name/, - ); + await assert.rejects(async () => { + await activateSponsor({ name: "", url: "https://example.com" }); + }, /Missing required option: --name/); - await assert.rejects( - async () => { - await activateSponsor({ name: "TestTool", url: "" }); - }, - /Missing required option: --url/, - ); + await assert.rejects(async () => { + await activateSponsor({ name: "TestTool", url: "" }); + }, /Missing required option: --url/); }); test("dry-run activation of existing tool marks featured and updates tier", async () => { diff --git a/tests/affiliates.test.ts b/tests/affiliates.test.ts index d1f84848..5a284051 100644 --- a/tests/affiliates.test.ts +++ b/tests/affiliates.test.ts @@ -80,7 +80,9 @@ describe("DevShelf Affiliate Engine & Partner Registry Suite", async () => { const html = generateGoRedirectHtml(testPartner); assert.ok( - html.includes(''), + html.includes( + '', + ), "Must contain meta refresh tag pointing to destination URL", ); assert.ok( @@ -122,10 +124,7 @@ describe("DevShelf Affiliate Engine & Partner Registry Suite", async () => { content.includes(''), `Missing noindex tag in ${partner.slug}.html`, ); - assert.ok( - content.includes(partner.url), - `Missing destination link in ${partner.slug}.html`, - ); + assert.ok(content.includes(partner.url), `Missing destination link in ${partner.slug}.html`); } }); @@ -154,7 +153,8 @@ describe("DevShelf Affiliate Engine & Partner Registry Suite", async () => { url: "https://vitest-demo.com/?aff=devshelf", slug: "vitest-demo-cloud", perk: "$50 Free Pipeline Credits", - description: "Run fast automated unit and integration tests with generous cloud concurrency.", + description: + "Run fast automated unit and integration tests with generous cloud concurrency.", cta: "Claim Test Pipeline โ†’", badge: "โšก $50 Free", skipBuild: true, @@ -167,7 +167,7 @@ describe("DevShelf Affiliate Engine & Partner Registry Suite", async () => { const redirectPath = path.join(GO_DIR, "vitest-demo-cloud.html"); const redirectContent = await fs.readFile(redirectPath, "utf8"); assert.ok(redirectContent.includes("https://vitest-demo.com/?aff=devshelf")); - assert.ok(redirectContent.includes("rel=\"noopener noreferrer sponsored\"")); + assert.ok(redirectContent.includes('rel="noopener noreferrer sponsored"')); // Update the same partner const updated = await addOrUpdateAffiliate({ diff --git a/tests/newsletter.test.ts b/tests/newsletter.test.ts index 9d51404e..55ab9336 100644 --- a/tests/newsletter.test.ts +++ b/tests/newsletter.test.ts @@ -69,7 +69,7 @@ describe("DevShelf Weekly Newsletter & Recurring Media Engine Suite", async () = assert.ok( Array.isArray(issue.featuredTools) && issue.featuredTools.length >= 3, - `Expected at least 3 featured tools in issue #${issue.issueNumber}` + `Expected at least 3 featured tools in issue #${issue.issueNumber}`, ); for (const tool of issue.featuredTools) { @@ -83,7 +83,11 @@ describe("DevShelf Weekly Newsletter & Recurring Media Engine Suite", async () = if (issue.sponsor) { assert.ok(issue.sponsor.name?.trim(), "Missing sponsor name"); assert.ok(issue.sponsor.tagline?.trim(), "Missing sponsor tagline"); - assert.match(issue.sponsor.url, /^https?:\/\//i, `Sponsor URL must be valid: ${issue.sponsor.url}`); + assert.match( + issue.sponsor.url, + /^https?:\/\//i, + `Sponsor URL must be valid: ${issue.sponsor.url}`, + ); assert.ok(issue.sponsor.perk?.trim(), "Missing sponsor perk"); assert.ok(issue.sponsor.badge?.trim(), "Missing sponsor badge"); } @@ -111,11 +115,14 @@ describe("DevShelf Weekly Newsletter & Recurring Media Engine Suite", async () = assert.ok(xml.includes('"), "Missing channel container"); assert.ok( - xml.includes("DevShelf Weekly - Free Developer Tools, APIs & Open Source") || - xml.includes("DevShelf Weekly") + xml.includes( + "DevShelf Weekly - Free Developer Tools, APIs & Open Source", + ) || xml.includes("DevShelf Weekly"), ); assert.ok(xml.includes("https://devshelf.ritualdev.in/newsletter.html")); - assert.ok(xml.includes("en-us") || xml.includes("en")); + assert.ok( + xml.includes("en-us") || xml.includes("en"), + ); // Check item elements const items = xml.split(""); @@ -132,7 +139,11 @@ describe("DevShelf Weekly Newsletter & Recurring Media Engine Suite", async () = const pubDateMatch = itemChunk.match(/(.*?)<\/pubDate>/); assert.ok(pubDateMatch && pubDateMatch[1], "Missing pubDate string"); const parsedDate = new Date(pubDateMatch[1]); - assert.strictEqual(isNaN(parsedDate.getTime()), false, `Invalid date string: ${pubDateMatch[1]}`); + assert.strictEqual( + isNaN(parsedDate.getTime()), + false, + `Invalid date string: ${pubDateMatch[1]}`, + ); } } }); @@ -140,8 +151,16 @@ describe("DevShelf Weekly Newsletter & Recurring Media Engine Suite", async () = test("site/newsletter.html is compiled with interactive subscription capture and archive", async () => { const html = await fs.readFile(NEWSLETTER_HTML_PATH, "utf8"); assert.ok(html.includes("DevShelf Weekly"), "Missing publication title"); - assert.ok(html.includes("2,840") || html.includes("2,800+"), "Missing active subscriber metric"); - assert.ok(html.includes("action=\"https://buttondown.com/api/emails/embed-subscribe/devshelf\"") || html.includes("action=\"https://buttondown.email/api/emails/embed-subscribe/devshelf\"") || html.includes("id=\"newsletter-form\""), "Missing email subscription form"); + assert.ok( + html.includes("2,840") || html.includes("2,800+"), + "Missing active subscriber metric", + ); + assert.ok( + html.includes('action="https://buttondown.com/api/emails/embed-subscribe/devshelf"') || + html.includes('action="https://buttondown.email/api/emails/embed-subscribe/devshelf"') || + html.includes('id="newsletter-form"'), + "Missing email subscription form", + ); assert.ok(html.includes("feed.xml"), "Missing RSS feed link"); assert.ok(html.includes("RowSafe"), "Missing featured tool RowSafe"); assert.ok(html.includes("Neon"), "Missing sponsor Neon"); @@ -174,8 +193,14 @@ describe("DevShelf Weekly Newsletter & Recurring Media Engine Suite", async () = assert.ok(html.includes("$199"), "Missing $199 price on sponsors page"); assert.ok(html.includes("Newsletter Spotlight"), "Missing Newsletter Spotlight card"); assert.ok(html.includes("$99"), "Missing $99 price on sponsors page"); - assert.ok(html.includes("selectPackage('categoryTakeover', 199)"), "Missing categoryTakeover button action"); - assert.ok(html.includes("selectPackage('newsletterSpotlight', 99)"), "Missing newsletterSpotlight button action"); + assert.ok( + html.includes("selectPackage('categoryTakeover', 199)"), + "Missing categoryTakeover button action", + ); + assert.ok( + html.includes("selectPackage('newsletterSpotlight', 99)"), + "Missing newsletterSpotlight button action", + ); assert.ok(html.includes("newsletter.html"), "Missing link to newsletter"); }); @@ -217,7 +242,13 @@ describe("DevShelf Weekly Newsletter & Recurring Media Engine Suite", async () = // Test MCP tools registration in bin/mcp.js const mcpRaw = await fs.readFile(path.join(ROOT, "bin", "mcp.js"), "utf8"); - assert.ok(mcpRaw.includes('"get_newsletter"'), "get_newsletter tool not declared in TOOLS array"); - assert.ok(mcpRaw.includes('name === "get_newsletter"'), "get_newsletter handler missing in handleToolCall"); + assert.ok( + mcpRaw.includes('"get_newsletter"'), + "get_newsletter tool not declared in TOOLS array", + ); + assert.ok( + mcpRaw.includes('name === "get_newsletter"'), + "get_newsletter handler missing in handleToolCall", + ); }); }); diff --git a/tests/sponsors.test.ts b/tests/sponsors.test.ts index 7f190028..298b9150 100644 --- a/tests/sponsors.test.ts +++ b/tests/sponsors.test.ts @@ -61,7 +61,9 @@ function generateDigitalInvoice(payload: InvoicePayload) { shippingCost: 0, billedTo: payload.billingCompany || payload.name || "Anonymous Patron", taxId: payload.billingTaxId || "Exempt (Digital Open-Source Grant)", - toolPlacement: payload.toolName ? `${payload.toolName} (${payload.toolCategory || "general"})` : undefined, + toolPlacement: payload.toolName + ? `${payload.toolName} (${payload.toolCategory || "general"})` + : undefined, }; }