This document is intended for developers who want to understand or extend the functionality of this app. It assumes the app is already running and that the user has reviewed the README.md
Step-by-Step is a Streamlit app designed for classroom teachers to track children's developmental milestones across key categories. It saves all data to a local CSV and provides simple visualizations like line charts and pie charts.
This guide describes the app’s internal logic, data structure, and areas for future development.
- Logging new entries via sidebar form
- Categories supported: Mobility, Social Emotional, Cognitive, Language, Fine Motor
- Automatically flags regressions if a score is lower than the child’s previous milestone
- Saves entries to
data/test_data.csv - Category-level line chart (per child)
- Pie chart for log distribution (per child)
- Pie chart to compare all children in one category
pip install -r requirements.txtTo run:
streamlit run main.py- User selects a child or types a new name
- Chooses a category and milestone number
- Optional note is added
- Regression warning appears if applicable
- Entry is saved to
test_data.csv - Below the table, the user can:
- View line graph (per category)
- View pie chart (category distribution)
- View classroom comparison pie chart
Child(string): Name of the childCategory(string): Developmental domainMilestone(int): Logged valueNote(string): Optional commentparsed_date(datetime.date): Parsed at entry timeFlag(string): Empty or"regression"
- Entries cannot be edited or deleted once saved
- Duplicate entries are not prevented or flagged
- No filters or search for past entries
- Graphs only update when manually re-expanded or on rerun
- App only supports one local CSV file (no database or multi-user support)
- No backups or versioning of the CSV file
- Add edit and delete tools
- Implement CSV versioning or database storage
- Enable filtering logs by date, category, or flag etc.
- Allow exporting charts as PNG or PDF