A hands-on workshop for learning data manipulation, automation, and visualization with Python in a corporate setting. Includes a slideshow for presenting exercises, plus structured exercises (main + bonus) with starter files, solutions, and sample data.
- Vibe Coding Tips: HTML slide presentation (
tips/index.html) — playful, keyboard-navigable slides on practical LLM workflow tips (model selection, auto-approve, agents, markdown logging, validation, etc.) with full docs intips/docs/and examples intips/examples/ - Slideshow: Single-file HTML presentation (
slideshow/slideshow.html,slideshow/slideshow_es.htmlfor Spanish) with exercise menu, bonus section, and navigation (open in a browser) - Main exercises: Intro, ETL (merge, clean, survey), Viz (charts, reports), Auto (Excel polish, file organizer), plus Bonus “Big Data Stress Test”
- Bonus exercises: PDF report, API pipeline, D3 bar/force viz, geo heatmap, interactive dashboard, Seaborn scatter/statistical
- Library testing:
scripts/test_libraries.pyto verify required libraries - Streamlit demo:
streamlit_demo/— multi-page reference app (inputs, viz, CRUD, file upload, process runner, session state) - Environment tools:
pip_ini_finder.pyfor locating pip config;requirements.txtfor dependencies
-
Clone and enter the repo:
git clone <repository-url> cd vibe-coding-workshop
-
Install dependencies:
pip install -r requirements.txt
-
Run a presentation: open
slideshow/slideshow.html(workshop exercises) ortips/index.html(Vibe Coding Tips & Tricks) in a browser (no server needed). Use arrow keys to navigate the tips slides. -
(Optional) Test the environment:
python scripts/test_libraries.py
-
(Optional) Run the Streamlit demo:
cd streamlit_demo && streamlit run main_menu.py
Or on Windows, double-click
streamlit_demo/run_app.bat.
| Path | Description |
|---|---|
tips/ |
Vibe Coding Tips presentation: index.html (slides), styles.css, script.js, docs/vibe-coding-tips.md, examples/*.md (12 tip examples) |
slideshow/slideshow.html |
Workshop slideshow (English): welcome, menu, main/bonus exercises, break, survey, congratulations |
slideshow/slideshow_es.html |
Spanish version of the slideshow |
slideshow/assets/ |
Images for slideshow (one per exercise + welcome, menu, break, survey, etc.) |
exercises/ |
Exercise folders: starter/solution/setup/data per exercise |
preparation/ |
Docs for building and extending the slideshow and images |
scripts/test_libraries.py |
Verifies installed libraries (including Streamlit) |
streamlit_demo/ |
Streamlit reference app: main_menu.py, pages/, data/, scripts/ |
pip_ini_finder.py |
Finds pip configuration files |
requirements.txt |
Python dependencies |
preparation/slideshow_part01_exercises.md– How the basic slideshow was builtpreparation/slideshow_part02_sequence.md– Sequence, menu, and navigationpreparation/slideshow_part03_bonus.md– Bonus section (menu, 8 exercises, navigation)slideshow/slideshow_config.json– Main and bonus exercise order; used byscripts/build_slideshow.pyto generate slideshowspreparation/how_images_were_created.md– How workshop images were made (Part 1: main set; Part 2: bonus images prompt for Gemini)
Exercises use a consistent layout: problem description (starter), solution code, and optional setup/data scripts.
- Main menu (slideshow): Intro → ETL 1–3 → Viz 1–2 → Auto 1–2 → Bonus (Big Data Stress Test)
- Bonus menu (slideshow): Auto PDF Report, ETL API Pipeline, D3 Bar/Force, Geo Heatmap, Interactive Dashboard, Seaborn Scatter/Statistical
See the slideshow for titles and goals; details live in each exercise folder under exercises/.
- Presenting: Open
slideshow/slideshow.htmland use the menu (or arrow keys) to move between exercises, bonus section, break, and survey. - Doing exercises: Go to the matching folder under
exercises/, read the starter (or slideshow description), then code and run; compare with the solution if provided.
- New exercise: Follow
preparation/metaprompt.md; add a folder underexercises/with starter (bilingual:## Englishand## Españolsections), solution, setup, and data; add the exercise toslideshow/slideshow_config.json(main or bonus list) and runpython3 scripts/build_slideshow.pyto regenerateslideshow/slideshow.htmlandslideshow/slideshow_es.html; add an image toslideshow/assets/if needed. - New bonus image: Use the table and instructions in
preparation/how_images_were_created.mdPart 2, generate images (e.g. with Gemini), save as the listedbonus_*.jpgnames inslideshow/assets/.
- Python 3.7+
- See
requirements.txtfor packages (e.g. pandas, numpy, matplotlib, seaborn, openpyxl, python-docx, python-pptx, fpdf, and others used by specific exercises).
[Add license information if applicable]