@methodus/server
TypeScript icon, indicating that this package has built-in type declarations

8.0.8 • Public • Published

logo Methodus

Build Status

Introduction

Methodus is a framework for building efficient, developer friendly, scalable Node.js server/server/client applications. It uses Typescript Decorators to annotate and define the application, allowing developers to focus on the actual functionality the application needs. Its "Build now, Decide later" design patterns and architecture is what makes Methodus so versatile and powerfull.

Using transport abstractions, Methodus application code can connect to any NodeJS framework, with builtin support for the HTTP/HTTP2 protocols and builtin routers for express/fastify.

Philosophy

We love developing applications, but the process requires the we predecide allot before we actually begin.

  • What framework to use?
  • How will it be deployed?
  • What is the testing strategy?

Once these decisions are made, they are rarely changed. And since changes cost money, they are never made. So, by abstracting the framework code from our logic code, we get a generic application, that can run on virtually any protocol/framework.

From the dungeon master,

My fellow adventures developer, I welcome you into Methodus. You did not arrive here by mistake, nor was it an accident, it is your fate. Like all adventures yours will begin with a simple implementation and evolve and gain complexity, by then
Methodus will guide you through the evolution of your application as it grows and gains complexity.

But first you should ask yourself this:

  1. Do you wish to build a NodeJS based monolithic server?

    Monolits are easy to develop and reason about.

  2. Would you like to be able to break this monolith into micro-services as you scale it out?

    Micro-services are much more performant but complexity rises too.

  3. How about an automatic testing plugin, allowing you to autodocument your apis and test them?

    Annotated API's are easy to integrate and discover

  4. Would you like to concentrate on your logic code only, without the need to wire it to a specific framework?

    Code first, wire later, almost too good to be through

  5. Are you going to consume this service using another application or a frontend application?

    With methodus / methodus-client services can be consumed using code contracts

/Server

The server components of methodus (nodejs). Use it to build a nodejs server application with support for various transports.

/Client

Connect your server to any Javascript client using this client library

/Plugin

Debug and analyse your server application using this plugin

/Contracts

Build binding packages to your server application

/Data

Model API data objects and manage DB access (mongodb)

@methodus/server @methodus/platform-web @methodus/contracts @methodus/framework-data @methodus/describe

License

FOSSA Status

FOSSA Status

** Reference **

filename

** Tests overview **

tests

Dependencies (5)

Dev Dependencies (13)

Package Sidebar

Install

npm i @methodus/server

Homepage

methodus.dev

Weekly Downloads

119

Version

8.0.8

License

BSD-3-Clause

Unpacked Size

137 kB

Total Files

118

Last publish

Collaborators

  • methodusorg
  • nodulus
  • roibh
  • ron-okavi