Files
notes/README.md
2026-06-01 15:48:20 -06:00

98 lines
1.6 KiB
Markdown

# NotesVault Client
A React/Vite web interface for the [notesvault](https://git.seanstarkey.dev/notesvault) project.
This app provides the browser UI for signing in, creating notes, editing notes, searching, sharing, and connecting to a NotesVault API backend.
## Requirements
- Node.js 22 or newer
- npm
- Docker, for container builds and local container runs
- A running NotesVault API backend
## Local Development
Install dependencies:
```sh
npm ci
```
Start the Vite development server:
```sh
npm run dev
```
The development server proxies `/api` requests to `http://localhost:8080` by default.
## Build
Build the production app into `dist/`:
```sh
npm run build
```
Or use Make:
```sh
make build
```
## Docker
Build the Docker image:
```sh
make docker-build
```
Run the container:
```sh
make docker-run
```
By default, the app is served at:
```text
http://localhost:8081
```
The container proxies `/api` requests to `http://host.docker.internal:8080`. Override the port or API upstream when needed:
```sh
make docker-run HOST_PORT=3000 NOTES_API_UPSTREAM=http://host.docker.internal:8080
```
Stop the container:
```sh
make docker-stop
```
## Make Targets
```sh
make help
```
Available targets include:
- `make install`
- `make build`
- `make docker-build`
- `make docker-run`
- `make docker-stop`
- `make docker-restart`
- `make docker-logs`
- `make docker-clean`
## API Configuration
The app uses `/api` by default. In local development, Vite proxies that path to the backend configured in `vite.config.js`.
In Docker, nginx proxies `/api` through the `NOTES_API_UPSTREAM` environment variable.