Skip to content
This repository has been archived by the owner on Oct 9, 2023. It is now read-only.
/ micro Public archive
forked from micro/micro

Micro is a framework for cloud native development

License

Notifications You must be signed in to change notification settings

Imgur/micro

 
 

Repository files navigation

Micro License Go.Dev reference Travis CI Go Report Card

Micro is a cloud native development framework.

Overview

Micro addresses the key requirements for building cloud native services. It leverages the microservices architecture pattern and provides a set of services which act as the building blocks of a platform. Micro deals with the complexity of distributed systems and provides simpler programmable abstractions to build on.

Install

Install from source

go get github.com/micro/micro/v3

Using a docker image

docker pull micro/micro

Latest release binaries

# MacOS
curl -fsSL https://raw.githubusercontent.com/micro/micro/master/scripts/install.sh | /bin/bash

# Linux
wget -q  https://raw.githubusercontent.com/micro/micro/master/scripts/install.sh -O - | /bin/bash

# Windows
powershell -Command "iwr -useb https://raw.githubusercontent.com/micro/micro/master/scripts/install.ps1 | iex"

Getting Started

Run the server locally

micro server

Login to the server

# user: admin pass: micro
micro login

Create a service

# generate a service (follow instructions in output)
micro new helloworld

# run the service
micro run helloworld

# list services
micro services

# call a service
micro helloworld --name=Alice

# curl via the api
curl -d '{"name": "Alice"}' http://localhost:8080/helloworld

Usage

See all the options

micro --help

See the docs for detailed information on the architecture, installation and use of the platform.

Features

The framework is composed of the following features:

  • Server: A distributed systems runtime composed of building block services which abstract away the underlying infrastructure and provide a programmable abstraction layer. Authentication, configuration, messaging, storage and more built in.

  • Clients: Multiple entrypoints through which you can access your services. Write services once and access them through every means you've already come to know. A HTTP api, gRPC proxy and commmand line interface.

  • Library: A Go library which makes it drop dead simple to write your services without having to piece together lines and lines of boilerplate. Auto configured and initialised by default, just import and get started quickly.

License

See LICENSE which makes use of Polyform Shield.

Hosting

If you're interested in a hosted version of Micro see m3o.com. Docs at m3o.dev.

Commercial Use

If you want to sell or offer Micro as a Service please email [email protected]

Community

Join us on Discord, Slack or follow on Twitter for updates.

About

Micro is a framework for cloud native development

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 95.5%
  • Shell 3.4%
  • Other 1.1%