Skip to content

Flux-Robotics/rofr

Repository files navigation

🚧 Work in progress! 🚧

RoFr

RoFr is a general-purpose framework for creating RPC-like APIs in Rust using NATS messaging. It also happens to be good for building robot software.

A key feature is the separation of the API from the implementation, allowing multiple implementations for a single API.

flowchart LR
  api[API Trait] --> base
  real_lib --> api
  mock_lib --> api
  test_lib --> api
  test_lib --> base
  mock_lib --> base
  stateful --> base
  base[Base Types]

  subgraph real_impl [Real Implementation]
  real_binary([Real Binary]) --> real_lib
  real_lib[Real Library] --> stateful
  stateful[Stateful logic]
  end

  subgraph mock_impl [Mock Implementation]
  mock_binary([Mock Binary]) --> mock_lib
  mock_lib[Mock Library]
  end

  subgraph test_impl [Test Implementation]
  test_binary([Test Binary]) --> test_lib
  test_lib[Test Library]
  end
Loading

Requests for Discussion

The design development is captured with an RFD process outlined in RFD 1 Requests for Discussion. Please note that some features may not be implemented yet even if they are present in RFD documents.

About

Robotics framework leveraging NATS

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages