💼 The Podcast Manager
Please consider reading our Contribution Guide before anything else.
It is expected to have already installed:
If you are in a mac you can install the non-ruby or database dependencies by running
make install to install the dependencies and set the default environment variables.
make seed to add sample channels.
We are currently using Figaro to manage the environment variables.
The variables can be defined at
config/application.yml and the default template setup with the list of all variables is available at
make install already copies the default file template to
If you are using MongoDB locally, make sure it is already running, otherwise, if you are using docker, run
make compose to start the Docker containers.
make start to start the server.
The server will start at
http://localhost:5000 by default.
To stop the docker compose daemon safely (without destroying the instances), use
To run the console, use
The application is using Rails Admin.
The admin area can be accessed at
http://localhost:5000/admin by default.
We are now using sidekiq to manage our asynchronous jobs.
Sidekiq dashboard can be accessed at
http://localhost:5000/admin/jobs by default.
GET /channels?page=N&per_page=Y- Returns the list of all channels
GET /channels/:slug- Returns the channel
GET /channels/:slug/episodes?page=N&per_page=Y- Returns the channel's episodes
GET /episodes?page=N&per_page=Y- Returns the list of all episodes
GET /episodes/:channel_slug/:episode_slug- Returns the specific episode
GET /episodes/:channel_slug/:episode_slug/next/:amount- Returns the queue of next episodes for the given one
GET /categories/:slug?page=N&per_page=Y- Returns the list of categories