Transforms science fair windings into physical artifacts via print services.
– print_photos: command, api – Extract all visual elements and send to photo printing service.
@extraction:
- Parse winding for images, charts, tables
- Convert tables/calculations to high-res images
- Add margins for clean cutting
- Generate QR codes for interactive elements
@sizing:
- 4x6: default for poster elements
- 5x7: featured images, main chart
- 8x10: title card, hypothesis
- Custom: based on @size argument
@services:
- walgreens: via API or selenium
- cvs: photo API
- local: PDF for self-printing
- api.wind.kids: managed service
@layout_hints: Each photo gets a companion hint card:
IMG_001_hypothesis.jpg → "Top center of board"
IMG_002_procedure.jpg → "Left panel, under materials"
@usage:
science_print dragon_wingsuit.md --service walgreens --store 94086
science_print experiment.md --size 4x6,8x10 --copies 2
science_print project.md --api wind.kids --rush
– photobook: command, pdf – Transform science fair project into keepsake book.
@layout_engine:
- Title page with student photo
- Project overview spread
- Step-by-step procedure pages
- Results with full data visualization
- Conclusion and learnings
- Behind-the-scenes photos
- Judge feedback page (blank template)
@formats:
- 8x8: Instagram-friendly square
- 8.5x11: Standard, economical
- 11x14: Premium presentation
@print_ready:
- Bleeds and margins for pro printing
- PDF/X compatible
- Embedded fonts
- Color profiles
@themes:
- scientific: clean, journal-style
- fun: colorful, kindergarten-friendly
- prestigious: thesis-style, serious
@usage:
science_book dragon_wingsuit.md --format 8x8 --theme fun
science_book research.md --format 11x14 --theme prestigious --isbn
– api_service: hosted, scalable – api.wind.kids or api.articoder.com endpoint.
@endpoints:
POST /science/print
body: winding content
params: service, size, rush
returns: order_id, pickup_info
POST /science/book
body: winding content
params: format, theme
returns: pdf_url, preview_url
GET /science/status/:order_id
returns: status, tracking, eta
@features:
- Parental approval workflow
- Bulk school discounts
- Science fair deadline awareness
- Quality preview before printing
@integration:
# In the winding tool
illuminate science_fair.md --print --service wind.kids
illuminate project.md --book --format 8x8 --order
# Or via API
from winding import science_fair_print
order = science_fair_print.photos("dragon.md", size="4x6")
print(f"Pick up at Walgreens: {order.location}")
– smart_features: – Beyond basic printing:
@poster_optimizer:
- Detect standard tri-fold dimensions
- Suggest photo arrangements
- Generate cutting guides
- “Too much text” warnings
@parent_helper:
- Shopping list: posterboard, glue, markers
- Timeline: “Order by Tuesday for Friday fair”
- Cost estimate before ordering
@judge_mode:
- QR code for digital appendix
- AR markers for phone visualization
- “Scan for video demonstration”
@batch_processing:
# Teacher processes entire class
science_print class/*.md --school "Lincoln Elementary" --bulk_discount
– example_winding: – What the tool processes:
---
dragon_wingsuit: science_fair, grade_1
---
Can I fly with dragon wings?
@hypothesis:
If I use a 9.2m² wing, I might glide!
@materials: !photo
- Wing 5m²
- Wing 9.2m²
- Harness
- Pilot (22kg)
@procedure: grid[2,2]
1. Calculate lift needed
2. Test small wing
3. Test large wing
4. Measure results
@results: chart, prominent

@math: table
| Mass | 22 kg |
| Speed | 4 m/s |
| Lift needed | 216 N |
@conclusion: callout
9.2m² not enough. Need 20m²!
Outputs:
- 6 photos (4x6) for poster
- 1 chart (8x10)
- 1 photo book (8x8)