Castopod is a free and open-source podcast hosting solution made for podcasters who want engage and interact with their audience. https://castopod.org
  • PHP 96.7%
  • TypeScript 2%
  • CSS 0.5%
  • JavaScript 0.4%
  • Shell 0.2%
  • Other 0.2%
Find a file
Yassine Doghri e5fb676cb6
feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images
- use serversideup/php as a base image
- remove nginx unit base
- remove app / webserver images
- add bundle stage to remove pipeline dependency
- update docker setup docs
- edit gitlabci rules and release logic
2026-02-17 19:31:24 +00:00
.devcontainer feat(plugins): add spark commands to install, add, update and remove plugins using adaures' cpm 2025-09-22 17:34:36 +00:00
.github
.gitlab/issue_templates docs(plugins): clear up some ideas and fix links 2025-10-06 16:53:59 +00:00
.husky
app feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
docker feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
docs feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
modules feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
plugins
public
resources feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
scripts feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
tests
themes fix: edit Podcast.php to clarify the followers are Fediverse followers 2025-10-13 12:37:17 +00:00
writable
.all-contributorsrc
.browserslistrc
.dockerignore feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
.editorconfig
.env.example
.gitignore feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
.gitlab-ci.yml feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
.prettierrc.json
.releaserc.json feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
.rsync-filter fix(bundle): edit rsync filter to include resources/icons directory 2025-10-03 13:07:26 +00:00
.stylelintrc.json
.svgo.cjs
.svgo.icons.cjs
AUTHORS.md
builds
captainhook.json
CHANGELOG.md
CODE_OF_CONDUCT.md
commitlint.config.cjs
composer.json feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
composer.lock feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
CONTRIBUTING-DEV.md
CONTRIBUTING.md
crowdin.yml
DEPENDENCIES.md
ecs.php
env
eslint.config.js
GDPR.txt
LICENSE.md
package.json feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
php-icons.php
phpstan.neon
phpunit.xml.dist
pnpm-lock.yaml feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
postcss.config.cjs
preload.php
README.md
rector.php feat(docker): replace all-in-one image with FrankenPHP and Caddy based image + discard other images 2026-02-17 19:31:24 +00:00
spark
tailwind.admin.config.js
tailwind.config.js
tailwind.install.config.js
tsconfig.json
vite.config.ts feat(plugins): add spark commands to install, add, update and remove plugins using adaures' cpm 2025-09-22 17:34:36 +00:00

release-badge license-badge crowdin-badge contributions-badge semantic-release-badge discord-badge stars-badge

Castopod is a free and open-source podcast hosting solution made for podcasters who want engage and interact with their audience.

Getting started

Castopod comes pre-packaged with all the required static assets and dependencies, you may download and install it by checking out the getting started page!

Security issues and vulnerabilities

If you encounter any security issue or vulnerability in the Castopod source, please contact us directly by email at security@castopod.org

Contributing

Contributions are always welcome!

See the contribution guidelines for ways to get started.

Important

Any contribution made on a repository other than the original repository will not be accepted.

Contributors

Thanks goes to these wonderful people (emoji key):

Yassine Doghri
Yassine Doghri

💻 🐛 📖 👀 🚧 🖋 🎨 🌍 💬 🧑‍🏫 🚇 🤔 📆 📝
Benjamin Bellamy
Benjamin Bellamy

💻 🐛 👀 🖋 🌍 💬 🚇 🤔 📝 📆 📢
Ola Hneini
Ola Hneini

💻 👀 📖 🚧 💬 🤔
Romain de Laage
Romain de Laage

💻 🚇 📖 🌍 🤔
Lyonel Bernard
Lyonel Bernard

🐛 💬 🔊 🤔
Christopher Lagonick-Weitzel
Christopher Lagonick-Weitzel

🐛 💬 🔊 🤔
Ernesto Acosta
Ernesto Acosta

🐛 🔊 🌍 💬 🤔
Ewen
Ewen

🌍 🤔 💻
Bastien Luneteau
Bastien Luneteau

💻 🐛
Cécile Ricordeau
Cécile Ricordeau

🎨
Patryk Miś
Patryk Miś

🌍
Marcin Lewandowski
Marcin Lewandowski

🐛 🤔
Sebastian Janik
Sebastian Janik

💻
Patryk Karczmarczyk
Patryk Karczmarczyk

💻
denis d
denis d

🐛 🤔
Douglas Kastle
Douglas Kastle

🐛 🤔
cExplorer
cExplorer

🐛 🌍
ImaCrea
ImaCrea

🐛 🤔
Jonas S
Jonas S

💻
LEFEBVRE Yann
LEFEBVRE Yann

🐛
Sebastian Späth
Sebastian Späth

🐛 🤔
rocky III
rocky III

🐛
Hermann Josef Eckl
Hermann Josef Eckl

🐛
Delhaye Cyrille
Delhaye Cyrille

🐛 🤔
João Leandro
João Leandro

🌍 🤔
Angelos Chouvardas
Angelos Chouvardas

🌍
Eivind
Eivind

🌍
forght
forght

🌍
glottis0q
glottis0q

🌍
ButterflyOfFire
ButterflyOfFire

🌍
Lucian I. Last
Lucian I. Last

🌍
LuuzViir
LuuzViir

🌍
CTHTC
CTHTC

🌍
Russian Retro
Russian Retro

🌍
Marek L'ach
Marek L'ach

🌍
GunChleoc
GunChleoc

🌍
GabiSnow
GabiSnow

🌍
bendaha
bendaha

🌍
Samuel Roland
Samuel Roland

🌍
Dimitri Regnier
Dimitri Regnier

🤔
irithys
irithys

🌍
Sergi
Sergi

🌍
Andreas Olsson
Andreas Olsson

🌍
leonfrom
leonfrom

🌍
agentcobra
agentcobra

🌍
Alessandro
Alessandro

🌍
liimee
liimee

🌍
Ahmed Sabouni
Ahmed Sabouni

🌍
KrzysztofDomanczyk
KrzysztofDomanczyk

💻
Guy Martin
Guy Martin

🐛 💻
Paul Cutler
Paul Cutler

📖 💬 🤔
Nate Ritter
Nate Ritter

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

Contact

You may reach us for help or ask any question you have on:

  • Discord (for direct interaction with developers and the community)
  • Issue tracker (for feature requests & bug reports)

Alternatively, you can follow us on social media platforms to get news about Castopod:

Sponsors

The ongoing development of Castopod is made possible with the support of its backers. If you'd like to help, please consider sponsoring Castopod's development.

Ad Aures NLnet Logo

License

GNU Affero General Public License v3.0

Copyright © 2020-present, Ad Aures.