GithubHelp home page GithubHelp logo

andrewyang885 / ryax Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ryaxtech/ryax-engine

0.0 0.0 0.0 799 KB

Ryax is an open-source platform that streamlines the design, deployment, and monitoring of your APIs and automations.

Home Page: https://ryax.tech/

License: Mozilla Public License 2.0

Python 100.00%

ryax's Introduction

Logo

Ryax

Developers, build your backends in record time; deploy at scale with serverless technology; self-host, install on any cloud or use our hosted platform; Open source, low code.
Explore the docs »

View Demo · Report Bug · Request Feature · Talk with the devs

WARNING: We use GitLab for our development, if you want to see the whole application code see https://gitlab.com/ryax-tech/ryax/

⭐ About the project

Ryax is an open-source platform that streamlines the design, deployment, and monitoring of Cloud automations and APIs.

⚙ The source code

Ryax is composed of multiple micro-services and tools. To learn more about the internal architecture, see the documentation. The main components are:

User interfaces

  • cli: The CLI to command Ryax
  • front: The WebUI.
  • adm: The Ryax ADMinistrationn tool. To install, update, backup and more.

Micro-services

Other

Main technologies used by Ryax

The code: Python, dependency-injector, SQLalchemy, GRPC.

Around the code: Nix, poetry, black, mypy.

Deploying Ryax: Kubernetes, Terraform, Helm.

⚡ Getting started with Ryax

Requirements

All you need to install Ryax is a Kubernetes cluster. Supported versions are:

  • kubernetes > 1.20

Hardware:

  • At least 2 CPU core
  • 4GB or memory
  • 40GB of disk available

Note that depending on the Actions that you run on your cluster you might need more resources.

On a local machine with Docker

We recommend this option if you wish to test our product with a minimal amount of configuration steps, and if you have enough RAM (~3GB) and disk (20GB) available.

/!\ Warning: Do not use this setup in production! /!\ Warning: To make it easier for you to access the cluster from your browser, we expose the ports 80 (http) and 443 (https) on your local machine. Make sure these aren't already used!

Copy the docker-compose.yml file form this repository and run:

docker-compose up -d

Wait for the installation to finish by checking for the install container state with:

docker logs $(basename $PWD)-install-ryax-1 -f

Be patient, this may take around 15 minutes (or more depending on your internet connection).

Once its done you can access to your cluster with: http://localhost/app/login

Default credentials are:

  • user: user1
  • password: pass1

To uninstall your cluster, stop it with:

docker-compose down -v

On an existing Kubernetes cluster

This is the standard and recommended approach. It works on most managed Kubernetes, like AWS EKS, Azure AKS, GCP GKE.

For more details on the configuration, see our documentation.

🛹 Roadmap

A more complete roadmap will be published soon.

  • Create workflows
  • Support actions and triggers made in python
  • User and project management
  • HTTP API automatic creation (with OpenAPI interactive UI!)
  • Manage credentials for the integrations with shared variables
  • Support actions made in Javascript(Nodejs) and C#
  • Backend as a Service with on-demand with dedicated database, object store, message broker...
  • Support any docker based services
  • And much more!

🤗 Contributing

If you want to say thank you and/or support the active development of Ryax:

  1. Add a GitHub Star to the project.
  2. Tweet about the project on your Twitter.
  3. Write a review or tutorial on Medium, Dev.to or personal blog.
  4. Share some triggers and actions with the community.
  5. Fix bugs and implement features to our code.

Discord, Reddit, Slack

ryax's People

Contributors

mickours avatar marshallcharles avatar thlr avatar

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.