# Shainanigans
A React application dockerized for easy deployment and development. This guide will help you get started with setting up and running the project using Docker and Docker Compose on Windows and macOS.
## Prerequisites
Before you begin, make sure you have the following installed on your local machine:
- [Docker](https://docs.docker.com/get-docker/)
- [Docker Compose](https://docs.docker.com/compose/install/)
## Getting Started
Follow these steps to set up and run the project:
### 1. Clone the Repository
First, clone this repository to your local machine using the following command:
```bash
git clone https://github.com/Ahmunna/shainanigans.git
Change your working directory to the project directory:
cd shainanigans
Build the Docker image using Docker Compose:
docker-compose build
Start the Docker container using Docker Compose:
docker-compose up development
Your application should now be running in a Docker container. You can access it by navigating to http://localhost:3000
in your web browser.
If you're using Windows, here are additional details:
- Install Git: If you haven't already, download and install Git for Windows.
- Use PowerShell or Command Prompt: You can use PowerShell or Command Prompt to run the commands listed above.
- Install Docker Desktop: Make sure Docker Desktop is installed and running. You can download it from Docker's official website.
If you're using macOS, here are additional details:
- Install Homebrew: If you don't have Homebrew installed, you can install it by running:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- Install Git: You can install Git using Homebrew:
brew install git
- Install Docker Desktop: Make sure Docker Desktop is installed and running. You can download it from Docker's official website.
- Use Terminal: You can use Terminal to run the commands listed above.
Here's a brief overview of the project's structure:
shainanigans/
├── node_modules/
├── public/
├── src/
├── .dockerignore
├── .gitignore
├── Dockerfile
├── docker-compose.yml
├── package.json
├── README.md
- public/: Contains the static assets for the project.
- src/: Contains the React components and other source files.
- .dockerignore: Lists files and directories to be ignored by Docker.
- .gitignore: Lists files and directories to be ignored by Git.
- Dockerfile: Defines the Docker image for the project.
- docker-compose.yml: Defines the services, volumes, and networks for Docker Compose.
- package.json: Lists the project dependencies and scripts.
The Dockerfile
sets up the environment for the React app, installs dependencies, builds the app, and serves it using Nginx.
The docker-compose.yml
file defines the service for running the Docker container, maps ports, and handles volumes.
- For more information on Docker, visit the official Docker documentation.
- For more information on Docker Compose, visit the official Docker Compose documentation.
If you would like to contribute to this project, please fork the repository and submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for more details.
Happy coding!