Framework modular para Elysia e Bun.
Decoradores · DI · Módulos · Velocidade do Elysia.
@Controller, @Get, @Post, @Body e mais — uma API de decoradores limpa e declarativa rodando nativamente no Elysia.
O nestelia mapeia cada rota decorada diretamente para um handler do Elysia, fornecendo inferência de tipos e validação de schema na camada do framework.
import { Controller, Get, Post, Body } from 'nestelia'
import { CreateUserDto } from './dto'
@Controller('/users')
export class UsersController {
@Get()
findAll() {
return { users: [] }
}
@Post()
create(@Body() dto: CreateUserDto) {
return dto
}
}DI baseado em construtor com escopos singleton, transient e request, alimentado por reflect-metadata.
Marque qualquer classe com @Injectable() e declare-a como provider — o nestelia resolve o grafo de dependências completo automaticamente na inicialização.
import { Injectable } from 'nestelia'
@Injectable()
export class UsersService {
private users: User[] = []
async findAll(): Promise<User[]> {
return this.users
}
async create(dto: CreateUserDto): Promise<User> {
this.users.push(dto)
return dto
}
}Encapsule controllers, providers e imports em módulos coesos e reutilizáveis com estrutura clara e explícita.
Uma chamada para createElysiaApplication conecta todo o grafo de dependências e retorna uma instância Elysia pronta.
import 'reflect-metadata'
import { createElysiaApplication } from 'nestelia'
import { AppModule } from './app.module'
const app = await createElysiaApplication(AppModule)
app.listen(3000)
// Listening on http://localhost:3000DX estilo NestJS na velocidade do Elysia — overhead quase zero de decoradores e DI.
Pacotes opcionais — instale apenas o que precisar.
nestelia/scheduler@Cron, @Interval, @Timeout — agendamento de tarefas com node-cron.
nestelia/microservicesTransportes TCP e Redis com @MessagePattern e @EventPattern.
nestelia/apolloGraphQL code-first com @Resolver, @Query, @Mutation, @Subscription.
nestelia/passportAuthGuard e PassportStrategy — estratégias de autenticação prontas para uso.
nestelia/cacheCacheModule com @CacheKey, @CacheTTL e stores de cache plugáveis.
nestelia/rabbitmq@RabbitSubscribe e @RabbitRPC sobre AMQP via amqplib.
nestelia/testingTest.createTestingModule — testes isolados com provedores mock.
nestelia/graphql-pubsubPubSub com Redis para subscriptions GraphQL em tempo real.