Python CLI + SQLite farm record and crop planning tracker for smallholder farmers in Rwanda. ALU BSE Y1T2 Peer Learning Project 2 - Agriculture GCGO.
# Farm Record & Crop Planning Tracker
> A command-line application that helps smallholder farmers in Rwanda keep their crop
> records digitally instead of in a paper notebook.
**African Leadership University** · BSE Year 1, Trimester 2
**Peer Learning Project 2** · Agriculture Grand Challenge
**Built with:** Python 3 · SQLite 3 · Standard library only
---
## Table of contents
1. The problem
2. The solution
3. Features
4. Tech stack
5. Prerequisites
6. Installation
7. Usage — a full worked session
8. Feature walkthrough
9. Project structure
10. Architecture
11. Database design
12. Error handling and validation
13. Testing
14. Troubleshooting
15. Roadmap
16. The team
17. Contributing
18. Academic context
---
## The problem
Agriculture employs the majority of Rwanda's workforce, and most of that work is done on
smallholder plots. Those farmers manage their entire season from memory or from a paper
notebook. Four things in particular get tracked this way:
- **which crops were planted** — often several varieties across several small plots
- **when they were planted** — the date that determines everything downstream
- **when the harvest is expected** — usually estimated mentally, and easily forgotten
- **how much was actually harvested** — rarely written down at all
Paper fails in predictable ways. Notebooks get lost, get rained on, and cannot be searched.
But the deeper cost is not the lost paper — it is what the farmer cannot do without records:
| Without records | With records |
|-----------------|--------------|
| Cannot compare this season's yield to last season's | Can see whether a change actually improved anything |
| Cannot plan labour or storage around harvest dates | Knows weeks in advance what is coming due |
| Has nothing to show a lender or cooperative | Has a documented history to support a loan application |
| Relies on memory across a whole year | Has a record that outlasts memory |
That last row is the one that matters most. A farmer with …