Skip to content

kennedymwavu/ambiorix-examples

Repository files navigation

What is ambiorix?

Ambiorix is an unopinionated and minimalist web framework for R.

It is inspired by express.js. In fact, the syntax is almost identical, only that it is R and not JavaScript.

Ambiorix is a server-side or back-end framework. It is not comparable to client-side frameworks like React, Angular, Vue, etc. However, it can be used in combination with those frameworks to build full stack applications.

"Unopinionated and Minimalist"... What does that mean?

Ambiorix does not assume you're going to build your API in any certain way or using a certain design pattern. You have absolute full control of how you handle your requests to the server and how you respond.

So, why should I use ambiorix?

  • Makes building web applications with R VERY easy
  • Used for both server rendered apps as well as API/Microservices
  • Full control of the request and response cycle
  • Great to use with your favorite client side framework (whether React, Angular, Vue etc.)

What exciting features can I look forward to?

Here are the features that make ambiorix well-suited to building large systems & applications:

  • Out of the box routing
  • Creating a robust API is quick and easy
  • HTML templating
  • Websockets in case you need bidirectional communication

What should I know first?

The main prerequisites are:

  • having a good understanding of R fundamentals, and,
  • basic knowledge of HTTP status codes.

You can pickup most of the concepts on the go.

Package dependencies used in examples

Each example has an renv.lock file containing the package dependencies needed to run it.

To install the dependencies for a specific example eg. 05_router:

  1. Switch to its directory
    cd 05_router
  2. Fire up R
    R
  3. Restore the dependencies
    renv::restore(library = .libPaths())

Releases

No releases published

Packages

No packages published