diff --git a/doc/getting-started/installation.md b/doc/getting-started/installation.md
index 946cfd9a..62014ced 100644
--- a/doc/getting-started/installation.md
+++ b/doc/getting-started/installation.md
@@ -2,10 +2,20 @@
## Installation
+We provide several ways to install Castor, depending on your needs:
+
+- [with the installer](#with-the-installer): **recommended** for Linux and macOS;
+- [as a phar](#as-a-phar);
+- [as a static binary](#as-a-static-binary) if you don't have PHP installed;
+- [globally with Composer](#globally-with-composer): **not recommended**;
+- [manually with git](#manually-with-git);
+- [in a Github Action](#in-a-github-action).
+
### With the installer
> [!TIP]
-> This is the recommended way to install Castor on Linux and macOS. It requires PHP >= 8.1.
+> This is the recommended way to install Castor on Linux and macOS. It requires
+> PHP >= 8.1.
```bash
curl "https://castor.jolicode.com/install" | bash
@@ -23,91 +33,114 @@ page](https://github.com/jolicode/castor/releases).
We provide different phar for Linux / MacOS / Windows architectures to offer
lighter phar files. Download the correct one and make it available in your
-shell:
+shell.
-#### Phar for Windows
+=== "Linux AMD64 (x86-64)"
-```bash
-curl.exe "https://github.com/jolicode/castor/releases/latest/download/castor.windows-amd64.phar" -Lso C:\\castor
-```
+ > [!TIP]
+ > On Linux, it's better to install the phar with the [installer](#with-the-installer)
+ > as it handles everything for you.
-#### Phar for Linux
+ ```bash
+ curl "https://github.com/jolicode/castor/releases/latest/download/castor.linux-amd64.phar" -Lfso $HOME/.local/bin/castor && \
+ chmod u+x $HOME/.local/bin/castor && \
+ castor --version || \
+ (echo "Could not install castor. Is the target directory writeable?" && (exit 1))
+ ```
-> [!TIP]
-> It's better to install the phar with the [installer](#with-the-installer) as
-> it handles everything for you
+ > [!CAUTION]
+ > When using Windows Subsystem for Linux (WSL), you should still use the
+ > Windows phar instead of the Linux phar.
-```bash
-curl "https://github.com/jolicode/castor/releases/latest/download/castor.linux-amd64.phar" -Lfso $HOME/.local/bin/castor && \
- chmod u+x $HOME/.local/bin/castor && \
- castor --version || \
- (echo "Could not install castor. Is the target directory writeable?" && (exit 1))
-```
+=== "Linux ARM64"
-> [!NOTE]
-> Castor is also released for Linux running on ARM64 architectures. In such
-> case, replace `linux-amd64` with `linux-arm64` in the URL.
+ > [!TIP]
+ > On Linux, it's better to install the phar with the [installer](#with-the-installer)
+ > as it handles everything for you.
-> [!CAUTION]
-> When using Windows Subsystem for Linux (WSL), you should still use the
-> Windows phar instead of the Linux phar.
+ ```bash
+ curl "https://github.com/jolicode/castor/releases/latest/download/castor.linux-arm64.phar" -Lfso $HOME/.local/bin/castor && \
+ chmod u+x $HOME/.local/bin/castor && \
+ castor --version || \
+ (echo "Could not install castor. Is the target directory writeable?" && (exit 1))
+ ```
-#### Phar for MacOS with Apple Silicon
+=== "macOS with Apple Silicon (M1, M2, M3)"
-> [!TIP]
-> It's better to install the phar with the [installer](#with-the-installer) as
-> it handles everything for you
+ > [!TIP]
+ > On macOS, it's better to install the phar with the [installer](#with-the-installer)
+ > as it handles everything for you.
-For Mac with Apple Silicon processors (M1, M2, M3, etc).
+ ```bash
+ curl "https://github.com/jolicode/castor/releases/latest/download/castor.darwin-arm64.phar" -Lfso /usr/local/bin/castor && \
+ chmod u+x /usr/local/bin/castor && \
+ castor --version || \
+ (echo "Could not install castor. Is the target directory writeable?" && (exit 1))
+ ```
-```bash
-curl "https://github.com/jolicode/castor/releases/latest/download/castor.darwin-arm64.phar" -Lfso /usr/local/bin/castor && \
- chmod u+x /usr/local/bin/castor && \
- castor --version || \
- (echo "Could not install castor. Is the target directory writeable?" && (exit 1))
-```
+=== "macOS with Intel"
-#### Phar for MacOS with Intel
+ > [!TIP]
+ > On macOS, it's better to install the phar with the [installer](#with-the-installer)
+ > as it handles everything for you.
-> [!TIP]
-> It's better to install the phar with the [installer](#with-the-installer) as
-> it handles everything for you
+ ```bash
+ curl "https://github.com/jolicode/castor/releases/latest/download/castor.darwin-amd64.phar" -Lfso /usr/local/bin/castor && \
+ chmod u+x /usr/local/bin/castor && \
+ castor --version || \
+ (echo "Could not install castor. Is the target directory writeable?" && (exit 1))
+ ```
-For Mac with old Intel processors.
+=== "Windows or WSL"
-```bash
-curl "https://github.com/jolicode/castor/releases/latest/download/castor.darwin-amd64.phar" -Lfso /usr/local/bin/castor && \
- chmod u+x /usr/local/bin/castor && \
- castor --version || \
- (echo "Could not install castor. Is the target directory writeable?" && (exit 1))
-```
+ ```bash
+ curl.exe "https://github.com/jolicode/castor/releases/latest/download/castor.windows-amd64.phar" -Lso C:\\castor
+ ```
-### Without PHP
+### As a static binary
If you don't have PHP installed on your system, Castor can also be installed
with a static binary that embeds PHP, so it can be run anywhere. The static
-binaries are available for Linux and MacOS amd64 architectures only.
+binaries are available for Linux and MacOS only.
You can download the binaries in the [releases
page](https://github.com/jolicode/castor/releases):
-#### Binary for Linux
+=== "Linux AMD64 (x86-64)"
-```bash
-curl "https://github.com/jolicode/castor/releases/latest/download/castor.linux-amd64" -Lfso $HOME/.local/bin/castor && \
- chmod u+x $HOME/.local/bin/castor && \
- castor --version || \
- (echo "Could not install castor. Is the target directory writeable?" && (exit 1))
-```
+ ```bash
+ curl "https://github.com/jolicode/castor/releases/latest/download/castor.linux-amd64" -Lfso $HOME/.local/bin/castor && \
+ chmod u+x $HOME/.local/bin/castor && \
+ castor --version || \
+ (echo "Could not install castor. Is the target directory writeable?" && (exit 1))
+ ```
-#### Binary for MacOS with Intel
+=== "Linux ARM64"
-```bash
-curl "https://github.com/jolicode/castor/releases/latest/download/castor.darwin-amd64" -Lfso /usr/local/bin/castor && \
- chmod u+x /usr/local/bin/castor && \
- castor --version || \
- (echo "Could not install castor. Is the target directory writeable?" && (exit 1))
-```
+ ```bash
+ curl "https://github.com/jolicode/castor/releases/latest/download/castor.linux-arm64" -Lfso $HOME/.local/bin/castor && \
+ chmod u+x $HOME/.local/bin/castor && \
+ castor --version || \
+ (echo "Could not install castor. Is the target directory writeable?" && (exit 1))
+ ```
+
+=== "macOS with Apple Silicon (M1, M2, M3)"
+
+ ```bash
+ curl "https://github.com/jolicode/castor/releases/latest/download/castor.darwin-arm64" -Lfso /usr/local/bin/castor && \
+ chmod u+x /usr/local/bin/castor && \
+ castor --version || \
+ (echo "Could not install castor. Is the target directory writeable?" && (exit 1))
+ ```
+
+=== "macOS with Intel"
+
+ ```bash
+ curl "https://github.com/jolicode/castor/releases/latest/download/castor.darwin-amd64" -Lfso /usr/local/bin/castor && \
+ chmod u+x /usr/local/bin/castor && \
+ castor --version || \
+ (echo "Could not install castor. Is the target directory writeable?" && (exit 1))
+ ```
### Globally with Composer
@@ -167,7 +200,7 @@ Castor can also be installed in a Github Action by using the action `shivammathu
`castor` in the `tools` option. This will configure PHP with the right version but also make castor available
in the next steps. Here is an example:
-```bash
+```yaml
jobs:
my-job:
runs-on: ubuntu-latest
diff --git a/mkdocs.yml b/mkdocs.yml
index f12de57e..b61b6147 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -77,6 +77,12 @@ markdown_extensions:
- pymdownx.inlinehilite
- pymdownx.snippets
- pymdownx.superfences
+ - pymdownx.tabbed:
+ alternate_style: true
+ combine_header_slug: true
+ slugify: !!python/object/apply:pymdownx.slugs.slugify
+ kwds:
+ case: lower
- toc:
permalink: true