普通的异步代码。清晰的应用组合。
用明确的插件依赖和统一的生命周期组合 TypeScript 服务。从 Bun 开始,只添加应用需要的能力。
在 GitHub 上查看源码一个小应用,完整的生命周期。
app.tsimport { defineApp, definePlugin, startApp } from "@lenso/core";
const notes = definePlugin({
id: "notes",
setup() {
return {
async list() {
return [];
},
};
},
});
const app = await startApp(defineApp({ plugins: [notes] }));
try {
console.log(await app.get(notes).list());
} finally {
await app.stop();
}此示例使用已发布的 @lenso/core@0.2.0 API。
扩展能力,保留选择。
按应用需要组合插件,让底层服务与平台边界始终清晰。
Web 与 Fetch
类型化过程或原生请求,由你选择边界。
Auth
处理身份与会话,授权仍由应用负责。
Drizzle 与数据库
使用多个数据库实例,自主掌握迁移。
Files 与存储
区分文件记录与对象存储的资源归属。
Tasks
后台任务,明确队列与工作进程的生命周期。
日志与可观测性
应用日志,以及适合不同平台的观测方式。
插件指南使用已核实的 TypeScript 0.2 包版本组合。 查看兼容性,再选择包版本。