This is a single-page application for managing podcasts. It allows you to view a list of podcasts, access podcast details, and play individual episodes.
-
Clone the repository:
git clone <repository-url>
-
Navigate to the project directory:
cd podcast-app
-
Install the dependencies:
npm install
In the project directory, you can run the following scripts:
start:dev: Starts the application in development mode.
build:dev: Builds the application for development.
start:prod: Builds the application for production and serves the optimized build files.
build:prod: Builds the application for production.
test: Runs the test suite.
eject: Ejects the application from Create React App, allowing further customization.
To start the application in development mode, run:
npm run start:dev
Open http://localhost:3000 in your browser to view the app.
To build and run the application in production mode, run:
npm run start:prod
Usage
- On the home page, you will see a list of podcasts.
- Click on a podcast to view its details and a list of episodes.
- Select an episode to view its details and play the audio.
Dependencies
This application utilizes the following dependencies:
@material-ui/core: Material-UI library for UI components.
@material-ui/icons: Material-UI library for icons.
@testing-library/jest-dom: Library for DOM testing utilities.
@testing-library/react: Library for testing React components.
@testing-library/user-event: Library for simulating user events in tests.
axios: Promise-based HTTP client for making API requests.
bootstrap: CSS framework for styling.
cors-anywhere: Proxy server for bypassing CORS restrictions.
react: JavaScript library for building user interfaces.
react-bootstrap: React integration for Bootstrap UI framework.
react-dom: React library for DOM rendering.
react-router-dom: React library for routing.
react-scripts: Set of scripts for building React applications.
web-vitals: Library for measuring web performance metrics.