Skip to content

skidoodle/budgetable

Repository files navigation

Budgetable

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

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.
  • COLLECTION: The name of the PocketBase collection to store your items.

Example:

NEXT_PUBLIC_POCKETBASE_URL=https://pocketbase
EMAIL=[email protected]
PASSWORD=yourpassword
COLLECTION=pbcollection

Running Locally

To run Budgetable on your local machine, follow these steps:

git clone https://github.com/skidoodle/budgetable
cd budgetable
pnpm install
pnpm dev

Access the app at http://localhost:3000.

Deployment with Docker

Using Docker Run

  1. Pull the Docker image from GitHub Container Registry:
    docker pull ghcr.io/skidoodle/budgetable:main
  2. Run the Docker container with a persistent volume:
    docker run -d \
      -p 3000:3000 \
      --name budgetable \
      -v data:/app \
      -e NEXT_PUBLIC_POCKETBASE_URL=https://pocketbase \
      -e [email protected] \
      -e PASSWORD=yourpassword \
      -e COLLECTION=pbcollection \
      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:
    services:
      budgetable:
        image: ghcr.io/skidoodle/budgetable:main
        ports:
          - "3000:3000"
        volumes:
          - data:/app
        environment:
          NEXT_PUBLIC_POCKETBASE_URL: https://pocketbase
          EMAIL: [email protected]
          PASSWORD: yourpassword
          COLLECTION: pbcollection
    volumes:
      data:
  2. Start the services:
    docker-compose up -d
  3. Access the app at http://localhost:3000.

License

GPL-3.0

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.