How to write the "Grade 7 Math in 30 Days" book — day files, state handling, and generation. Grade 7 covers 56 core CCSS topics across 9 chapters (Ratios/Proportions, Percents, Rational Numbers, Expressions, Equations/ Inequalities, Geometry/Angles, Circles/Area/Volume, Statistics, Probability) with 14 additional state topics and 11 modified core variants.
"Grade 7 Math in 30 Days" is a calendar-based study guide that covers all 56 core CCSS Grade 7 math topics in 30 days. Each day is a self-contained lesson (20–25 minutes) with a condensed lesson, focused practice, and an end-of-day checkoff. The 30 days are grouped into 9 chapters by domain.
All 30 days are teaching days — there are no review or celebration days. Every day delivers new content. Days contain either 1 or 2 topics (never 3). Shorter or lighter topics are paired as doubles; heavier topics get their own day.
The entire book must be ≤ 150 pages (target ~120 pages). Content is ultra-concise: one quick lesson, one worked example, and 6–8 practice problems per day. No redundant boxes.
| Metric | Value |
|---|---|
| Total days | 30 |
| Teaching days |
| 30 (all days) |
| Review days | 0 |
| Single-topic days | 4 |
| Double-topic days | 26 |
| Core CCSS topics | 56 (4 + 52 = 56) |
| Additional state topics | 14 (used as bonus sections) |
| Modified core topics | 11 (state-variant day files) |
| Chapters | 9 |
The complete book must be ≤ 150 pages (target ~120). Budget:
| Component | Pages |
|---|---|
| Initial pages (front matter) | ~10 |
| Chapter openers (9 chapters) | 9 |
Day openers (30 \dayPage) | 30 |
| Day content (teaching + practice) | ~65–75 |
| Answer key | ~8–10 |
| Total | ~120–135 |
Per-day targets:
| Aspect | Study Guide | In 30 Days |
|---|---|---|
| Structure | 9 chapters, 1 topic per file | 9 chapters, 1 day per file |
| Topic density | Full deep-dive per topic | Condensed (1–2 topics per day) |
| Class file | studyGuide.cls | in30Days.cls |
| Day-specific envs | None | VMfunDays.sty (dayPage, quickLesson, etc.) |
| Color theme | Blue chapters | Orange day/week openers |
| Mascot role | Tips throughout | Daily companion |
| State handling | Swap individual topic files | Swap day files + append bonus files |
in30Days.cls # Document class (orange-themed, chapter-based)
in30days_main.tex # Master document (template)
VM_packages/VMfunDays.sty # Day-specific environments
topics_in30days/ # Core day files (CCSS baseline)
day-01-unit-rates-and-proportional-relationships.tex
day-02-constant-of-proportionality-and-equations.tex
...
day-30-simulating-compound-events.tex
topics_in30days_modified/ # Modified day files (state-specific)
day-03-graphing-and-applying-proportional-reasoning.tex
day-04-percent-problems-and-proportions.tex
...
topics_in30days_additional/ # Standalone bonus lesson files
bonus-ch01-07-proportional-reasoning-with-scale-models.tex
bonus-ch02-08-personal-financial-literacy.tex
...
initial_pages/in_30_days/ # Front matter
00-welcome.tex # Welcome page (orange theme)
01-how-to-use.tex # Guide to day-based box system
02-your-30-day-plan.tex # Bird's-eye overview of all 30 days
03-progress-tracker.tex # 30-day check-off grid
(also reuses common/formula-reference.tex, common/key-vocabulary.tex)
The day-to-topic mapping was designed using these principles:
Students are 12–13 year olds in middle school. Content should:
| Day | File | CCSS Topics | Type | Weight |
|---|---|---|---|---|
| 1 | day-01-unit-rates-and-proportional-relationships | ch01-01 Unit Rates with Fractions + ch01-02 Recognizing Proportional Relationships | Double | Medium-Heavy |
| 2 | day-02-constant-of-proportionality-and-equations | ch01-03 Finding the Constant of Proportionality + ch01-04 Writing Equations for Proportional Relationships | Double | Heavy |
| 3 | day-03-graphing-and-applying-proportional-reasoning | ch01-05 Graphing Proportional Relationships + ch01-06 Applying Proportional Reasoning | Double | Medium-Heavy |
Why ch01-01 + ch01-02? Computing unit rates and recognizing proportional relationships are the foundational skills of the chapter. Students compute unit rates with fractions, then immediately use them to test whether two quantities are proportional. Natural concept → application flow.
Why ch01-03 + ch01-04? Finding the constant of proportionality and writing equations ($y = kx$) are the same idea in two representations — one numerical, one symbolic. Students find $k$ from a table, then write the equation.
Why ch01-05 + ch01-06? Graphing proportional relationships and applying them to word problems are the capstone pair. Students graph, interpret $(0,0)$ and $(1,r)$, then apply all strategies in multi-step problems.
| Day | File | CCSS Topics | Type | Weight |
|---|---|---|---|---|
| 4 | day-04-percent-problems-and-proportions | ch02-01 Solving Percent Problems + ch02-02 Connecting Percents and Proportions | Double | Medium |
| 5 | day-05-percent-change-markups-and-discounts | ch02-03 Percent Increase and Decrease + ch02-04 Markups, Discounts, and Sales Tax | Double | Medium-Heavy |
| 6 | day-06-tips-commissions-and-simple-interest | ch02-05 Tips, Commissions, and Fees + ch02-06 Simple Interest | Double | Medium |
| 7 | day-07-percent-error | ch02-07 Percent Error | Single | Light-Medium |
Why ch02-01 + ch02-02? Solving percent problems and connecting percents to proportions are the same skill from two angles — students solve $\frac{x}{100} = \frac{\text{part}}{\text{whole}}$.
Why ch02-03 + ch02-04? Percent increase/decrease is the concept; markups, discounts, and sales tax are the immediate real-world applications. "Increase by 20%" = markup; "decrease by 15%" = discount.
Why ch02-05 + ch02-06? Tips, commissions, and simple interest are all "percent of an amount" applications. They share the formula structure (amount × rate) and make a cohesive "money math" day.
Why ch02-07 alone? Percent error is conceptually distinct — it involves absolute value and a specific formula. Students need focused attention on $\frac{|\text{estimated} - \text{actual}|}{|\text{actual}|} \times 100$.
| Day | File | CCSS Topics | Type | Weight |
|---|---|---|---|---|
| 8 | day-08-integers-and-adding-integers | ch03-01 Integers and Their Opposites + ch03-02 Adding Integers | Double | Medium |
| 9 | day-09-subtracting-integers-and-rational-numbers | ch03-03 Subtracting Integers + ch03-04 Adding and Subtracting Rational Numbers | Double | Medium-Heavy |
| 10 | day-10-multiplying-and-dividing-rational-numbers | ch03-05 Multiplying Integers and Rational Numbers + ch03-06 Dividing Integers and Rational Numbers | Double | Medium |
| 11 | day-11-converting-rational-numbers-to-decimals | ch03-07 Converting Rational Numbers to Decimals | Single | Light-Medium |
| 12 | day-12-real-world-problems-with-rational-numbers | ch03-08 Solving Real-World Problems with Rational Numbers | Single | Medium |
Why ch03-01 + ch03-02? Defining integers/opposites and then adding them is a natural ramp-up. Day 8 answers "What are integers?" and "How do we add them?" in one lesson.
Why ch03-03 + ch03-04? Subtracting integers ($p - q = p + (-q)$) and extending to rational-number addition/subtraction are the same rule applied at different scopes — integers first, then fractions/decimals.
Why ch03-05 + ch03-06? Multiplying and dividing signed numbers share the same sign rules (same signs → positive, different signs → negative). Teaching them together reinforces this symmetry.
Why ch03-07 alone? Converting rational numbers to decimals (long division, detecting repeating patterns) is a distinct procedural skill that deserves its own day for mastery.
Why ch03-08 alone? This capstone day synthesizes all four rational-number operations in multi-step real-world problems. Students must choose operations, convert between forms, and check reasonableness.
| Day | File | CCSS Topics | Type | Weight |
|---|---|---|---|---|
| 13 | day-13-writing-evaluating-and-simplifying-expressions | ch04-01 Writing and Evaluating Expressions + ch04-02 Simplifying by Combining Like Terms | Double | Medium |
| 14 | day-14-expanding-and-factoring-expressions | ch04-03 Expanding with Distributive Property + ch04-04 Factoring Expressions | Double | Medium |
| 15 | day-15-combining-and-rewriting-expressions | ch04-05 Adding and Subtracting Linear Expressions + ch04-06 Rewriting Expressions to Solve Problems | Double | Medium |
Why ch04-01 + ch04-02? Writing/evaluating expressions and combining like terms are the two fundamental expression skills — create them, then simplify them.
Why ch04-03 + ch04-04? Expanding with the distributive property and factoring are inverse operations. Teaching them together helps students see $3(2x+5) = 6x+15$ in both directions.
Why ch04-05 + ch04-06? Adding/subtracting linear expressions and rewriting expressions for insight are the capstone skills. Students combine expressions and then interpret what the new form reveals (e.g., $a + 0.05a = 1.05a$).
| Day | File | CCSS Topics | Type | Weight |
|---|---|---|---|---|
| 16 | day-16-writing-and-solving-two-step-equations | ch05-01 Writing Two-Step Equations + ch05-02 Solving Two-Step Equations | Double | Medium-Heavy |
| 17 | day-17-distributive-property-and-multi-step-problems | ch05-03 Solving Equations with Distributive Property + ch05-04 Solving Multi-Step Problems | Double | Medium-Heavy |
| 18 | day-18-writing-solving-and-graphing-inequalities | ch05-05 Writing and Solving Inequalities + ch05-06 Graphing Solutions to Inequalities | Double | Medium-Heavy |
Why ch05-01 + ch05-02? Writing and solving two-step equations are the same workflow: translate → solve → check. Splitting them would create an awkwardly thin "write but don't solve" lesson.
Why ch05-03 + ch05-04? Equations with the distributive property ($p(x+q) = r$) and multi-step real-world problems are both extensions of two-step solving. They build directly on Day 16 skills.
Why ch05-05 + ch05-06? Writing/solving inequalities and graphing them on a number line are inseparable — students write $px + q > r$, solve, and graph. Same topic, two representations.
| Day | File | CCSS Topics | Type | Weight |
|---|---|---|---|---|
| 19 | day-19-scale-drawings | ch06-01 Understanding and Using Scale Drawings + ch06-02 Reproducing Scale Drawings at Different Scale | Double | Medium |
| 20 | day-20-drawing-figures-and-constructing-triangles | ch06-03 Drawing Geometric Figures + ch06-04 Constructing Triangles from Three Measurements | Double | Medium |
| 21 | day-21-cross-sections-and-angle-relationships | ch06-05 Cross-Sections of 3D Figures + ch06-06 Angle Relationships | Double | Medium |
Why ch06-01 + ch06-02? Using scale drawings and reproducing them at a different scale are the same skill at two levels — read a scale, then create one. Both use scale factor reasoning.
Why ch06-03 + ch06-04? Drawing geometric figures under constraints and constructing triangles from three measurements are companion construction tasks. Day 20 is the "geometry tools" day.
Why ch06-05 + ch06-06? Cross-sections and angle relationships are both "seeing geometry in new ways" — slicing 3D shapes and finding unknown angles from supplementary/complementary/vertical pairs. They're conceptually distinct but share the "geometric reasoning" day.
| Day | File | CCSS Topics | Type | Weight |
|---|---|---|---|---|
| 22 | day-22-parts-of-a-circle-and-circumference | ch07-01 Parts of a Circle + ch07-02 Circumference of a Circle | Double | Medium |
| 23 | day-23-area-of-circles-and-composite-shapes | ch07-03 Area of a Circle + ch07-04 Area of Composite Shapes | Double | Medium |
| 24 | day-24-surface-area-and-volume | ch07-05 Surface Area of 3D Objects + ch07-06 Volume of Prisms | Double | Medium |
Why ch07-01 + ch07-02? Parts of a circle (center, radius, diameter) and circumference ($C = \pi d$) are the natural introduction → formula pair. Students learn the vocabulary, then immediately use it.
Why ch07-03 + ch07-04? Circle area ($A = \pi r^2$) and composite-shape area are a learn → extend pair. Once students know circle area, they combine it with triangles and rectangles to find areas of complex shapes.
Why ch07-05 + ch07-06? Surface area and volume are the two key 3D measurement skills. Pairing them on one day lets students see both "wrapping" and "filling" the same prism, reinforcing the distinction.
| Day | File | CCSS Topics | Type | Weight |
|---|---|---|---|---|
| 25 | day-25-populations-samples-and-inferences | ch08-01 Populations and Samples + ch08-02 Making Inferences from Random Samples | Double | Light-Medium |
| 26 | day-26-comparing-populations | ch08-03 Comparing Two Populations Visually + ch08-04 Comparing Populations with Measures | Double | Light-Medium |
Why ch08-01 + ch08-02? Defining populations/samples and then making inferences from random samples is a single concept arc: "What is a sample?" → "What can we learn from it?"
Why ch08-03 + ch08-04? Comparing populations visually (dot plots, box plots) and comparing with measures (mean, MAD, IQR) are two approaches to the same question: "How do these groups differ?"
| Day | File | CCSS Topics | Type | Weight |
|---|---|---|---|---|
| 27 | day-27-probability-basics-and-theoretical-probability | ch09-01 What Is Probability? + ch09-02 Theoretical Probability | Double | Medium |
| 28 | day-28-experimental-probability-and-models | ch09-03 Experimental Probability + ch09-04 Probability Models | Double | Medium |
| 29 | day-29-sample-spaces-and-compound-events | ch09-05 Sample Spaces for Compound Events + ch09-06 Finding Probabilities of Compound Events | Double | Medium |
| 30 | day-30-simulating-compound-events | ch09-07 Simulating Compound Events | Single | Medium |
Why ch09-01 + ch09-02? "What is probability?" defines the 0-to-1 scale; theoretical probability puts it to work with $\frac{\text{favorable}}{\text{total}}$. The definition alone would be too thin for a full day.
Why ch09-03 + ch09-04? Experimental probability (long-run relative frequency) and probability models (uniform vs non-uniform) are paired as "predicted vs observed" — students build a model, then test it experimentally.
Why ch09-05 + ch09-06? Sample spaces (lists, tables, tree diagrams) and finding compound-event probabilities are inherently paired — you build the sample space IN ORDER TO find probabilities. Separating them breaks the workflow.
Why ch09-07 alone? Simulating compound events is the capstone topic. Students design and run simulations using random-number generators — this synthesizes everything from the chapter's probability toolkit.
Every day file lives in topics_in30days/ and follows this structure:
% ============================================================================
% Day N — Day Title
% CCSS 7.XX.X.X
% Topics: chXX-YY Topic Name (+ chXX-ZZ Second Topic Name)
% Type: Single|Double (Light|Medium|Heavy)
% ============================================================================
\section{Day Title}
\dayPage{N}{Day Title}{%
\begin{itemize}[leftmargin=6mm, itemsep=4pt]
\item[\textcolor{funOrange}{\faCheck}] Goal 1
\item[\textcolor{funOrange}{\faCheck}] Goal 2
\end{itemize}
}
\minuteTimer{20}
\begin{quickLesson}{Key Concept}
% ≤ half page: state the rule, show one clear example, done.
\end{quickLesson}
\begin{workedExample}{Title}
% One example with step-by-step solution
\end{workedExample}
\mascotSays{One short fun sentence.}
\begin{dailyPractice}
\resetProblems
% 6 problems (single-topic) or 8 problems (double-topic)
\end{dailyPractice}
\begin{dailyChallenge}
\prob One challenge problem
\end{dailyChallenge}
\keyTakeaway{One-sentence summary.}
\dayComplete
Important rules:
\begin{todaysGoals} — the \dayPage already displays goals.\newpage before \begin{dailyPractice} — let content flow naturally.\section{Day Title} MUST come before \dayPage and use a concise title
that describes the day's content (not just "Day N").When a day covers 2 topics, use \dayTopic{Title} to create sub-headers:
% ─── PART 1 ────────────────────────────────
\dayTopic{First Topic Title}
\begin{quickLesson}{Key Concept}
% ≤ ⅓ page per topic
\end{quickLesson}
\begin{workedExample}{Title}
% Brief example
\end{workedExample}
% ─── PART 2 ────────────────────────────────
\dayTopic{Second Topic Title}
\begin{quickLesson}{Key Concept}
% ≤ ⅓ page per topic
\end{quickLesson}
\mascotSays{Short fun sentence.}
\begin{dailyPractice}
\resetProblems
\practiceHeader{First Topic}
\prob ... % 4 problems
\bigskip
\practiceHeader{Second Topic}
\prob ... % 4 problems
\end{dailyPractice}
Each topic gets ~⅓ page teaching + 1 example. Combined practice = 8 problems total (4 per topic).
| Environment / Command | Purpose | Usage |
|---|---|---|
\dayPage{n}{title}{goals} | Full-page day opener with progress bar | Every day file, after \section{} |
\begin{todaysGoals} | Orange goals box | NOT used — redundant with \dayPage |
\begin{quickLesson}{title} | Condensed teaching box (teal) | Main lesson content |
\begin{dailyPractice}[title] | Practice section (blue) | Every day file |
\begin{dailyChallenge}[title] | Bonus challenge (purple) | Optional, most days |
\begin{bonusLesson}{title} | State-specific bonus (pink) | Only in bonus files |
\dayComplete | "Day Complete!" checkoff (green) | End of every day |
\dayTopic{title} | Sub-header for multi-topic days | Double days |
\keyTakeaway{text} | End-of-day summary point | Every day file |
\minuteTimer{mins} | Time estimate indicator | Every day file |
\progressTracker | 30-day grid (initial pages) | 03-progress-tracker.tex |
Day files can also use ALL environments from the standard VM_packages:
conceptBox, stepsBox, vocabBox, rememberBox, tipBox,
mathRuleBox, keyIdea, etc.workedExample, errorBox, sideBySideExample, etc.practiceBox (use dailyPractice instead for 30-day format),
codeBreaker, riddleBoxfractionBar, areaGrid, barGraph, numberLine, etc.\mascotSays{}, \encouragement{}, funFact, riddleBox,
activityBox, etc.\answer{}, \answerTF{}, \answerMC{}, \answerExplain{}{}quickLesson covers the concept in
≤ half a page. State the rule, show one clear example inline, done.
No fluff.workedExample per topic — only when the concept needs an explicit
step-by-step walkthrough. Do NOT use 2–3 examples.todaysGoals (redundant with \dayPage),
standalone rememberBox, or standalone tipBox. Fold important tips into
the quickLesson body.\practiceHeader{})\answer{}, \answerTF{}, \answerMC{},
or \answerExplain{}{}.dailyChallenge per day (1 problem only). The challenge should be
noticeably harder — multi-step, requiring synthesis, or connecting to
real-world reasoning.\mascotSays{} per day — a single short, fun sentence that relates
to the day's topic.\newpage before practice — let content flow naturally across pages.quickLesson (~⅓ page) + 1
workedExample. Combined dailyPractice with \practiceHeader{}
separators.$...$. Use \times and \div, not × or ÷.\textbf{...}.\dayPage itemize list (not 4+).Before finalizing any day file, verify:
\answer{} values are correct and fully simplified\dayPage number matches the day number in the filenametopics_config.yamlThe 30-day book supports all 50 US states. 43 states use the pure CCSS curriculum (identical content). 7 states have customizations through two