All Projects → typetron → framework

typetron / framework

Licence: MIT license
Typetron is a modern Node.js framework for building backend web apps with Typescript

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to framework

lucene
Apache Lucene open-source search software
Stars: ✭ 1,009 (+3503.57%)
Mutual labels:  backend
nestjs-config
NestJS Module for Nonfig services. Nonfig combines Configurations and Features. So you change features, and release swiftly, and measure to digital impact.
Stars: ✭ 40 (+42.86%)
Mutual labels:  backend
multi-projects-architecture-with-Ktor
A Ktor real world example built on multi-projects architecture
Stars: ✭ 29 (+3.57%)
Mutual labels:  backend
woliveiras.github.io
My personal Blog
Stars: ✭ 25 (-10.71%)
Mutual labels:  backend
umbrella
Umbrella framework
Stars: ✭ 98 (+250%)
Mutual labels:  backend
fastapi-framework
A FastAPI Framework for things like Database, Redis, Logging, JWT Authentication, Rate Limits and Sessions
Stars: ✭ 26 (-7.14%)
Mutual labels:  backend
Unity-8
Theme mimicking Unity 8's design
Stars: ✭ 22 (-21.43%)
Mutual labels:  modern
cordova-plugin-webserver
A webserver plugin for cordova
Stars: ✭ 101 (+260.71%)
Mutual labels:  backend
issue-wanted
🏷 Web application to help beginners to start contributing into Haskell projects
Stars: ✭ 61 (+117.86%)
Mutual labels:  backend
get hired training
A set of videos and tips to help our students to be hired as developers 💯
Stars: ✭ 18 (-35.71%)
Mutual labels:  backend
hrms-project-backend
N-Layer Architecture human resource management system project with Java.
Stars: ✭ 74 (+164.29%)
Mutual labels:  backend
Mastering-PHP7
📚 PinterCoding University. Author : Gun Gun Febrianza
Stars: ✭ 92 (+228.57%)
Mutual labels:  backend
next-api-decorators
Collection of decorators to create typed Next.js API routes, with easy request validation and transformation.
Stars: ✭ 187 (+567.86%)
Mutual labels:  backend
node-fastcgi
Create FastCGI applications with node.js
Stars: ✭ 49 (+75%)
Mutual labels:  backend
sisyphus
Sisyphus is the way how we provide backend services.
Stars: ✭ 59 (+110.71%)
Mutual labels:  backend
nine-cards-backend
An Open Source Android Launcher built with Scala on Android
Stars: ✭ 61 (+117.86%)
Mutual labels:  backend
laravel-realworld-example-app
Exemplary RealWorld backend API built with Laravel PHP framework.
Stars: ✭ 34 (+21.43%)
Mutual labels:  backend
tov-template
vite + vue3 + ts 开箱即用现代开发模板
Stars: ✭ 251 (+796.43%)
Mutual labels:  modern
bitcoin-market-android
Bitcoin Market app shows you the current Bitcoin market price and price chart of different time intervals 💰
Stars: ✭ 284 (+914.29%)
Mutual labels:  modern
gatsby-portfolio
Portfolio / Personal Website - Built with Gatsby.js and Published at konstantin.digital
Stars: ✭ 23 (-17.86%)
Mutual labels:  modern

Typetron

Note: This project is a prototype in heavy development and not ready for production.

Typetron is a modern web framework built for Node.js, written in Typescript, that allows you to build fully featured web applications. Typetron is best suited for small sized to enterprise level apps. Most of the core packages it uses were built from scratch in order to preserve the performance of the framework.

(check this tutorial on how to get started with Typetron)

Prerequisites

Features

Typetron aims to have all the features necessary for building any web app without the need for you to search the internet for a package to use. Almost all the packages it has were built from scratch and are available in the framework. This was done to ensure that all the features you are using benefit from the latest language features. Also, every package can be tuned for performance or updated in no time if needed.

Features List

typetron.org

Performance

Being built with packages created from scratch using the latest features of the language, Typetron comes with excellent performance out of the box compared to other available frameworks.

Developer experience

Typetron's source code is built around developer's expectations: it is modern, clean and beautiful. Also, the tools Typetron is providing are everything a developer needs to build his next awesome project.

Code sharing

A few years ago we wrote websites. Nowadays we write web applications. The web evolved alongside the tools we are using. A typical web application is composed of at least two parts: a backend app and a frontend app. This separation led to two different camps that have a very distinct line between them. Typetron provides tools to make these two camps work together.

Source code examples

Entities
export class User extends Entity {

    @PrimaryColumn()
    id: number;

    @Column()
    email: string;

    @Column()
    name: string;

    @Relation(() => Post, 'author')
    posts: HasMany<Post> = [];

    @Relation(() => Group, 'users')
    group: BelongsTo<Group>;
}
Forms
export class UserForm extends Form {
    @Field()
    @Rules(
        Required,
    )
    email: string;

    @Field()
    @Rules(
        Required,
        MinLength(5),
    )
    name: string;

    @Field()
    dateOfBirth: Date;
}
Controllers
@Controller('users')
export class UserController {

    @Inject()
    storage: Storage;
    
    @AuthUser()
    user: User;

    @Get('me')
    async me() {
        return this.auth.user;
    }

    @Get()
    async browse() {
        return UserModel.from(User.get());
    }

    @Get(':User')
    read(user: User) {
        return user;
    }

    @Put(':User')
    update(user: User, userForm: UserForm) {
        return user.fill(userForm).save();
    }

    @Post()
    create(userForm: UserForm) {
        return User.create(userForm);
    }
}

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].