You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .github/copilot-instructions.md
+34-14Lines changed: 34 additions & 14 deletions
Original file line number
Diff line number
Diff line change
@@ -2,27 +2,35 @@
2
2
3
3
## Project Architecture
4
4
5
-
This is a **Deno-first TypeScript library** that provides a typed HTTP client with middleware support. The project builds to NPM for Node.js compatibility via `@deno/dnt`.
5
+
This is a **Deno-first TypeScript library** that provides a typed HTTP client
6
+
with middleware support. The project builds to NPM for Node.js compatibility via
7
+
`@deno/dnt`.
6
8
7
9
### Core Components
8
10
9
-
-**`FetchClient`** - Main HTTP client class with typed JSON methods (`getJSON`, `postJSON`, etc.)
10
-
-**`FetchClientProvider`** - Singleton pattern for shared configuration, caching, and rate limiting across multiple client instances
11
-
-**Middleware System** - Pipeline architecture using `FetchClientContext` and `next()` functions
12
-
-**Rate Limiting** - Built-in middleware for HTTP 429 responses with `Retry-After` headers
11
+
-**`FetchClient`** - Main HTTP client class with typed JSON methods (`getJSON`,
12
+
`postJSON`, etc.)
13
+
-**`FetchClientProvider`** - Singleton pattern for shared configuration,
14
+
caching, and rate limiting across multiple client instances
15
+
-**Middleware System** - Pipeline architecture using `FetchClientContext` and
16
+
`next()` functions
17
+
-**Rate Limiting** - Built-in middleware for HTTP 429 responses with
18
+
`Retry-After` headers
13
19
-**Caching** - Key-based response caching with TTL support
-**AbortController**: Native timeout and cancellation support
75
94
-**Headers**: Link header parsing for pagination
76
95
77
-
When working on this codebase, always consider the middleware pipeline order and the provider/client distinction for shared vs. instance-specific behavior.
96
+
When working on this codebase, always consider the middleware pipeline order and
97
+
the provider/client distinction for shared vs. instance-specific behavior.
0 commit comments