All Projects → firmeve → firmeve

firmeve / firmeve

Licence: MIT license
a out-of-the-box, full-featured go framework supporting http, http2, websocket, tcp, udp, rpc and microservice

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to firmeve

CNeptune
CNeptune improve productivity & efficiency by urbanize .net module with meta-code to lay foundation for frameworks
Stars: ✭ 30 (-16.67%)
Mutual labels:  ioc, container
Injex
Simple, Decorated, Pluggable dependency-injection framework for TypeScript applications
Stars: ✭ 65 (+80.56%)
Mutual labels:  ioc, container
dioc
A dart simple dependency container based on code generation.
Stars: ✭ 47 (+30.56%)
Mutual labels:  ioc, container
Reflex
Minimal dependency injection framework for Unity
Stars: ✭ 263 (+630.56%)
Mutual labels:  ioc, container
Tsyringe
Lightweight dependency injection container for JavaScript/TypeScript
Stars: ✭ 2,761 (+7569.44%)
Mutual labels:  ioc, container
Container Ioc
Inversion of Control container & Dependency Injection for Javascript and Node.js apps powered by Typescript.
Stars: ✭ 89 (+147.22%)
Mutual labels:  ioc, container
polix
🚀 Node.js Web Framework
Stars: ✭ 32 (-11.11%)
Mutual labels:  ioc, webframework
waiter
Dependency injection, Inversion of control container for rust with compile time binding.
Stars: ✭ 71 (+97.22%)
Mutual labels:  ioc, container
Container
A lightweight yet powerful IoC container for Go projects
Stars: ✭ 160 (+344.44%)
Mutual labels:  ioc, container
Hiboot
hiboot is a high performance web and cli application framework with dependency injection support
Stars: ✭ 150 (+316.67%)
Mutual labels:  ioc, container
edap
No description or website provided.
Stars: ✭ 22 (-38.89%)
Mutual labels:  container, rpc-framework
typeioc
Dependency injection container for typescript / javascript
Stars: ✭ 32 (-11.11%)
Mutual labels:  ioc, container
kubecloud
Kubecloud is a multi-cloud container cloud management platform
Stars: ✭ 48 (+33.33%)
Mutual labels:  container
ubuntu-vnc-xfce-firefox
Retired. Headless Ubuntu/Xfce containers with VNC/noVNC and Firefox (Generation 1)
Stars: ✭ 20 (-44.44%)
Mutual labels:  container
makisu
Fast and flexible Docker image building tool, works in unprivileged containerized environments like Mesos and Kubernetes.
Stars: ✭ 2,414 (+6605.56%)
Mutual labels:  container
jigsaw-rpc
jigsaw-rpc is an RPC framework written in TypeScript under Node.js
Stars: ✭ 14 (-61.11%)
Mutual labels:  rpc-framework
darpc
DaRPC: Data Center Remote Procedure Call
Stars: ✭ 49 (+36.11%)
Mutual labels:  rpc-framework
hostnic-cni
hostnic-cni is a Container Network Interface plugin.
Stars: ✭ 25 (-30.56%)
Mutual labels:  container
OpenRegistry
OpenRegistry - A decentralised container registry fully compliant with OCI Distribution Specification
Stars: ✭ 33 (-8.33%)
Mutual labels:  container
manager
The API endpoint that manages nebula orchestrator clusters
Stars: ✭ 28 (-22.22%)
Mutual labels:  container

This is a web framework that firmly believes in dreams.

Firmeve = Firm + Believe

Be firm in your will and believe in your ideals.

Those who have achieved nothing can always tell you that you can't make a big deal. If you have an ideal, you have to defend it.

Build Status codecov GitHub license Go Report Card

Quick start

go get -u github.com/firmeve/firmeve@develop

base

Docs

https://docs.firmeve.com/v/develop/

Example

package main

import (
    "fmt"
    "github.com/firmeve/firmeve"
    "github.com/firmeve/firmeve/http"
    "github.com/firmeve/firmeve/kernel/contract"
    "github.com/firmeve/firmeve/render"
)

func main() {
    firmeve.RunWithSupportFunc(
        application,
        firmeve.WithConfigPath("./config.yaml"),
        firmeve.WithProviders([]contract.Provider{
            new(http.Provider),
        }),
        firmeve.WithCommands([]contract.Command{
            new(http.HttpCommand),
        }),
    )
}

func application(application contract.Application) {
    router := application.Resolve(`http.router`).(contract.HttpRouter)
    router.GET("/", func(c contract.Context) {
        fmt.Printf("%t", c.Firmeve() == firmeve.Application)
        c.RenderWith(200, render.JSON, map[string]string{
            "ctx_application":    fmt.Sprintf("%p", c.Firmeve()),
            "global_application": fmt.Sprintf("%p", firmeve.Application),
        })

        c.Next()
    })

    v1 := router.Group("/api/v1")
    {
        v1.GET(`/ping`, func(c contract.Context) {
            c.RenderWith(200, render.JSON, map[string]string{
                "message": "pong",
            })
            c.Next()
        })
    }
}

Bootstrap command

go run main.go http:serve

Feature list

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].