Capabilities
Ts.ED is a Node.js and TypeScript framework on top of Express/Koa.js. It provides different platform adapters to build your awesome server-side application.
Depending on the platform you choose, Ts.ED provides a level of abstraction above these common Node.js frameworks (Express/Koa) with the Platform API but some features are not available on all platforms.
You can find below the list of features and plugins provided by Ts.ED and the compatibility with the different platforms.
Runtime support
Here are the runtime support provided by Ts.ED:
Runtime | |
---|---|
Node.js | |
Node.js + Babel | |
Node.js + Webpack | |
Node.js + SWC | |
Bun.js |
Platform features support
Here are the features list provided by Ts.ED and the compatibility with the different platforms:
Features | Express.js | Koa.js | Fastify.js (*) | Serverless AWS | CLI |
---|---|---|---|---|---|
Controllers (routing, nested, inheritance) | |||||
Providers | |||||
Model & JsonSchema | |||||
JsonMapper | |||||
Middlewares | |||||
Pipes | |||||
Interceptors | |||||
Authentication | Using interceptors | ||||
Hooks | |||||
Exceptions | |||||
Logger | |||||
Upload files | |||||
Serve files | |||||
Templating | |||||
Validation | |||||
Response Filters | |||||
Cache |
(*) The platform-fastify has some limitations over the platform-express:
- Deep Query Params aren't supported.
- Session has a small issue over serialization (for hidden field), but it works.
Platform plugins support
Here are the plugins provided by Ts.ED and the compatibility with the different platforms:
Features | Express.js | Koa.js | Fastify.js | Serverless AWS | CLI |
---|---|---|---|---|---|
Passport.js | |||||
Prisma | |||||
TypeORM | |||||
Mongoose | |||||
IORedis | |||||
Objection.js | |||||
GraphQL | |||||
Socket.io | |||||
OIDC | |||||
Stripe |