Volver al ranking

1backend/1backend

Go1backend.com

Build AI (or any) apps with scalable microservices & microfrontends.

paasmicroservicesaion-premiseon-premise-aimicroservices-platformai-platformbackend-frameworkself-hosted
Crecimiento de estrellas
Estrellas
2.3k
Forks
119
Crecimiento semanal
Issues
1
1k2k
ene 2023mar 2024may 2025jul 2026
ArtefactosGo Modulesgo get github.com/1backend/1backend
README

1Backend

backend build frontend build go client build js client build go sdk
AI-native microservices platform. v0.9.2.

"Works of art make rules; rules do not make works of art."
— Claude Debussy

Overview

1Backend is a full-stack platform for the AI era. It lets you build distributed applications fast, without early infrastructure overhead. It’s a framework, proxy, and runtime that handles auth, user accounts, microservice and microfrontend routing, email, and more.

It can run and program LLMs inside containers. Zero-trust, zero-config, with its own ORM for development even without a database.

It’s multitenant—host multiple apps or sites on one install. In essence, a distributed operating system for your applications.

Launching the server

Easiest way to run 1Backend is with Docker. Install Docker if you don't have it. Step into repo root and:

docker compose up

Also see this page for other ways to launch 1Backend.

Build and use your first service in 3 steps

Check out the examples folder or the relevant documentation to learn how to easily build testable, scalable microservices on 1Backend.

Here are the conceptual steps though to illustrate how simple is a 1Backend service:

Step 1: Register the user account of your service

Each service - just like humans - must have their account and manage their own credentials. Just like humans, they must remember their passwords :)).

Language-agnostic

See the Register and Login endpoints.

Go SDK example

import (
  "github.com/1backend/1backend/sdk/go/boot"
  "github.com/1backend/1backend/sdk/go/client"
)

oneBackendClient  := client.NewApiClientFactory(service.Options.ServerUrl).Client()
token, err := boot.RegisterServiceAccount(
		oneBackendClient .UserSvcAPI,
		"your-svc", // Account slug
		"Your Service", // Display name
		credentialStore, // This is just a DB handle
	)

Step 2: Register your service instance address

Language-agnostic

Call the RegisterInstance endpoint directly from any programming language.

Go SDK example

import (
  "github.com/1backend/1backend/sdk/go/client"
)

oneBackendClient := client.NewApiClientFactory(service.Options.ServerUrl).Client()

oneBackendClient.RegistrySvcAPI.
		RegisterInstance(context.Background()).
		Body(openapi.RegistrySvcRegisterInstanceRequest{
			Url: "https://your-service-url",
		}).Execute()

Step 3: Call your service through the 1Backend server

All services registered will be available under their slug:

curl http://127.0.0.1:11337/your-svc/your-endpoint`.

Bonus step: deploy a microfrontend

1Backend doesn't just manage microservices, it also manages microfrontends. You can deploy a React/Vue/Angular/etc. apps as microfrontends and 1Backend will route requests to them based on routes:

oo route save --id=yourdomain.com --target=http://your-network-local-frontend-url

Automatic SSL is supported out of the box, see the Proxy Svc documentation and the edge proxy mode.

CLI

Install oo to get started (at the moment you need Go to install it):

go install github.com/1backend/1backend/cli/oo@latest
$ oo env ls
ENV NAME   SELECTED   URL                           DESCRIPTION   REACHABLE
local      *          http://127.0.0.1:11337                      true
$ oo login 1backend changeme

$ oo whoami
slug: 1backend
id: usr_e9WSQYiJc9
app:
  id: app_hRKWXZzK6P
  host: unnamed
roles:
- user-svc:user
- user-svc:admin

Run On Your Servers

See the Running the daemon page to help you get started.

Services

For articles about the built-in services see the Built-in services page. For comprehensive API docs see the 1Backend API page.

Run On Your Laptop/PC

We have temporarily discontinued the distribution of the desktop version. Please refer to this page for alternative methods to run the software.

License

1Backend is licensed under AGPL-3.0.

Repositorios relacionados
dokku/dokku

A docker-powered PaaS that helps you build and manage the lifecycle of applications

ShellMIT Licensedokkupaas
dokku.com
32k2.1k
openfaas/faas

OpenFaaS - Serverless Functions Made Simple

GoGo ModulesOtherfunctions-as-a-servicefunctions
openfaas.com
26.2k2k
caprover/caprover

Scalable PaaS (automated Docker+nginx) - aka Heroku on Steroids

TypeScriptnpmOtherwebserverdocker
caprover.com
15.1k984
255kb/stack-on-a-budget

A collection of services with great free tiers for developers on a budget. Sponsored by Mockoon, the best mock API tool. https://mockoon.com

MIT Licensesaasfree
12.4k555
openshift/origin

Conformance test suite for OpenShift

GoGo ModulesApache License 2.0openshiftkubernetes
openshift.org
8.7k4.8k
isno/theByteBook

⭐ 【出版书籍】京东购买链接 https://item.jd.com/14531549.html 深入讲解内核网络、Kubernetes、ServiceMesh、容器等云原生相关技术。经历实践检验的“大规模分布式系统”开发指南。

JavaScriptnpmcontainerdistributed-systems
thebyte.com.cn
8.5k624
kubevela/kubevela

The Modern Application Platform.

GoGo ModulesApache License 2.0oamkubernetes
kubevela.io
7.9k1k
shuttle-hq/shuttle

Build & ship backends without writing any infrastructure files.

Rustcrates.ioApache License 2.0rustframework
shuttle.dev
6.9k298
piku/piku

The tiniest PaaS you've ever seen. Piku allows you to do git push deployments to your own servers.

PythonPyPIMIT Licensearmraspberry-pi
piku.github.io
6.6k156
goodrain/rainbond

A container platform that needs no Kubernetes learning, Build, deploy, assemble, and manage apps on Kubernetes, no K8s expertise needed, all in a graphical platform.

GoGo ModulesOthermicroservice-architecturecloud-native
rainbond.io
6.2k872
ben1234560/k8s_PaaS

如何基于K8s(Kubernetes)部署成PaaS/DevOps(一套完整的软件研发和部署平台)--教程/学习(实战代码/架构设计/大量注释/操作配图),你将习得部署如:K8S(Kubernetes)、Dashboard、Harbor、Jenkins、本地Gitlab、Apollo框架、Promtheus、Grafana、Spinnaker等。

ShellMIT Licensekubernetespaas
5.4k1.1k
tsuru/tsuru

Open source and extensible Platform as a Service (PaaS).

GoGo ModulesBSD 3-Clause "New" or "Revised" Licensepaasgo
tsuru.io
5.3k553