@onebun/core 0.1.0 → 0.1.1
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 +44 -3
- package/package.json +13 -2
- package/src/docs-examples.test.ts +2166 -0
package/README.md
CHANGED
|
@@ -1,10 +1,47 @@
|
|
|
1
|
-
#
|
|
1
|
+
# @onebun/core
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Core package for OneBun framework providing decorators, dependency injection, and modular architecture.
|
|
4
4
|
|
|
5
5
|
## Features
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
- 🎯 **Modular Architecture** - Organize code in modules with controllers and services
|
|
8
|
+
- 🏷️ **Declarative Routes** - Use decorators (@Controller, @Get, @Post, etc.)
|
|
9
|
+
- 💉 **Type-safe DI** - Effect.Context and Layer for dependency management
|
|
10
|
+
- ✅ **Built-in Validation** - Schema-based validation with ArkType integration
|
|
11
|
+
- 🔧 **Middleware Support** - Chainable middleware with decorators
|
|
12
|
+
- 📦 **Service Pattern** - BaseService and BaseController for standardized code
|
|
13
|
+
- 🔄 **Multi-service Support** - Run multiple services in one process
|
|
14
|
+
- ⚡ **Effect.js Integration** - Full Effect.js ecosystem support
|
|
15
|
+
|
|
16
|
+
## Installation
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
bun add @onebun/core
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Quick Start
|
|
23
|
+
|
|
24
|
+
```typescript
|
|
25
|
+
import { OneBunApplication, Controller, Get, Module } from '@onebun/core';
|
|
26
|
+
|
|
27
|
+
@Controller('/api')
|
|
28
|
+
class AppController {
|
|
29
|
+
@Get('/hello')
|
|
30
|
+
async hello() {
|
|
31
|
+
return { message: 'Hello, OneBun!' };
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
@Module({
|
|
36
|
+
controllers: [AppController],
|
|
37
|
+
})
|
|
38
|
+
class AppModule {}
|
|
39
|
+
|
|
40
|
+
const app = new OneBunApplication(AppModule);
|
|
41
|
+
await app.start();
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Route Decorators
|
|
8
45
|
|
|
9
46
|
The OneBun framework provides a set of decorators for defining routes in controllers:
|
|
10
47
|
|
|
@@ -275,3 +312,7 @@ app.start()
|
|
|
275
312
|
```
|
|
276
313
|
|
|
277
314
|
The application automatically creates a logger based on NODE_ENV (development or production) and handles all Effect.js calls internally.
|
|
315
|
+
|
|
316
|
+
## License
|
|
317
|
+
|
|
318
|
+
[LGPL-3.0](../../LICENSE)
|
package/package.json
CHANGED
|
@@ -1,9 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onebun/core",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "Core package for OneBun framework",
|
|
3
|
+
"version": "0.1.1",
|
|
4
|
+
"description": "Core package for OneBun framework - decorators, DI, modules, controllers",
|
|
5
5
|
"license": "LGPL-3.0",
|
|
6
6
|
"author": "RemRyahirev",
|
|
7
|
+
"keywords": [
|
|
8
|
+
"onebun",
|
|
9
|
+
"framework",
|
|
10
|
+
"bun",
|
|
11
|
+
"typescript",
|
|
12
|
+
"effect",
|
|
13
|
+
"decorators",
|
|
14
|
+
"dependency-injection",
|
|
15
|
+
"controllers",
|
|
16
|
+
"modules"
|
|
17
|
+
],
|
|
7
18
|
"repository": {
|
|
8
19
|
"type": "git",
|
|
9
20
|
"url": "git+https://github.com/RemRyahirev/onebun.git",
|