feat: add storage options comparison for grocery receipt tracking
Co-authored-by: aider (openai/unsloth/Qwen3-Coder-Next) <aider@aider.chat>
This commit is contained in:
48
README.md
48
README.md
@@ -21,6 +21,54 @@ This project helps you:
|
|||||||
- Visualize price changes with charts and graphs
|
- Visualize price changes with charts and graphs
|
||||||
- Generate reports on spending patterns and savings opportunities
|
- Generate reports on spending patterns and savings opportunities
|
||||||
|
|
||||||
|
## Storage Options
|
||||||
|
|
||||||
|
When storing your grocery receipt data, you have several options:
|
||||||
|
|
||||||
|
### CSV Files
|
||||||
|
**Advantages:**
|
||||||
|
- Simple, human-readable format
|
||||||
|
- Easy to share and import into other tools (Excel, Google Sheets)
|
||||||
|
- No database software required
|
||||||
|
- Good for small datasets
|
||||||
|
|
||||||
|
**Disadvantages:**
|
||||||
|
- No data validation or constraints
|
||||||
|
- Difficult to query across multiple files
|
||||||
|
- Performance degrades with large datasets
|
||||||
|
- No built-in concurrency support
|
||||||
|
- Not ideal for tracking relationships between data (e.g., items to receipts)
|
||||||
|
|
||||||
|
### SQLite Database
|
||||||
|
**Advantages:**
|
||||||
|
- Lightweight, serverless database engine
|
||||||
|
- Single file storage (easy to backup and transfer)
|
||||||
|
- Supports SQL queries for complex analysis
|
||||||
|
- ACID compliant for data integrity
|
||||||
|
- No separate database server required
|
||||||
|
- Excellent for desktop/local applications
|
||||||
|
|
||||||
|
**Disadvantages:**
|
||||||
|
- Limited concurrent write access
|
||||||
|
- Not suitable for multi-user web applications
|
||||||
|
- Database size can grow with large datasets
|
||||||
|
|
||||||
|
### PostgreSQL/MySQL Database
|
||||||
|
**Advantages:**
|
||||||
|
- Robust, enterprise-grade database systems
|
||||||
|
- Excellent for multi-user applications
|
||||||
|
- Advanced querying capabilities
|
||||||
|
- Strong concurrency support
|
||||||
|
- Scalable for large datasets
|
||||||
|
|
||||||
|
**Disadvantages:**
|
||||||
|
- Requires separate database server setup
|
||||||
|
- More complex configuration
|
||||||
|
- Overkill for personal/local use cases
|
||||||
|
|
||||||
|
### Recommendation for This Project
|
||||||
|
For tracking personal grocery receipts with price comparison features, **SQLite** is the recommended option. It provides the benefits of a proper database (structured queries, data integrity, relationships) while remaining simple to set up and maintain as a single file. This aligns with the current implementation in the "Getting Started" section.
|
||||||
|
|
||||||
## Getting Started
|
## Getting Started
|
||||||
|
|
||||||
1. Clone this repository
|
1. Clone this repository
|
||||||
|
|||||||
Reference in New Issue
Block a user