Kool is a CLI tool that brings the complexities of modern software development environments down to earth - making these environments lightweight, fast and reproducible. It reduces the complexity and learning curve of Docker containers for local environments, and offers a simplified interface for using Kubernetes to deploy staging and production environments to the cloud.
Kool gets your local development environment up and running easily and quickly, so you have more time to build a great application. When the time is right, you can then use Kool Cloud to deploy and share your work with the world!
Kool is suitable for solo developers and teams of all sizes. It provides a hassle-free way to handle the Docker basics and immediately start using containers for development, while simultaneously guaranteeing no loss of control over more specialized Docker environments.
Requirements: Kool is powered by Docker. If you haven't done so already, you first need to install Docker and the kool CLI.
Important: make sure you are running the latest version of Docker and that you do have Compose V2 available (docker compose
). You can read more about Compose V2 release via its documentation. Checkout out instructions for installing Docker Compose V2 in the official documentation.
Install kool by running the following script. It will download the latest kool binary from https://github.com/kool-dev/kool/releases, and save it in your /usr/local/bin
folder.
curl -fsSL https://kool.dev/install | bash
Install kool by downloading the appropriate installer from https://github.com/kool-dev/kool/releases. At the bottom of the release notes for the latest version, expand the list of "Assets", and download the installer that matches your machine.
It's really easy to get started with kool
. Check out our Getting Started documentation for a generic PHP web app.
To help you start building real-world applications, we've created Kool Presets as a starting point for some popular frameworks and stacks.
- Node: NestJS, AdonisJs, Express.js
- PHP: Laravel, Symfony, CodeIgniter
- Javascript: Next.js, NuxtJS
- Others: Hugo, WordPress
It's a common challange mixing up different frameworks for the frontned and a backend API. Working with containers and having them both working an communicating properly can be a huge differential for good development experience and productivity.
Check out our pre-shaped mono-repo structures in a single preset:
- Monorepo NestJS + Next.js with Typescript on both the frontend and the backend.
If you don't see your favorite framework in the list above, please let us know by creating a GitHub issue, or, better yet, feel free to submit a PR!
Read the documentation at https://kool.dev/docs or docs/.
We invite you to contribute and help in our mission of making software development kool for everyone.
- Issues are the primary channel for bringing issues and proposals to our attention.
- Kool on Slack is a great place to get help and interact with Kool developers.
- Learn how to get involved by reading our contributing guide.
Our work is organized according to a loosely defined but clear roadmap. Check out the Roadmap page on our blog.
If you find a security issue, please let us know right away, before making it public, by creating a GitHub issue. We'll take action as soon as possible. You can email questions and concerns to contact@kool.dev
.
The MIT License (MIT). Please see License File for more information.