Update readme.md

This commit is contained in:
skidoodle 2025-01-03 12:26:35 +01:00 committed by GitHub
parent 6ebcbdfd0e
commit 0a25edbf5c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -2,11 +2,35 @@
A simple, web-based app to track items you want to buy later. It lets you easily add, update, and manage your items, with the ability to toggle between "Paid" and "Unpaid" statuses. A simple, web-based app to track items you want to buy later. It lets you easily add, update, and manage your items, with the ability to toggle between "Paid" and "Unpaid" statuses.
## Features
- Add, update, and delete items in your list.
- Toggle item statuses between "Paid" and "Unpaid."
- User-friendly interface with responsive design.
## Tech Stack
- **Framework**: [Next.js](https://nextjs.org/) - **Framework**: [Next.js](https://nextjs.org/)
- **Styling**: [ShadCN UI](https://ui.shadcn.com/) - **Styling**: [ShadCN UI](https://ui.shadcn.com/)
- **Database**: [PocketBase](https://pocketbase.io/) - **Database**: [PocketBase](https://pocketbase.io/)
- **Package Manager**: [pnpm](https://pnpm.io/)
- **Containerization**: [Docker](https://www.docker.com/)
## Running Locally ## Getting Started
### Setting Environment Variables
Before running the app, set the following environment variables in a `.env.local` file:
- `NEXT_PUBLIC_POCKETBASE_URL`: The URL of your PocketBase server.
- `EMAIL`: The email address used to log in to the PocketBase instance.
- `PASSWORD`: The password used to log in to the PocketBase instance.
Example:
```env
NEXT_PUBLIC_POCKETBASE_URL=https://pocketbase
EMAIL=example@example.com
PASSWORD=yourpassword
```
### Running Locally
To run Budgetable on your local machine, follow these steps:
```bash ```bash
git clone https://github.com/skidoodle/budgetable git clone https://github.com/skidoodle/budgetable
@ -14,7 +38,56 @@ cd budgetable
pnpm install pnpm install
pnpm dev pnpm dev
``` ```
Access the app at `http://localhost:3000`.
### Deployment with Docker
#### Using Docker Run
1. Pull the Docker image from GitHub Container Registry:
```bash
docker pull ghcr.io/skidoodle/budgetable:main
```
2. Run the Docker container with a persistent volume:
```bash
docker run -d \
-p 3000:3000 \
--name budgetable \
-v data:/app \
-e NEXT_PUBLIC_POCKETBASE_URL=https://pocketbase \
-e EMAIL=example@example.com \
-e PASSWORD=yourpassword \
ghcr.io/skidoodle/budgetable:main
```
3. Access the app at `http://localhost:3000`.
#### Using Docker Compose
1. Create a `docker-compose.yml` file in the project root:
```yaml
services:
budgetable:
image: ghcr.io/skidoodle/budgetable:main
ports:
- "3000:3000"
volumes:
- data:/app
environment:
NEXT_PUBLIC_POCKETBASE_URL: https://pocketbase
EMAIL: example@example.com
PASSWORD: yourpassword
volumes:
data:
```
2. Start the services:
```bash
docker-compose up -d
```
3. Access the app at `http://localhost:3000`.
## License ## License
[GPL-3.0](https://github.com/skidoodle/budgetable/blob/master/license) [GPL-3.0](https://github.com/skidoodle/budgetable/blob/master/license)
## Contributing
Contributions are welcome! Feel free to open issues or submit pull requests.
## Support
If you encounter any issues or have questions, please create an issue in the repository.