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
|
||||
- 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
|
||||
|
||||
1. Clone this repository
|
||||
|
||||
Reference in New Issue
Block a user