@carlos-tzin/tzin 0.1.11 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +76 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,81 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.0.0 — Stable Release
|
|
4
|
+
|
|
5
|
+
The first stable release of tzin. Contract-first TypeScript framework with
|
|
6
|
+
realtime, AI-native tooling, and a complete development experience.
|
|
7
|
+
|
|
8
|
+
### What's new since 0.1.2
|
|
9
|
+
|
|
10
|
+
#### Project Structure
|
|
11
|
+
|
|
12
|
+
- Convention-based project layout: `src/routes/`, `src/middleware/`, `src/app.ts`
|
|
13
|
+
- Config system: `defineConfig()`, auto-detection of `src/app.ts`
|
|
14
|
+
- Dev server: `tzin dev` with hot reload and route table display
|
|
15
|
+
|
|
16
|
+
#### CLI
|
|
17
|
+
|
|
18
|
+
- `tzin dev [entry] [--port N]` — dev server with hot reload
|
|
19
|
+
- `tzin build` — production build
|
|
20
|
+
- `tzin deploy --target node|workers` — deploy to production
|
|
21
|
+
- `tzin generate route <name>` — scaffold a route
|
|
22
|
+
- `tzin generate middleware <name>` — scaffold middleware
|
|
23
|
+
- `tzin generate test <name>` — scaffold a test
|
|
24
|
+
|
|
25
|
+
#### Database
|
|
26
|
+
|
|
27
|
+
- `defineModel(table, schema)` — type-safe ORM with query builder
|
|
28
|
+
- `findById`, `findFirst`, `findMany` — CRUD operations
|
|
29
|
+
- Chainable query builder: `.where().limit().orderBy()`
|
|
30
|
+
- Extensible store adapters: `setStore(adapter)`
|
|
31
|
+
|
|
32
|
+
#### Authentication
|
|
33
|
+
|
|
34
|
+
- `bearerAuth({ secret })` — JWT Bearer token validation
|
|
35
|
+
- `optionalAuth({ secret })` — non-strict JWT validation
|
|
36
|
+
- `apiKeyAuth({ key })` — API key authentication
|
|
37
|
+
- `signJwt()` / `verifyJwt()` — JWT utilities
|
|
38
|
+
|
|
39
|
+
#### Jobs & Tasks
|
|
40
|
+
|
|
41
|
+
- `defineJob<Payload>(config)` — background job definition
|
|
42
|
+
- `job.enqueue(payload)` — job queue with retry
|
|
43
|
+
- `handle.wait()` — wait for job completion
|
|
44
|
+
|
|
45
|
+
#### Logging
|
|
46
|
+
|
|
47
|
+
- `log.info/warn/error/fatal` — structured logging
|
|
48
|
+
- `log.child(prefix)` — scoped child loggers
|
|
49
|
+
- `configure({ level, pretty })` — global configuration
|
|
50
|
+
|
|
51
|
+
#### Rate Limiting
|
|
52
|
+
|
|
53
|
+
- `rateLimit({ max, windowMs })` — request rate limiting
|
|
54
|
+
- `strictRateLimit()` — strict limiting for sensitive endpoints
|
|
55
|
+
- Custom store adapters for distributed rate limiting
|
|
56
|
+
|
|
57
|
+
#### Caching
|
|
58
|
+
|
|
59
|
+
- `cache({ ttl })` — HTTP response caching
|
|
60
|
+
- `staleWhileRevalidate()` — stale-while-revalidate pattern
|
|
61
|
+
- Cache headers: X-Cache, Cache-Control, ETag
|
|
62
|
+
|
|
63
|
+
#### Testing
|
|
64
|
+
|
|
65
|
+
- `createTestClient(app)` — API test client
|
|
66
|
+
- `expectSchema(schema, value)` — schema validation
|
|
67
|
+
- `mockSections(contract)` — mock data generation
|
|
68
|
+
|
|
69
|
+
#### Documentation
|
|
70
|
+
|
|
71
|
+
- Complete API Reference with all modules
|
|
72
|
+
- Architecture Guide
|
|
73
|
+
- Updated README with feature table
|
|
74
|
+
|
|
75
|
+
### Backwards Compatibility
|
|
76
|
+
|
|
77
|
+
This release is backwards compatible with 0.1.x.
|
|
78
|
+
|
|
3
79
|
## 0.1.2
|
|
4
80
|
|
|
5
81
|
- Added `create-tzin` scaffolding CLI (`npx create-tzin my-app`)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@carlos-tzin/tzin",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "Contract-first TypeScript framework. Types that scale, realtime channels with presence, and an MCP server for every API.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "The tzin authors",
|