Files
TheGrapefruitsDuo/client/README.md
Lucas Jensen 77003707ab update-readme (#1)
Reviewed-on: #1
2025-03-15 04:27:49 +00:00

47 lines
1.5 KiB
Markdown

# The Grapefruits Duo
Frontend client for Eugene, OR based chamber music duo, The Grapefruits Duo. Publicly available at [thegrapefruitsduo.com](https://thegrapefruitsduo.com/). This client consumes a RESTful API built with FastAPI and publicly available at [api.thegrapefruitsduo.com](https://api.thegrapefruitsduo.com/). Back-end source code available on [here](https://gitea.lucasjensen.me/lucasjensen/TheGrapefruitsDuo/src/branch/main/server).
## Features
The customer-facing page for this SPA is relatively simple. It includes sections for the group itself, each memeber, upcoming events, and a contact form. The admin portal is where the real magic happens. Once authenticated, the user (a member of the group, or myself) can utlilze full CRUD operations on most entities including events, bios, and headshots.
### Getting started
```bash
git clone https://gitea.lucasjensen.me/lucasjensen/TheGrapefruitsDuo.git
# or consult Gitea for ssh uri
```
```bash
cd client
```
```bash
npm install
npm run dev
```
### Technologies Used
- React
- TypeScript
- Bootstrap 5
- Axios
- oauth2
- Font Awesome
- Cloudinary
Initialized with Vite.
### Deployment Info
- Hosted on a Linode server running Ubuntu 22.04
- Reverse proxy managed with Nginx
- SSL certificate provided by Let's Encrypt
- Managed with systemd
### Development Notes
When running locally, it is expected that the API is running on localhost:8000. This can be changed in the `.env` file (this file may need to be created). See `.env.example` for an example and more info.