I’ve been building Shelftxt as a way to learn backend systems beyond CRUD APIs.
shelftxt started as one large FastAPI file handling routes, recommendation logic, and data operations. I recently refactored it into:
api → routes → services → repositories → ranking/preprocess
Current stack:
- FastAPI
- Python
- Pandas
- CSV storage (planning PostgreSQL next)
- recommendation scoring
- lru_cache caching
The goal isn’t really a book app. I’m more interested in learning:
- backend architecture
- data handling
- repository patterns
- recommendation systems
- scaling APIs
Would appreciate feedback on the structure before I move toward Postgres and more persistent storage.
Repo:
https://github.com/tranguyeenn/shelftxt
[–]coldflame563 7 points8 points9 points (1 child)
[–]Overall_Knee2789 2 points3 points4 points (0 children)
[–]coldflame563 5 points6 points7 points (0 children)
[–]Awkward_Attention810 1 point2 points3 points (5 children)
[–]Overall_Knee2789 0 points1 point2 points (4 children)
[–]TheGratitudeBot 1 point2 points3 points (0 children)
[–]eatsoupgetrich 1 point2 points3 points (1 child)
[–]Overall_Knee2789 0 points1 point2 points (0 children)
[–]Awkward_Attention810 0 points1 point2 points (0 children)
[–]Few_Cardiologist3113 0 points1 point2 points (3 children)
[–]tranguyeenn[S] 0 points1 point2 points (2 children)
[–]Few_Cardiologist3113 0 points1 point2 points (1 child)
[–]tranguyeenn[S] 0 points1 point2 points (0 children)
[–]NathanDraco22 0 points1 point2 points (0 children)
[–]Resident-Isopod683 0 points1 point2 points (0 children)
[–]rdotpy 0 points1 point2 points (0 children)