Newline Proliferating Maniac

    @zerooneit/expressive-tea
    TypeScript icon, indicating that this package has built-in type declarations

    1.2.3 • Public • Published

    npm (scoped) Codecov Circle CI NPM npm Libraries.io dependency status for latest release, scoped npm package Snyk Vulnerabilities for npm package GitHub stars Gitter


    Logo

    Expressive Tea

    A Clean, simple, modulable, extendable ExpressJS over Typescript framework.
    Explore the docs »

    View Demo · Report Bug · Request Feature

    Table of Contents

    About the project

    Expressive Tea is a framework to help build server-side applications in NodeJS and use modern Javascript powered by Typescript. As Expressive Tea is using express is compatible with all the middlewares and modules and provides easy migration from express applications.

    Expressive Tea is a flexible framework. It also gives developers the freedom to build their architectures by providing descriptive decorators, a plugin engine, shareable modules, and modern Javascript.

    Motivation

    Server-side applications contain excellent tools, helpers, and libraries to improve productivity, but at the same time, it haves a considerable downside, architecture. Expressive Tea's primary motivation is a relief the stress of the architecture by providing shareable/pluggable projects; you can write a plugin to set up express middlewares, databases settings, or WebSockets, to name some; and you can share them through your following projects or the community. The main goal is making uncomplicated creation of server-side applications, module-driven, pluggable, accessible, and effortless architecture.

    Main goal is making uncomplicaded creation of server-side applications, modulables, plugables, free and efortless architecture.

    Features

    • Easy Setting up and start-up of a webserver.
    • Extends and configuration with plugins and well-defined boot stages.
    • Modules are not complex dependencies and can be shareable between projects.
    • Declare Server Middlewares configuration as hard or soft dependent at the server level.
    • Dependency Injection is available for controllers as providers declared in modules using InversifyJs.
    • Declarative Router on Controllers.
    • Declarative Verbs and Middlewares under module and verb level.
    • Declarative Exceptions for a better Error Handling.

    Built With

    Getting Started

    Prerequisites

    Important! Expressive Tea requires Node >= 6, Express >= 4, TypeScript >= 2.0 and the experimentalDecorators, lib compilation options in your tsconfig.json with the next configuration.

    Expressive Tea is woking as Bring Your Own Architecture, which means is not include any plugin or particular configuration for Express.

    Installation using Tea CLI

    Installing tea

    npm i -g @expressive-tea/tea

    Create a Project

    tea brew <name_of_project>

    Run Project

    In the project directory.

    tea serve

    Installation by pure typescript

    npm i --save @zerooneit/expressive-tea

    Setting up Typescript

    {
      "compilerOptions": {
        "baseUrl": ".",
        "sourceMap": true,
        "noEmit": true,
        "noImplicitAny": true,
        "target": "es6",
        "lib": ["es6", "dom"],
        "module": "commonjs",
        "moduleResolution": "node",
        "experimentalDecorators": true,
        "emitDecoratorMetadata": true
      }
    }

    Examples

    You can look into our simple example here, or edit or see how is working on our live preview.


    Contributing

    Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests to us.

    Versioning

    We use SemVer for versioning. For the versions available, see the tags on this repository.

    Contributors

    • Diego Resendez - Lead Developer / Author - zerooneit

    See also the list of contributors who participated in this project.

    Support

    If you are experiencing any issues, we will be happy to help. You can report a problem using the issues page or the chat. You can also ask questions at Stack overflow using the expressive-tea tag.

    If you want to share your thoughts with the development team or join us, you will do so using the official mailing list. You can check out the wiki to learn more about Expressive Tea internals or check our documentation.

    Expressive Tea is an open-source project; our goal is to create a fantastic framework that helps build marvelous server-side applications. If you like to join as a Sponsor or backer to continue growing, don't hesitate to get in touch with us at projects@zero-oneit.com.

    Principal Sponsors

    Stay on Touch

    License

    This project is licensed under the Apache-2.0 License - see the LICENSE file for details.

    Disclaimers

    The banner and the logo is a derivate work Designed by Freepik

    Install

    npm i @zerooneit/expressive-tea

    DownloadsWeekly Downloads

    8

    Version

    1.2.3

    License

    Apache-2.0

    Unpacked Size

    577 kB

    Total Files

    57

    Last publish

    Collaborators

    • dresendez
    • fgomez
    • mayoralito
    • storymx