Remove IDs from quickstart
This commit is contained in:
+16
-16
@@ -136,7 +136,7 @@ you little to no time.
|
|||||||
You can then use the hook in your client components:
|
You can then use the hook in your client components:
|
||||||
|
|
||||||
<Tabs items={["Next.js", "Vite", "Remix", "Gatsby", "Expo Web", "Astro"]} groupId="react-framework" persist>
|
<Tabs items={["Next.js", "Vite", "Remix", "Gatsby", "Expo Web", "Astro"]} groupId="react-framework" persist>
|
||||||
<Tab value="Next.js" id="nextjs">
|
<Tab value="Next.js">
|
||||||
```ts
|
```ts
|
||||||
"use client";
|
"use client";
|
||||||
|
|
||||||
@@ -147,7 +147,7 @@ you little to no time.
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
</Tab>
|
</Tab>
|
||||||
<Tab value="Vite" id="vite">
|
<Tab value="Vite">
|
||||||
```ts
|
```ts
|
||||||
import { useChallenge } from "@duckity/react";
|
import { useChallenge } from "@duckity/react";
|
||||||
|
|
||||||
@@ -156,7 +156,7 @@ you little to no time.
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
</Tab>
|
</Tab>
|
||||||
<Tab value="Remix" id="remix">
|
<Tab value="Remix">
|
||||||
```ts
|
```ts
|
||||||
import { json } from "@remix-run/node"; // Or cloudflare/deno
|
import { json } from "@remix-run/node"; // Or cloudflare/deno
|
||||||
import { useLoaderData } from "@remix-run/react";
|
import { useLoaderData } from "@remix-run/react";
|
||||||
@@ -176,7 +176,7 @@ you little to no time.
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
</Tab>
|
</Tab>
|
||||||
<Tab value="Gatsby" id="gatsby">
|
<Tab value="Gatsby">
|
||||||
```ts
|
```ts
|
||||||
import { useChallenge } from "@duckity/react";
|
import { useChallenge } from "@duckity/react";
|
||||||
|
|
||||||
@@ -185,7 +185,7 @@ you little to no time.
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
</Tab>
|
</Tab>
|
||||||
<Tab value="Expo Web" id="expo-web">
|
<Tab value="Expo Web">
|
||||||
```ts
|
```ts
|
||||||
import { useChallenge } from "@duckity/react";
|
import { useChallenge } from "@duckity/react";
|
||||||
|
|
||||||
@@ -194,7 +194,7 @@ you little to no time.
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
</Tab>
|
</Tab>
|
||||||
<Tab value="Astro" id="astro">
|
<Tab value="Astro">
|
||||||
```ts
|
```ts
|
||||||
import { useChallenge } from "@duckity/react";
|
import { useChallenge } from "@duckity/react";
|
||||||
|
|
||||||
@@ -253,17 +253,17 @@ you little to no time.
|
|||||||
|
|
||||||
{/* prettier-ignore */}
|
{/* prettier-ignore */}
|
||||||
<Tabs items={["pip", "uv", "poetry"]} groupId="python-package-manager" persist>
|
<Tabs items={["pip", "uv", "poetry"]} groupId="python-package-manager" persist>
|
||||||
<Tab value="pip" id="pip">
|
<Tab value="pip">
|
||||||
```sh
|
```sh
|
||||||
pip install duckity
|
pip install duckity
|
||||||
```
|
```
|
||||||
</Tab>
|
</Tab>
|
||||||
<Tab value="uv" id="uv">
|
<Tab value="uv">
|
||||||
```sh
|
```sh
|
||||||
uv add duckity
|
uv add duckity
|
||||||
```
|
```
|
||||||
</Tab>
|
</Tab>
|
||||||
<Tab value="poetry" id="poetry">
|
<Tab value="poetry">
|
||||||
```sh
|
```sh
|
||||||
poetry add duckity
|
poetry add duckity
|
||||||
```
|
```
|
||||||
@@ -273,7 +273,7 @@ you little to no time.
|
|||||||
Solving a challenge only requires your protection profile ID.
|
Solving a challenge only requires your protection profile ID.
|
||||||
|
|
||||||
<Tabs items={["Async", "Sync"]} groupId="python-sync" persist>
|
<Tabs items={["Async", "Sync"]} groupId="python-sync" persist>
|
||||||
<Tab value="Async" id="async">
|
<Tab value="Async">
|
||||||
```py
|
```py
|
||||||
import duckity
|
import duckity
|
||||||
|
|
||||||
@@ -283,7 +283,7 @@ you little to no time.
|
|||||||
The CPU-intensive part of solving the challenge is done in a
|
The CPU-intensive part of solving the challenge is done in a
|
||||||
`ProcessPoolExecutor()`. Neither the GIL nor the async event loop will be blocked.
|
`ProcessPoolExecutor()`. Neither the GIL nor the async event loop will be blocked.
|
||||||
</Tab>
|
</Tab>
|
||||||
<Tab value="Sync" id="sync">
|
<Tab value="Sync">
|
||||||
```py
|
```py
|
||||||
import asyncio
|
import asyncio
|
||||||
|
|
||||||
@@ -422,17 +422,17 @@ Once you have a solution token in your server, validating it is quite easy.
|
|||||||
|
|
||||||
{/* prettier-ignore */}
|
{/* prettier-ignore */}
|
||||||
<Tabs items={["pip", "uv", "poetry"]} groupId="python-package-manager" persist>
|
<Tabs items={["pip", "uv", "poetry"]} groupId="python-package-manager" persist>
|
||||||
<Tab value="pip" id="pip">
|
<Tab value="pip">
|
||||||
```sh
|
```sh
|
||||||
pip install duckity
|
pip install duckity
|
||||||
```
|
```
|
||||||
</Tab>
|
</Tab>
|
||||||
<Tab value="uv" id="uv">
|
<Tab value="uv">
|
||||||
```sh
|
```sh
|
||||||
uv add duckity
|
uv add duckity
|
||||||
```
|
```
|
||||||
</Tab>
|
</Tab>
|
||||||
<Tab value="poetry" id="poetry">
|
<Tab value="poetry">
|
||||||
```sh
|
```sh
|
||||||
poetry add duckity
|
poetry add duckity
|
||||||
```
|
```
|
||||||
@@ -442,7 +442,7 @@ Once you have a solution token in your server, validating it is quite easy.
|
|||||||
Once you have done it, validate the solution token as follows:
|
Once you have done it, validate the solution token as follows:
|
||||||
|
|
||||||
<Tabs items={["Async", "Sync"]} groupId="python-sync" persist>
|
<Tabs items={["Async", "Sync"]} groupId="python-sync" persist>
|
||||||
<Tab value="Async" id="async">
|
<Tab value="Async">
|
||||||
```py
|
```py
|
||||||
import duckity
|
import duckity
|
||||||
|
|
||||||
@@ -456,7 +456,7 @@ Once you have a solution token in your server, validating it is quite easy.
|
|||||||
)
|
)
|
||||||
```
|
```
|
||||||
</Tab>
|
</Tab>
|
||||||
<Tab value="Sync" id="sync">
|
<Tab value="Sync">
|
||||||
```py
|
```py
|
||||||
import asyncio
|
import asyncio
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user