DATACAREERHUB — CORE SOFTWARE SKILLS
Original fictional teaching kit, 2026-10-15. Free companion material.
Prerequisites: Python functions, loops, JSON, dictionaries and terminal basics.
Python 3.10+; standard library only. No pip, account, secret or cloud service needed.
Extract the whole ZIP into a new folder. Open a terminal inside software-kit.
On Windows substitute py or your chosen Python executable for python3.

RUN
python3 -m compileall -q dch_orders tests
python3 -m unittest discover -s tests -v
python3 -m dch_orders orders.json
The suite opens a real temporary 127.0.0.1 socket and closes it after testing.
If your environment refuses local sockets, report HTTP tests unexecuted; do not mark them passed.

CONTROL
4 orders, total 40000 cents = EUR 400.00, web 27000, store 13000.
F01/F02/F03/F04 are original fictional completed-order records, not real customers.
orders-invalid.json intentionally repeats F01 and must fail. CLI exit status 2.
An empty list is structurally valid and returns zero; source completeness is a separate decision.

OPTIONAL VIRTUAL ENVIRONMENT
macOS/Linux: python3 -m venv .venv
Then use .venv/bin/python in place of python3 above.
Windows: py -m venv .venv
Then use .venv\Scripts\python.exe in place of python3 above.
Do not copy your .venv into the live website or a portfolio repository.
This is an importable source package, not an installed/published wheel.

MANUAL HTTP
Terminal A: python3 -m dch_orders.service
The service prints its ephemeral loopback URL. Use that port in the lesson client.
Terminal B: run the client in lesson 6. Ctrl+C in terminal A stops the server.
Never bind this teaching server publicly or deploy it to Aruba. No TLS/authentication/persistence.
The server rejects browser Origin headers. This does not constitute authentication.

LEARNER MATERIAL
exercises/worksheet.txt — tasks, expected reasoning, evidence checklist
solutions/worked-solutions.txt — worked answers and runnable snippets
api-contract.txt — routes, schema, bounds, statuses and limits
capstone-rubric.txt — independent self-review criteria
.github/workflows/learning-tests.yml — optional disposable-repository example only.
Local commands are tested; hosted GitHub execution is NOT claimed.

PRIVACY / SCOPE
Use fictional data only. No resume data, application accounts, uploads or source website DB is used.
Do not add credentials or expose this service. No payment or registration settings change.
No progress, grading, certification, job offer or employment guarantee.
Credit DataCareerHub teaching code and describe your own changes accurately in a portfolio.
Tests cover stated fixtures, not universal correctness, security or production readiness.
Deeper Linux systems/permissions, built wheels and hosted CI remain separate future verification.
