/plural

Deploy open source software on Kubernetes in record time. 🚀

Primary LanguageTypeScriptOtherNOASSERTION

The fastest way to build great infrastructure

Plural empowers you to build and maintain cloud-native and production-ready open source infrastructure on Kubernetes.

🚀🔨☁️


Discord GitHub language count GitHub top language GitHub code size in bytes GitHub pull requests GitHub contributors GitHub commit activity

✨ Features

Plural will deploy open source applications on Kubernetes in your cloud using common standards like Helm and Terraform.

The Plural platform provides the following:

  • Dependency management between Terraform/Helm modules, with dependency-aware deployment and upgrades.
  • Authenticated docker registry and chartmuseum proxy per repository.
  • Secret encryption using AES-256 (so you can keep the entire workflow in git).

In addition, Plural also handles:

  • Issuing the certificates.
  • Configuring a DNS service to register fully-qualified domains under onplural.sh to eliminate the hassle of DNS registration for users.
  • Being an OIDC provider to enable zero touch login security for all Plural applications.

We think it's pretty cool! 😎 Some other nice things:

☁️ Build and manage open cloud-native architectures




The plural platform ingests all deployment artifacts needed to deploy cloud-native applications and tracks their dependencies, allowing for easy installs and no-touch upgrades post-install.

🤖 Day-2 Operational Toolkit


Scale deploys with operational run-books for key cluster operations. Every dependency is automatically upgraded in the correct order, in a rolling manner. Plural provides a timestamped audit trail for all cluster applications along with searchable, downloadable logs. In addition, there are also pre-packaged dashboards for the highest importance metrics.

🔓 Secure by default

Plural performs regular security scans for application images, helm charts, and terraform modules and comes equipped with OpenID connect for user auth to applications deployed by Plural.

🥳 Open source and extensible

All Plural applications are fully customizable and able to be ejected at any time. New applications can be wrapped and packaged onto Plural easily, giving you total freedom about how, when and where to use Plural.

📽 Check out a video Demo



Plural.Quickstart.Demo.1.mp4

🏁 Getting Started

  1. Go to https://app.plural.sh to create an account.
    Note: This is simply to track your installations and allow for the delivery of automated upgrades, you will not be asked to provide any infrastructure credentials or sensitive information.
  2. Install the Plural CLI
  3. Create and initialize a new git repo to store your Plural installation.
  4. Install, build and deploy applications from the Plural marketplace
  5. Install the Plural Management Console.

You should now have a fully functioning Plural environment with apps and the management console running. For more details or further information check out the rest of the docs below.

The Plural Workflow

The workflow is literally two commands:

plural build
plural deploy

Our tooling will take care of the rest.

📚 Documentation

The full documentation is available on our Documentation site.

💬 Community

For general help, please refer to the Plural documentation. For additional help you can use the following channels:

  • Discord (For live discussions with the Plural team).
  • GitHub (Bug reports, feature requests, contributions).
  • Twitter (For our latest news).

Plural is dedicated to providing a welcoming, diverse, and harassment-free experience for everyone. We expect everyone in the community to abide by our Code of Conduct. Please read it.

🚗 Roadmap

See what we're working on in these GitHub projects. Help us prioritize issues by reacting with an emoji on the issue!

🙌 Contributing to Plural

We love contributions to Plural, big or small! To learn more about the repo and the architecture, see our Contribution Guide.

If you're not sure where to start, or if you have any questions, please open a draft PR or visit our Discord server where the core team can help answer your questions.

📝 License

See LICENSE for licensing information. If there are any questions on the license please visit our Discord.

Thanks to all the contributors ❤