Giter Site home page Giter Site logo

NanoBus Logo

NanoBus is a lightweight framework for building secure and scalable software services.

For detailed information see the overview and architecture pages.

Install

Linux - Install from Terminal to /usr/local/bin:

wget -q https://nanobus.io/install.sh -O - | /bin/bash

MacOS - Install from Terminal to /usr/local/bin:

curl -fsSL https://nanobus.io/install.sh | /bin/bash

Windows - Install from Command Prompt:

powershell -Command "iwr -useb https://nanobus.io/install.ps1 | iex"

Note: Updates to PATH might not be visible until you restart your terminal application.

Manually - Select your architecture from releases.

Create a simple application

Create a file called bus.yaml with the following contents:

id: hello-world
version: 0.0.1
interfaces:
  Greeter:
    sayHello:
      steps:
        - name: Return greeting message
          # expr will evaluate a value and assign it
          # to the output of this pipeline.
          uses: expr
          with:
            # $ or pipe represent the input data
            # for this step.
            value: '"Hello, " + $.name'

Then run this command from your terminal:

echo '{"name": "World!"}' | nanobus invoke bus.yaml Greeter::sayHello

This should return Hello, World! as a JSON string. The JSON data returned by NanoBus applications can be piped to other utilities such as jq.

Tutorials and examples

Getting started
Basic web service
WebAssembly-powered web service
Dapr integration
Blog
URL Shortener
NanoChat

Community support

For additional help, you can use one of these channels to ask a question:

  • GitHub - For bug reports and feature requests.
  • Twitter - Get the product updates easily.

Developer setup

Dependencies

To setup a local development environment

Dependency Check Description
go $ go version Go compiler. Ensure $HOME/go/bin is in PATH.
just $ just --version Like Makefile just runs the needed commands

Install from source

git clone https://github.com/nanobus/nanobus.git
cd nanobus
just install

Contributing

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

License

This project is licensed under the Mozilla Public License Version 2.0.

NanoBus's Projects

iota icon iota

Language libraries for developing tiny components (or Iotas)

nanobus icon nanobus

NanoBus is a lightweight framework for building secure and scalable software services.

push-action icon push-action

Github action to package and push nanobus applications to registry.

validator icon validator

:100:Go Struct and Field validation, including Cross Field, Cross Struct, Map, Slice and Array diving

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.