project for apcsp
BSD-2-CLAUSE License
This repository contains a monorepo consisting of a frontend application built with React and a backend application using Flask. The frontend and backend are organized in separate directories within the repository.
The frontend application is located in the /frontend
directory. It is built with React and utilizes pnpm as the package manager. To install the necessary dependencies, please follow these steps:
Ensure you have Node.js and pnpm installed on your machine.
Navigate to the /frontend
directory in your terminal.
Run the following command to install the dependencies:
pnpm install
Once the dependencies are installed, you can start the frontend application by running:
pnpm start
The frontend application is designed to automatically switch the backend URL based on whether it is running in production or locally. When running in production, it will connect to the deployed backend URL. However, when running locally, it will connect to localhost
.
The backend application is located in the /backend
directory. It is built with Flask, a Python web framework. To install the necessary dependencies, please follow these steps:
Ensure you have Python and pip installed on your machine.
Navigate to the /backend
directory in your terminal.
Run the following command to install the dependencies:
pip install -r requirements.txt
Once the dependencies are installed, you can start the backend application by running:
python main.py
The backend application will be accessible at http://localhost:8080
.
To deploy the application, follow the steps below:
monkey-ops.service
) is located in the /service
directory of this repository. Please refer to the AWS documentation to set up and configure the service properly.For the frontend deployment, it is automated using GitHub Actions. The necessary configurations have already been provided. To deploy the frontend on GitHub Pages, follow these steps:
If you need to change the API URL used by the frontend, you can do so by modifying the appropriate configuration file or environment variable in the codebase.
We welcome contributions to improve this project. Feel free to open issues or submit pull requests.
This project is licensed under the BSD 2-Clause License.