mirror of
				https://github.com/skidoodle/budgetable.git
				synced 2025-02-15 03:39:14 +01:00 
			
		
		
		
	Update readme.md
This commit is contained in:
		
							
								
								
									
										77
									
								
								readme.md
									
									
									
									
									
								
							
							
						
						
									
										77
									
								
								readme.md
									
									
									
									
									
								
							@@ -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.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user