alepha 0.15.4 → 0.16.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/README.md +26 -11
- package/dist/api/audits/index.d.ts +335 -335
- package/dist/api/audits/index.d.ts.map +1 -1
- package/dist/api/audits/index.js +3 -3
- package/dist/api/audits/index.js.map +1 -1
- package/dist/api/files/index.d.ts +3 -3
- package/dist/api/files/index.js +3 -3
- package/dist/api/files/index.js.map +1 -1
- package/dist/api/jobs/index.d.ts +199 -156
- package/dist/api/jobs/index.d.ts.map +1 -1
- package/dist/api/jobs/index.js +100 -5
- package/dist/api/jobs/index.js.map +1 -1
- package/dist/api/keys/index.d.ts +198 -198
- package/dist/api/keys/index.d.ts.map +1 -1
- package/dist/api/keys/index.js +3 -3
- package/dist/api/keys/index.js.map +1 -1
- package/dist/api/notifications/index.d.ts +3 -3
- package/dist/api/notifications/index.js +3 -3
- package/dist/api/notifications/index.js.map +1 -1
- package/dist/api/parameters/index.d.ts +263 -263
- package/dist/api/parameters/index.d.ts.map +1 -1
- package/dist/api/parameters/index.js +31 -30
- package/dist/api/parameters/index.js.map +1 -1
- package/dist/api/users/index.d.ts +1097 -791
- package/dist/api/users/index.d.ts.map +1 -1
- package/dist/api/users/index.js +364 -101
- package/dist/api/users/index.js.map +1 -1
- package/dist/api/verifications/index.d.ts +131 -131
- package/dist/api/verifications/index.d.ts.map +1 -1
- package/dist/api/verifications/index.js +3 -3
- package/dist/api/verifications/index.js.map +1 -1
- package/dist/batch/index.d.ts +7 -7
- package/dist/batch/index.js +3 -3
- package/dist/batch/index.js.map +1 -1
- package/dist/bucket/index.d.ts +3 -3
- package/dist/bucket/index.js +97 -35
- package/dist/bucket/index.js.map +1 -1
- package/dist/cache/core/index.d.ts +3 -3
- package/dist/cache/core/index.js +3 -3
- package/dist/cache/core/index.js.map +1 -1
- package/dist/cli/index.d.ts +5765 -37
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +900 -184
- package/dist/cli/index.js.map +1 -1
- package/dist/command/index.d.ts +12 -4
- package/dist/command/index.d.ts.map +1 -1
- package/dist/command/index.js +103 -37
- package/dist/command/index.js.map +1 -1
- package/dist/core/index.browser.js +20 -0
- package/dist/core/index.browser.js.map +1 -1
- package/dist/core/index.d.ts +13 -8
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +23 -3
- package/dist/core/index.js.map +1 -1
- package/dist/core/index.native.js +20 -0
- package/dist/core/index.native.js.map +1 -1
- package/dist/datetime/index.d.ts +3 -3
- package/dist/datetime/index.js +3 -3
- package/dist/datetime/index.js.map +1 -1
- package/dist/email/index.d.ts +3 -3
- package/dist/email/index.js +100 -38
- package/dist/email/index.js.map +1 -1
- package/dist/fake/index.d.ts +3 -3
- package/dist/fake/index.js +3 -3
- package/dist/fake/index.js.map +1 -1
- package/dist/lock/core/index.d.ts +3 -3
- package/dist/lock/core/index.js +3 -3
- package/dist/lock/core/index.js.map +1 -1
- package/dist/logger/index.d.ts +3 -3
- package/dist/logger/index.js +6 -3
- package/dist/logger/index.js.map +1 -1
- package/dist/mcp/index.d.ts +3 -3
- package/dist/mcp/index.js +3 -3
- package/dist/mcp/index.js.map +1 -1
- package/dist/orm/index.bun.js +3 -2
- package/dist/orm/index.bun.js.map +1 -1
- package/dist/orm/index.d.ts +19 -19
- package/dist/orm/index.d.ts.map +1 -1
- package/dist/orm/index.js +22 -8
- package/dist/orm/index.js.map +1 -1
- package/dist/queue/core/index.d.ts +3 -3
- package/dist/queue/core/index.js +3 -3
- package/dist/queue/core/index.js.map +1 -1
- package/dist/react/auth/index.d.ts +3 -3
- package/dist/react/auth/index.js +3 -3
- package/dist/react/auth/index.js.map +1 -1
- package/dist/react/core/index.d.ts +6 -6
- package/dist/react/core/index.js +3 -3
- package/dist/react/core/index.js.map +1 -1
- package/dist/react/form/index.d.ts +3 -3
- package/dist/react/form/index.js +3 -3
- package/dist/react/form/index.js.map +1 -1
- package/dist/react/head/index.d.ts +3 -3
- package/dist/react/head/index.js +3 -3
- package/dist/react/head/index.js.map +1 -1
- package/dist/react/i18n/index.d.ts +3 -3
- package/dist/react/i18n/index.js +3 -3
- package/dist/react/i18n/index.js.map +1 -1
- package/dist/react/intro/index.d.ts +40 -0
- package/dist/react/intro/index.d.ts.map +1 -0
- package/dist/react/intro/index.js +634 -0
- package/dist/react/intro/index.js.map +1 -0
- package/dist/react/router/index.browser.js +9 -6
- package/dist/react/router/index.browser.js.map +1 -1
- package/dist/react/router/index.d.ts +1 -1
- package/dist/react/router/index.d.ts.map +1 -1
- package/dist/react/router/index.js +103 -38
- package/dist/react/router/index.js.map +1 -1
- package/dist/redis/index.d.ts +3 -3
- package/dist/redis/index.js +3 -3
- package/dist/redis/index.js.map +1 -1
- package/dist/retry/index.d.ts +3 -3
- package/dist/retry/index.js +3 -3
- package/dist/retry/index.js.map +1 -1
- package/dist/scheduler/index.d.ts +3 -3
- package/dist/scheduler/index.js +3 -3
- package/dist/scheduler/index.js.map +1 -1
- package/dist/security/index.d.ts +3 -3
- package/dist/security/index.js +5 -5
- package/dist/security/index.js.map +1 -1
- package/dist/server/auth/index.d.ts +3 -3
- package/dist/server/auth/index.js +3 -3
- package/dist/server/auth/index.js.map +1 -1
- package/dist/server/cache/index.d.ts +3 -3
- package/dist/server/cache/index.js +3 -3
- package/dist/server/cache/index.js.map +1 -1
- package/dist/server/compress/index.d.ts +3 -3
- package/dist/server/compress/index.js +3 -3
- package/dist/server/compress/index.js.map +1 -1
- package/dist/server/cookies/index.d.ts +3 -3
- package/dist/server/cookies/index.js +3 -3
- package/dist/server/cookies/index.js.map +1 -1
- package/dist/server/core/index.d.ts +43 -51
- package/dist/server/core/index.d.ts.map +1 -1
- package/dist/server/core/index.js +42 -38
- package/dist/server/core/index.js.map +1 -1
- package/dist/server/cors/index.d.ts +3 -3
- package/dist/server/cors/index.js +3 -3
- package/dist/server/cors/index.js.map +1 -1
- package/dist/server/health/index.d.ts +3 -3
- package/dist/server/health/index.js +3 -3
- package/dist/server/health/index.js.map +1 -1
- package/dist/server/helmet/index.d.ts +3 -3
- package/dist/server/helmet/index.js +3 -3
- package/dist/server/helmet/index.js.map +1 -1
- package/dist/server/links/index.browser.js +5 -0
- package/dist/server/links/index.browser.js.map +1 -1
- package/dist/server/links/index.d.ts +4 -3
- package/dist/server/links/index.d.ts.map +1 -1
- package/dist/server/links/index.js +8 -3
- package/dist/server/links/index.js.map +1 -1
- package/dist/server/metrics/index.d.ts +3 -3
- package/dist/server/metrics/index.js +3 -3
- package/dist/server/metrics/index.js.map +1 -1
- package/dist/server/multipart/index.d.ts +3 -3
- package/dist/server/multipart/index.js +3 -3
- package/dist/server/multipart/index.js.map +1 -1
- package/dist/server/proxy/index.d.ts +3 -3
- package/dist/server/proxy/index.js +3 -3
- package/dist/server/proxy/index.js.map +1 -1
- package/dist/server/rate-limit/index.d.ts +3 -3
- package/dist/server/rate-limit/index.js +3 -3
- package/dist/server/rate-limit/index.js.map +1 -1
- package/dist/server/static/index.d.ts +3 -3
- package/dist/server/static/index.d.ts.map +1 -1
- package/dist/server/static/index.js +103 -39
- package/dist/server/static/index.js.map +1 -1
- package/dist/server/swagger/index.d.ts +3 -3
- package/dist/server/swagger/index.js +97 -35
- package/dist/server/swagger/index.js.map +1 -1
- package/dist/sms/index.d.ts +3 -3
- package/dist/sms/index.js +97 -35
- package/dist/sms/index.js.map +1 -1
- package/dist/system/index.browser.js +30 -16
- package/dist/system/index.browser.js.map +1 -1
- package/dist/system/index.d.ts +19 -3
- package/dist/system/index.d.ts.map +1 -1
- package/dist/system/index.js +94 -32
- package/dist/system/index.js.map +1 -1
- package/dist/thread/index.d.ts +3 -3
- package/dist/thread/index.js +3 -3
- package/dist/thread/index.js.map +1 -1
- package/dist/topic/core/index.d.ts +3 -3
- package/dist/topic/core/index.js +3 -3
- package/dist/topic/core/index.js.map +1 -1
- package/dist/vite/index.d.ts +6284 -3
- package/dist/vite/index.d.ts.map +1 -1
- package/dist/vite/index.js +5 -4
- package/dist/vite/index.js.map +1 -1
- package/dist/websocket/index.d.ts +37 -37
- package/dist/websocket/index.d.ts.map +1 -1
- package/dist/websocket/index.js +3 -3
- package/dist/websocket/index.js.map +1 -1
- package/package.json +13 -8
- package/src/api/audits/index.ts +3 -3
- package/src/api/files/index.ts +3 -3
- package/src/api/files/jobs/FileJobs.spec.ts +1 -1
- package/src/api/jobs/controllers/AdminJobController.ts +15 -2
- package/src/api/jobs/index.ts +4 -3
- package/src/api/jobs/services/JobAudits.spec.ts +89 -0
- package/src/api/jobs/services/JobAudits.ts +101 -0
- package/src/api/keys/index.ts +3 -3
- package/src/api/notifications/index.ts +3 -3
- package/src/api/parameters/index.ts +5 -3
- package/src/api/users/__tests__/ApiKeys-integration.spec.ts +1 -1
- package/src/api/users/__tests__/ApiKeys.spec.ts +1 -1
- package/src/api/users/__tests__/EmailVerification.spec.ts +16 -1
- package/src/api/users/__tests__/PasswordReset.spec.ts +11 -0
- package/src/api/users/atoms/realmAuthSettingsAtom.ts +10 -0
- package/src/api/users/index.ts +8 -9
- package/src/api/users/primitives/$realm.ts +117 -19
- package/src/api/users/providers/RealmProvider.ts +15 -7
- package/src/api/users/services/CredentialService.spec.ts +11 -0
- package/src/api/users/services/CredentialService.ts +47 -24
- package/src/api/users/services/IdentityService.ts +12 -4
- package/src/api/users/services/RegistrationService.spec.ts +11 -0
- package/src/api/users/services/RegistrationService.ts +33 -12
- package/src/api/users/services/SessionService.ts +83 -12
- package/src/api/users/services/UserAudits.ts +47 -0
- package/src/api/users/services/UserFiles.ts +19 -0
- package/src/api/users/services/UserJobs.spec.ts +107 -0
- package/src/api/users/services/UserJobs.ts +62 -0
- package/src/api/users/services/UserParameters.ts +23 -0
- package/src/api/users/services/UserService.ts +34 -17
- package/src/api/verifications/index.ts +3 -3
- package/src/batch/index.ts +3 -3
- package/src/bucket/index.ts +3 -3
- package/src/cache/core/index.ts +3 -3
- package/src/cli/apps/AlephaCli.ts +4 -2
- package/src/cli/apps/AlephaPackageBuilderCli.ts +7 -1
- package/src/cli/commands/db.ts +15 -2
- package/src/cli/commands/init.spec.ts +23 -17
- package/src/cli/commands/init.ts +47 -2
- package/src/cli/providers/AppEntryProvider.ts +14 -19
- package/src/cli/providers/DevServerProvider.ts +563 -0
- package/src/cli/providers/ViteDevServerProvider.ts +99 -115
- package/src/cli/services/AlephaCliUtils.ts +17 -0
- package/src/cli/services/PackageManagerUtils.ts +15 -1
- package/src/cli/services/ProjectScaffolder.ts +34 -8
- package/src/cli/templates/agentMd.ts +2 -25
- package/src/cli/templates/alephaConfigTs.ts +44 -0
- package/src/cli/templates/apiAppSecurityTs.ts +37 -2
- package/src/cli/templates/apiHelloControllerTs.ts +20 -6
- package/src/cli/templates/apiHelloResponseSchemaTs.ts +11 -0
- package/src/cli/templates/mainCss.ts +43 -29
- package/src/cli/templates/webAppRouterTs.ts +5 -5
- package/src/cli/templates/webHomeComponentTsx.ts +30 -0
- package/src/command/helpers/PrettyPrint.ts +4 -1
- package/src/command/helpers/Runner.ts +14 -1
- package/src/command/index.ts +3 -3
- package/src/core/Alepha.ts +25 -0
- package/src/core/helpers/primitive.ts +0 -5
- package/src/core/index.ts +3 -3
- package/src/datetime/index.ts +3 -3
- package/src/email/index.ts +3 -3
- package/src/email/providers/LocalEmailProvider.ts +2 -2
- package/src/fake/index.ts +3 -3
- package/src/lock/core/index.ts +3 -3
- package/src/logger/index.ts +3 -3
- package/src/logger/providers/PrettyFormatterProvider.ts +7 -0
- package/src/mcp/index.ts +3 -3
- package/src/orm/index.ts +3 -3
- package/src/orm/providers/drivers/BunSqliteProvider.ts +4 -3
- package/src/orm/providers/drivers/NodeSqliteProvider.ts +26 -4
- package/src/queue/core/index.ts +3 -3
- package/src/react/auth/index.ts +3 -3
- package/src/react/core/index.ts +3 -3
- package/src/react/form/index.ts +3 -3
- package/src/react/head/index.ts +3 -3
- package/src/react/i18n/index.ts +3 -3
- package/src/react/intro/components/GettingStarted.tsx +580 -0
- package/src/react/intro/components/GettingStartedAdminSlide.tsx +91 -0
- package/src/react/intro/components/GettingStartedAuthSlide.tsx +62 -0
- package/src/react/intro/index.ts +5 -0
- package/src/react/router/components/ErrorViewer.tsx +3 -1
- package/src/react/router/index.browser.ts +2 -0
- package/src/react/router/index.ts +2 -0
- package/src/react/router/providers/ReactBrowserRouterProvider.ts +10 -2
- package/src/redis/index.ts +3 -3
- package/src/retry/index.ts +3 -3
- package/src/router/index.ts +3 -3
- package/src/scheduler/index.ts +3 -3
- package/src/security/index.ts +3 -3
- package/src/security/providers/JwtProvider.ts +2 -2
- package/src/server/auth/index.ts +3 -3
- package/src/server/cache/index.ts +3 -3
- package/src/server/compress/index.ts +3 -3
- package/src/server/cookies/index.ts +3 -3
- package/src/server/core/index.ts +3 -3
- package/src/server/core/primitives/$action.spec.ts +3 -2
- package/src/server/core/primitives/$action.ts +6 -2
- package/src/server/core/providers/NodeHttpServerProvider.ts +46 -29
- package/src/server/core/providers/ServerProvider.ts +4 -2
- package/src/server/core/providers/ServerRouterProvider.ts +5 -27
- package/src/server/cors/index.ts +3 -3
- package/src/server/health/index.ts +3 -3
- package/src/server/helmet/index.ts +3 -3
- package/src/server/links/index.ts +3 -3
- package/src/server/links/providers/LinkProvider.ts +7 -0
- package/src/server/metrics/index.ts +3 -3
- package/src/server/multipart/index.ts +3 -3
- package/src/server/proxy/index.ts +3 -3
- package/src/server/rate-limit/index.ts +3 -3
- package/src/server/static/index.ts +3 -3
- package/src/server/static/providers/ServerStaticProvider.ts +8 -5
- package/src/server/swagger/index.ts +3 -3
- package/src/sms/index.ts +3 -3
- package/src/system/index.ts +3 -3
- package/src/system/providers/MemoryFileSystemProvider.ts +25 -11
- package/src/system/providers/NodeFileSystemProvider.ts +4 -4
- package/src/system/providers/NodeShellProvider.ts +90 -29
- package/src/thread/index.ts +3 -3
- package/src/topic/core/index.ts +3 -3
- package/src/vite/tasks/buildServer.ts +6 -5
- package/src/vite/tasks/prerenderPages.ts +2 -1
- package/src/websocket/index.ts +3 -3
- package/src/cli/templates/webHelloComponentTsx.ts +0 -30
- /package/src/api/users/{notifications → services}/UserNotifications.ts +0 -0
package/README.md
CHANGED
|
@@ -18,13 +18,24 @@ Alepha
|
|
|
18
18
|
|
|
19
19
|
## What is this?
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
Enterprise-grade TypeScript framework for building full-stack applications with end-to-end type safety and minimal boilerplate.
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
One schema
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
Deploy anywhere — Cloudflare, Vercel, Docker, bare metal
|
|
23
|
+
- **Multi-runtime** — Same code runs on Node, Bun, Workerd, Browser, and Expo
|
|
24
|
+
- **One schema, everywhere** — Define once, get database, validation, TypeScript types, and React forms
|
|
25
|
+
- **Full autocomplete** — Client calls server with complete type safety, zero codegen
|
|
26
|
+
- **Substitutable** — Swap any service with `.with()` for testing or customization
|
|
27
|
+
- **Deploy anywhere** — Cloudflare, Vercel, Docker, bare metal
|
|
28
|
+
- **AI friendly** — Built-in [llms.txt](https://alepha.dev/llms.txt) for LLM context
|
|
29
|
+
|
|
30
|
+
Pick your layer. Each one builds on the previous.
|
|
31
|
+
|
|
32
|
+
| Layer | Description | Primitives |
|
|
33
|
+
|-------|-------------|------------|
|
|
34
|
+
| **L0** | Foundation: DI, lifecycle, config | `$inject`, `$client`, `$env`, `$module`, `$hook`, `$logger` |
|
|
35
|
+
| **L1** | Backend: database, queues, storage | `$entity`, `$action`, `$queue`, `$bucket`, `$permission` |
|
|
36
|
+
| **L2** | React frontend with SSR, routing, i18n | `$page`, `$head`, `$atom`, `$dictionary` |
|
|
37
|
+
| **L3** | SaaS features: users, jobs, audits | `$realm`, `$job`, `$audit`, `$notification` |
|
|
38
|
+
| **L4** | Admin panel & auth UI included | `$uiAdmin`, `$uiAuth` |
|
|
28
39
|
|
|
29
40
|
## Example
|
|
30
41
|
|
|
@@ -46,7 +57,11 @@ export class Api {
|
|
|
46
57
|
views = $repository(viewEntity);
|
|
47
58
|
|
|
48
59
|
inc = $action({
|
|
49
|
-
schema: {
|
|
60
|
+
schema: { // ← validates + generates OpenAPI
|
|
61
|
+
response: t.object({
|
|
62
|
+
count: t.number()
|
|
63
|
+
})
|
|
64
|
+
},
|
|
50
65
|
handler: async () => {
|
|
51
66
|
await this.views.create({});
|
|
52
67
|
return { count: await this.views.count() };
|
|
@@ -76,10 +91,10 @@ export class AppRouter {
|
|
|
76
91
|
Requirements: [Node.js](https://nodejs.org/) 22+ or [Bun](https://bun.sh/) 1.3+
|
|
77
92
|
|
|
78
93
|
```bash
|
|
79
|
-
npx alepha init my-app --api #
|
|
80
|
-
npx alepha init my-app --react #
|
|
81
|
-
npx alepha init my-app --admin # Full SaaS starter
|
|
82
|
-
npx alepha init my-app --admin --ai # + AI assistant context
|
|
94
|
+
npx alepha init my-app --api # L1: Backend only
|
|
95
|
+
npx alepha init my-app --react # L2: + React frontend
|
|
96
|
+
npx alepha init my-app --admin # L4: Full SaaS starter
|
|
97
|
+
npx alepha init my-app --admin --ai # L4: + AI assistant context
|
|
83
98
|
|
|
84
99
|
cd my-app && npm run dev
|
|
85
100
|
```
|