@ezetgalaxy/titan 26.7.4 → 26.8.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.
Files changed (55) hide show
  1. package/README.md +88 -201
  2. package/index.js +552 -489
  3. package/package.json +6 -5
  4. package/templates/js/_gitignore +37 -0
  5. package/templates/{package.json → js/package.json} +4 -1
  6. package/templates/js/server/action_map.json +3 -0
  7. package/templates/js/server/actions/hello.jsbundle +48 -0
  8. package/templates/js/server/routes.json +16 -0
  9. package/templates/js/server/src/actions_rust/mod.rs +15 -0
  10. package/templates/{server → js/server}/src/extensions.rs +149 -17
  11. package/templates/{titan → js/titan}/bundle.js +22 -9
  12. package/templates/js/titan/dev.js +194 -0
  13. package/templates/{titan → js/titan}/titan.js +25 -1
  14. package/templates/rust/Dockerfile +66 -0
  15. package/templates/rust/_dockerignore +3 -0
  16. package/templates/rust/_gitignore +37 -0
  17. package/templates/rust/app/actions/hello.js +5 -0
  18. package/templates/rust/app/actions/rust_hello.rs +14 -0
  19. package/templates/rust/app/app.js +11 -0
  20. package/templates/rust/app/titan.d.ts +101 -0
  21. package/templates/rust/jsconfig.json +19 -0
  22. package/templates/rust/package.json +13 -0
  23. package/templates/rust/server/Cargo.lock +2869 -0
  24. package/templates/rust/server/Cargo.toml +27 -0
  25. package/templates/rust/server/action_map.json +3 -0
  26. package/templates/rust/server/actions/hello.jsbundle +47 -0
  27. package/templates/rust/server/routes.json +22 -0
  28. package/templates/rust/server/src/action_management.rs +131 -0
  29. package/templates/rust/server/src/actions_rust/mod.rs +19 -0
  30. package/templates/rust/server/src/actions_rust/rust_hello.rs +14 -0
  31. package/templates/rust/server/src/errors.rs +10 -0
  32. package/templates/rust/server/src/extensions.rs +989 -0
  33. package/templates/rust/server/src/main.rs +443 -0
  34. package/templates/rust/server/src/utils.rs +33 -0
  35. package/templates/rust/titan/bundle.js +157 -0
  36. package/templates/rust/titan/dev.js +194 -0
  37. package/templates/rust/titan/titan.js +122 -0
  38. package/titanpl-sdk/package.json +1 -1
  39. package/titanpl-sdk/templates/Dockerfile +4 -17
  40. package/titanpl-sdk/templates/server/src/extensions.rs +218 -423
  41. package/titanpl-sdk/templates/server/src/main.rs +68 -134
  42. package/scripts/make_dist.sh +0 -71
  43. package/templates/titan/dev.js +0 -144
  44. /package/templates/{Dockerfile → js/Dockerfile} +0 -0
  45. /package/templates/{.dockerignore → js/_dockerignore} +0 -0
  46. /package/templates/{app → js/app}/actions/hello.js +0 -0
  47. /package/templates/{app → js/app}/app.js +0 -0
  48. /package/templates/{app → js/app}/titan.d.ts +0 -0
  49. /package/templates/{jsconfig.json → js/jsconfig.json} +0 -0
  50. /package/templates/{server → js/server}/Cargo.lock +0 -0
  51. /package/templates/{server → js/server}/Cargo.toml +0 -0
  52. /package/templates/{server → js/server}/src/action_management.rs +0 -0
  53. /package/templates/{server → js/server}/src/errors.rs +0 -0
  54. /package/templates/{server → js/server}/src/main.rs +0 -0
  55. /package/templates/{server → js/server}/src/utils.rs +0 -0
package/README.md CHANGED
@@ -16,16 +16,18 @@
16
16
 
17
17
  ---
18
18
 
19
- # TITAN PLANET 🚀
20
- [![Titan Planet](https://img.shields.io/npm/v/@ezetgalaxy/titan.svg?style=flat-square&logo=data:image/png;base64,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)](https://github.com/ezet-galaxy/titanpl)
19
+ # TITAN PLANET 🚀
21
20
 
21
+ [![npm version](https://img.shields.io/npm/v/@ezetgalaxy/titan.svg?style=flat-square)](https://www.npmjs.com/package/@ezetgalaxy/titan)
22
22
 
23
- **JavaScript Simplicity. Rust Power. Zero Configuration.**
24
23
 
25
- Titan Planet is a JavaScript-first backend framework that embeds JS actions into a Rust + Axum server and ships as a single native binary. Routes are compiled to static metadata; only actions run in the embedded JS runtime. No Node.js. No event loop in production.
24
+ **JavaScript Simplicity. Native Rust Power. Zero Configuration.**
26
25
 
27
- You write **zero Rust**.
28
- Titan ships a full backend engine, dev server, bundler, router, action runtime, and Docker deploy pipeline — all powered by Rust under the hood.
26
+ Titan Planet is a **JavaScript-first Backend Framework** that compiles your application into a single, high-performance native binary. It embeds a V8 JavaScript runtime directly into a specialized Rust + Axum server.
27
+
28
+ **Start with pure JavaScript.**
29
+ **Need raw power? Add Rust actions seamlessly.**
30
+ Titan handles the compilation, bundling, and routing automatically for both.
29
31
 
30
32
  Titan = **JavaScript productivity × Rust performance × Zero DevOps**
31
33
 
@@ -36,253 +38,138 @@ Titan = **JavaScript productivity × Rust performance × Zero DevOps**
36
38
  | Feature | Titan | Express/Nest | FastAPI | Bun |
37
39
  | ------------------------------------ | ----- | ------------ | ------- | --------- |
38
40
  | Native binary output | ✅ Yes | ❌ No | ❌ No | ❌ No |
39
- | Rust-level performance | ✅ Yes | ❌ No | ❌ No | ❌ No |
41
+ | Hybrid Rust + JS Actions | ✅ Yes | ❌ No | ❌ No | ❌ No |
40
42
  | Pure JavaScript developer experience | ✅ Yes | ✅ Yes | ❌ No | ❌ Partial |
41
43
  | Zero-config Docker deploy | ✅ Yes | ❌ No | ❌ No | ❌ No |
42
44
  | Action-based architecture | ✅ Yes | ❌ No | ❌ No | ❌ No |
43
45
  | Hot reload dev server | ✅ Yes | ❌ No | ❌ No | ❌ No |
44
46
 
45
- Titan gives you:
46
-
47
- * Native speed
48
- * JS comfort
49
- * Cloud-first deployment
50
- * Full environment variable support
51
- * Built-in HTTP client (`t.fetch`)
52
- * Lightweight serverless-like actions
53
- * Instant hot reload
54
- * Zero configuration
55
- * Single deployable binary
56
-
57
47
  ---
58
48
 
59
49
  # 🚀 Quick Start
60
50
 
51
+ ### 1. Prerequisites
52
+ * **Rust** (latest stable): [Install Rust](https://rust-lang.org/tools/install/)
53
+ * **Node.js** (v18+): Required for CLI and JS tooling.
61
54
 
62
- # Requirements
63
-
64
- Install before using Titan:
65
-
66
- ### 1. Rust (latest stable)
67
-
68
- [https://rust-lang.org/tools/install/](https://rust-lang.org/tools/install/)
69
-
70
- ### 2. Node.js (v18+)
71
-
72
- Required for:
73
-
74
- * Titan CLI
75
- * esbuild
76
- * JS → Rust compilation pipeline
77
-
78
- Verify:
79
-
55
+ ### 2. Install CLI
80
56
  ```bash
81
- node -v
82
- npm -v
83
- rustc -V
57
+ npm install -g @ezetgalaxy/titan
84
58
  ```
85
59
 
86
- ---
87
-
88
- ### Install Titan CLI
89
-
60
+ ### 3. Initialize & Run
90
61
  ```bash
91
- npm install -g @ezetgalaxy/titan
62
+ titan init my-app
63
+ # Follow the interactive prompt to choose:
64
+ # - JavaScript (Standard)
65
+ # - Rust + JavaScript (Beta)
92
66
  ```
93
67
 
94
- ### Create a new project
95
-
68
+ Inside your project:
96
69
  ```bash
97
- titan init my-app
98
70
  cd my-app
99
71
  titan dev
100
72
  ```
101
73
 
102
- Titan will:
74
+ You'll see the Titan Dev Server spin up:
75
+ ```
76
+ Titan Planet v26.8.0 [ Dev Mode ]
77
+
78
+ Type: Rust + JS Actions
79
+ Hot Reload: Enabled
103
80
 
104
- * Build routes
105
- * Bundle actions
106
- * Start Rust dev server
107
- * Watch file changes
108
- * Trigger instant reload
81
+ Preparing runtime... Done
82
+ A new orbit is ready for your app in 0.9s
83
+ Your app is now orbiting Titan Planet
84
+ ```
109
85
 
110
86
  ---
111
87
 
112
- # Update to new version
88
+ # Hybrid Action System
113
89
 
114
- * At first update the cli
90
+ Titan is unique because it allows you to write endpoints in **both** JavaScript and Rust within the same project.
115
91
 
116
- ```bash
117
- npm install -g @ezetgalaxy/titan@latest
92
+ ### 🟡 JavaScript Actions (`app/actions/hello.js`)
93
+ Perfect for business logic, rapid prototyping, and IO-bound tasks.
94
+ ```javascript
95
+ export function run(req) {
96
+ t.log("Handling user request...");
97
+ return {
98
+ message: "Hello from JavaScript!",
99
+ user_id: req.params.id
100
+ };
101
+ }
118
102
  ```
119
- * Then
120
103
 
121
- ```bash
122
- titan update
104
+ ### 🔴 Rust Actions (Beta)
105
+ Perfect for heavy computation, encryption, image processing, or low-level system access.
106
+ > **Note:** The Native Rust Action API is currently in **Beta**.
107
+ ```rust
108
+ use axum::{response::{IntoResponse, Json}, http::Request, body::Body};
109
+ use serde_json::json;
110
+
111
+ pub async fn run(req: Request<Body>) -> impl IntoResponse {
112
+ let result = heavy_computation();
113
+ t.log("Processed 1M records in Rust");
114
+ Json(json!({ "result": result }))
115
+ }
123
116
  ```
124
- * ``tit update`` will update and add new features in your Titan project
125
-
126
-
127
- # ✨ What Titan Can Do (New & Core Features)
128
-
129
- Titan now includes a **complete runtime engine** with the following built-in capabilities:
130
-
131
- ### 🛣 Routing & HTTP
132
-
133
- * Static routes (`/`, `/health`)
134
- * Dynamic routes (`/user/:id<number>`)
135
- * Typed route parameters
136
- * Automatic method matching (GET / POST)
137
- * Query parsing (`req.query`)
138
- * Body parsing (`req.body`)
139
- * Zero-config routing metadata generation
140
117
 
141
- ### 🧠 Action Runtime
118
+ **Titan automatically detects, compiles, and routes both types.**
119
+ * `.js` files are bundled with esbuild.
120
+ * `.rs` files are compiled into the native binary.
121
+ * Both share the same `routes.json` configuration.
142
122
 
143
- * JavaScript actions executed inside a Rust runtime (v8)
144
- * Automatic action discovery and execution
145
- * No `globalThis` required anymore
146
- * Safe handling of `undefined` returns
147
- * JSON serialization guardrails
148
- * Action-scoped execution context
123
+ ---
149
124
 
150
- ### 🔌 Runtime APIs (`t`)
125
+ # Core Capabilities
151
126
 
152
- * `t.fetch(...)` built-in Rust-powered HTTP client
153
- * `t.log(...)` — sandboxed, action-scoped logging
154
- * Environment variable access (`process.env`)
155
- * No access to raw Node.js APIs (safe by default)
127
+ ### 🔌 Unified Runtime API (`t`)
128
+ Both JS and Rust actions have access to the powerful `t` namespace:
156
129
 
157
- ### 🧾 Request Object (`req`)
130
+ * `t.fetch(url, options)` High-performance HTTP client
131
+ * `t.log(msg)` — Sandboxed, structured logging
132
+ * `t.jwt.sign / verify` — Fast JWT operations
133
+ * `t.password.hash / verify` — Secure password handling
134
+ * `t.db` — Database access (coming soon)
158
135
 
159
- Each action receives a normalized request object:
136
+ ### 🛣 Intelligent Routing
137
+ Define your routes in `routes.json`. Titan maps them to the correct action, regardless of language.
160
138
 
161
139
  ```json
162
140
  {
163
- "method": "GET",
164
- "path": "/user/90",
165
- "params": { "id": "90" },
166
- "query": {},
167
- "body": null,
168
-
169
- "headers": {
170
- "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7",
171
- "accept-encoding": "gzip, deflate, br, zstd",
172
- "accept-language": "en-US,en;q=0.9",
173
- "cache-control": "max-age=0",
174
- "connection": "keep-alive",
175
- "cookie": "",
176
- "host": "localhost:3000",
177
- "sec-ch-ua": "\"Google Chrome\";v=\"143\", \"Chromium\";v=\"143\", \"Not A(Brand\";v=\"24\"",
178
- "sec-ch-ua-mobile": "?0",
179
- "sec-ch-ua-platform": "\"Windows\"",
180
- "sec-fetch-dest": "document",
181
- "sec-fetch-mode": "navigate",
182
- "sec-fetch-site": "none",
183
- "sec-fetch-user": "?1",
184
- "upgrade-insecure-requests": "1",
185
- "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
186
- },
141
+ "/hello": "hello", // variable name matches filename (hello.js)
142
+ "/compute": "compute" // variable name matches filename (compute.rs)
187
143
  }
188
144
  ```
189
145
 
190
- This object is:
191
-
192
- * Stable
193
- * Predictable
194
- * Serializable
195
- * Identical across dev & production
196
-
197
- ---
198
-
199
- ### 🔥 Developer Experience
200
-
201
- * Hot reload dev server (`titan dev`)
202
- * Automatic rebundling of actions
203
- * Automatic Rust server restart
204
- * Colored request logs
205
- * Per-route timing metrics
206
- * Action-aware logs
207
-
208
- Example runtime log:
209
-
210
- ```
211
- [Titan] GET /user/90 → getUser (dynamic) in 0.42ms
212
- [Titan] log(getUser): Fetching user 90
213
- ```
214
-
215
- ---
216
-
217
- ### 🧨 Error Handling & Diagnostics
218
-
219
- * JavaScript runtime errors captured safely
220
- * Action-aware error reporting
221
- * Line & column hints from runtime
222
- * Red-colored error logs
223
- * No server crashes on user mistakes
224
- * Safe fallback for `undefined` returns
225
-
226
- ---
227
-
228
- ### ⚙ Build & Deployment
229
-
230
- * Native Rust binary output
231
- * Zero-config Dockerfile generation
232
- * Multi-stage optimized Docker builds
233
- * Works on:
234
-
235
- * Railway
236
- * Fly.io
237
- * Render
238
- * VPS
239
- * Kubernetes
240
- * No Node.js required in production
146
+ ### 🧩 Extensions System
147
+ Extend the runtime with custom Rust engines using **Titan Extensions**.
148
+ * `titan create ext <name>`: Scaffold a new extension.
149
+ * `titan run ext`: Test your extension in a lightweight harness.
241
150
 
242
151
  ---
243
152
 
244
- ---
245
-
246
- ### 🧩 Titan Extensions & Test Harness
153
+ # 📦 Deployment
247
154
 
248
- Titan Planet isn't just a framework; it's an extensible platform. You can build custom extensions to add new native capabilities to the `t` runtime.
155
+ Titan compiles your entire app—JS code, Rust code, and server logic—into a **single executable**.
249
156
 
250
- * **`titan create ext <name>`**: Scaffold a new Titan Extension template (supports JS and Native Rust modules).
251
- * **`titan run ext`**: Launch the **Titan Test Harness**. This provides a "lite" Titan runtime environment that automatically:
252
- * Builds your native Rust code.
253
- * Links your extension to a temporary project.
254
- * Generates a test suite to verify your extension's methods.
255
- * Starts a live server to test extension logic in a real-world scenario.
157
+ * **Tiny Docker Images**: Alpine-based, ~20MB compressed.
158
+ * **Instant Startup**: No node_modules overhead.
159
+ * **Secure**: No access to system APIs from JS unless explicitly bridged.
256
160
 
257
161
  ---
258
162
 
259
- ### 🧱 Architecture Guarantees
260
-
261
- # 🧩 Example Action (Updated No `globalThis` Needed)
262
-
263
- ```js
264
- export function getUser(req) {
265
- t.log("User id:", req.params.id);
266
-
267
- return {
268
- id: Number(req.params.id),
269
- method: req.method
270
- };
271
- }
272
- ```
273
-
274
- That’s it.
275
- No exports wiring. No globals. No boilerplate.
163
+ # 🧱 Architecture Note
164
+ Titan is **not** a Node.js framework. It is a Rust server that speaks JavaScript.
165
+ * **No Event Loop** for JS (Request/Response model).
166
+ * **No `require`** (Use raw imports or bundled dependencies).
167
+ * **True Isolation** per request.
276
168
 
277
169
  ---
278
170
 
279
- # 📦 Version
280
-
281
171
  **Titan v26 — Stable**
172
+ * Production-ready Hybrid Runtime
173
+ * Native Rust Performance
174
+ * Zero-Config Cloud Deployment
282
175
 
283
- * Production-ready runtime
284
- * Safe JS execution
285
- * Native Rust performance
286
- * Designed for cloud & AI workloads
287
-
288
- ---