Awesome Open Source
Awesome Open Source

Alosaur 🦖

Alosaur - Deno web framework 🦖.

Documentation

test sponsors

  • Area - these are the modules of your application.
  • Controller - are responsible for controlling the flow of the application execution.
  • Middleware - provide a convenient mechanism for filtering HTTP requests entering your application.
  • Hooks - middleware for area, controller and actions with support DI. Have 3 life cyclic functions: onPreAction, onPostAction, onCatchAction
  • Decorators - for query, cookie, parametrs, routes and etc.
  • Dependency Injection - for all controllers and hooks by default from microsoft/TSyringe (more about alosaur injection).
  • Security - supports security context (Session, Authentication, Authorization, OAuth, Google and custom strategy) Security
  • Render pages any template render engine. (more)

中文说明

How do I use Alosaur in Deno Deploy? Use the light version of Alosaur: Alosaur Lite


Features roadmap

  • [x] Microservices (TCP) example
  • [x] Docs website
  • [ ] CLI: run applications
  • [ ] Create REPL http tool (tool for tests API, WebSockets etc), integrate with Alosaur openapi
  • [ ] Background process, BackgroundService, WebJobs, cron

Simple example

app.ts:

import { App, Area, Controller, Get } from "https://deno.land/x/[email protected]/mod.ts";

@Controller() // or specific path @Controller("/home")
export class HomeController {
  @Get() // or specific path @Get("/hello")
  text() {
    return "Hello world";
  }
}

// Declare module
@Area({
  controllers: [HomeController],
})
export class HomeArea {}

// Create alosaur application
const app = new App({
  areas: [HomeArea],
});

app.listen();

And run

deno run --allow-net app.ts

More examples

Sponsors

Backers



Alternative Project Comparisons
Related Awesome Lists
Top Programming Languages
Top Projects

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Typescript (255,886
Mvc (10,148
Decorators (4,765
Handlebars (4,027
Openapi (3,432
Deno (1,645
Jsdoc (1,180