Go to file
Yassine Doghri 9f00305844 fix: rename issue_templates labels 2020-10-15 14:42:18 +00:00
.devcontainer fix: declare typed properties in PHPDoc for php<7.4 2020-10-15 14:41:26 +00:00
.gitlab/issue_templates fix: rename issue_templates labels 2020-10-15 14:42:18 +00:00
app fix(install): redirect to input baseUrl after instance config 2020-10-15 14:42:17 +00:00
docs docs: add gitlab issue templates, code of conduct and contributing files 2020-10-15 14:42:18 +00:00
public feat: update analytics so to meet IABv2 requirements 2020-10-15 14:42:02 +00:00
tests refactor: add php_codesniffer to define castopod's coding style based on psr-1 2020-10-15 14:41:22 +00:00
writable feat: add npm for js dependencies + move src/ files to root folder 2020-10-15 14:05:36 +00:00
.babelrc refactor: update js files to typescript and replace parcel with rollup 2020-10-15 14:41:12 +00:00
.browserslistrc refactor: update js files to typescript and replace parcel with rollup 2020-10-15 14:41:12 +00:00
.editorconfig refactor: add php_codesniffer to define castopod's coding style based on psr-1 2020-10-15 14:41:22 +00:00
.env.example refactor: update install logic and add missing cache config step 2020-10-15 14:42:13 +00:00
.eslintrc.json refactor: update js files to typescript and replace parcel with rollup 2020-10-15 14:41:12 +00:00
.gitignore ci: define app bundle script in .gitlab-ci.yml 2020-10-15 14:41:46 +00:00
.gitlab-ci.yml feat: update analytics so to meet IABv2 requirements 2020-10-15 14:42:02 +00:00
.phpcs.xml refactor: add php_codesniffer to define castopod's coding style based on psr-1 2020-10-15 14:41:22 +00:00
.prettierrc.json docs: add gitlab issue templates, code of conduct and contributing files 2020-10-15 14:42:18 +00:00
.rsync-filter refactor: update install logic and add missing cache config step 2020-10-15 14:42:13 +00:00
.stylelintrc.json refactor: update js files to typescript and replace parcel with rollup 2020-10-15 14:41:12 +00:00
.svgo.icons.yml feat: enhance ui using javascript in admin area 2020-10-15 14:41:09 +00:00
.svgo.yml feat: add platforms form in podcast settings 2020-10-15 14:41:39 +00:00
AUTHORS.md docs(authors): set authors info as list 2020-10-15 14:05:37 +00:00
CODE_OF_CONDUCT.md docs: add gitlab issue templates, code of conduct and contributing files 2020-10-15 14:42:18 +00:00
CONTRIBUTING.md docs: add gitlab issue templates, code of conduct and contributing files 2020-10-15 14:42:18 +00:00
DEPENDENCIES.md docs: add gitlab issue templates, code of conduct and contributing files 2020-10-15 14:42:18 +00:00
Dockerfile feat: create optimized & resized images upon upload 2020-10-15 14:41:45 +00:00
INSTALL.md docs: add gitlab issue templates, code of conduct and contributing files 2020-10-15 14:42:18 +00:00
LICENSE docs: add GNU AGPLv3 LICENSE file 2020-10-15 14:01:39 +00:00
README.md docs: add gitlab issue templates, code of conduct and contributing files 2020-10-15 14:42:18 +00:00
builds feat(episodes): add create form and view pages for episode 2020-10-15 14:40:47 +00:00
commitlint.config.js feat: enhance ui using javascript in admin area 2020-10-15 14:41:09 +00:00
composer.json feat: update analytics so to meet IABv2 requirements 2020-10-15 14:42:02 +00:00
composer.lock feat: add alternate rss feed link tag to podcast page head 2020-10-15 14:42:03 +00:00
docker-compose.yml feat: add npm for js dependencies + move src/ files to root folder 2020-10-15 14:05:36 +00:00
env feat: add npm for js dependencies + move src/ files to root folder 2020-10-15 14:05:36 +00:00
package-lock.json feat: update analytics so to meet IABv2 requirements 2020-10-15 14:42:02 +00:00
package.json feat: update analytics so to meet IABv2 requirements 2020-10-15 14:42:02 +00:00
phpunit.xml.dist refactor(auth): change contributor's role logic to have it included in the users_podcasts table 2020-10-15 14:41:14 +00:00
postcss.config.js feat: enhance ui using javascript in admin area 2020-10-15 14:41:09 +00:00
rollup.config.js refactor: update js files to typescript and replace parcel with rollup 2020-10-15 14:41:12 +00:00
spark feat(episodes): add create form and view pages for episode 2020-10-15 14:40:47 +00:00
tailwind.config.js feat: enhance admin ui with responsive design and ux improvements 2020-10-15 14:41:56 +00:00
tsconfig.json refactor: update js files to typescript and replace parcel with rollup 2020-10-15 14:41:12 +00:00

README.md

Castopod

Castopod is an open-source podcast hosting solution for everyone. Whether you are a beginner, an amateur or a professional, you will get everything you need: create, upload, publish, manage server subscriptions (WebSub embedded server), connect to the usual directories (Apple, Google, Spotify…), connect to the Fediverse (ActivityPub, Mastodon, Pleroma…) and measure your audience (IAB 2.0 compliant) so that you can monetize your content. Take back control: interact with your audience on your plateform (like, share, comment), the social network IS the podcast. Of course you may also export to proprietary social networks(Twitter, Instagram, Youtube, Facebook). Castopod can be hosted on any PHP/MySQL server: Unzip it and you and other podcasters are ready to broadcast professionally.

Free

Castopod is a free and open-source solution (AGPL v3). Whether you choose to install it on your own server or have it hosted by a professional, all your data and analytics belong to you and you only.

Social Media

Castopod is a part of Fediverse (Mastodon, Pleroma, PixelFed, PeerTube…). Podcasters and their audience can post, subscribe, like, comment and share natively. Millions of users already on Fediverse will be able to interact seamlessly.

Flexible

Castopod is compatible with all Podcasts players and platforms (it can automatically generate an RSS feed). Moreover Podcasters can choose to publish on Castopod while keeping their existing hosting solution (it can automatically generate posts from an existing RSS feed).

Castopod Users


Documentation

You can check castopod's documentation for setting up a development environment.

Support

Castopod was funded through the NGI0 Discovery Fund, a fund established by NLnet with financial support from the European Commission's Next Generation Internet programme, under the aegis of DG Communications Networks, Content and Technology under grant agreement No 825322.