Free course · Registered members · Lesson 6 / 10
Bootstrap, jQuery and the editorial area
Build a readable interface with progressive search and controlled saves.
Editorial team: Take Two · Published
Lesson preview
A simple hierarchy
The homepage uses a title, introduction, search and an article grid. In the editor, labels and spacing separate title, body, status and save button. The reference includes Bootstrap 5.3.8 and jQuery 4.0.0, checked against official sources on the course date. Bootstrap 5 does not require jQuery: here jQuery enhances search while Bootstrap classes handle layout. Do not add components merely because they exist.
Progressive means keeping a fallback
Search works as GET /?q=... without JavaScript. With JavaScript, jQuery requests /search and updates results. The server still enforces draft filtering. A new request cancels the preceding request, and status appears in an aria-live area. On failure, the message explains how to return to standard search. The Next link still opens a page that works without scripts.
What to check as you practise
- Stale edit returns 409.
- GET search works without scripts.
- Titles and body inserted as text.
Continue with the full lesson
Register free to access the complete explanation, examples, exercise and commented answer. This preview stays open to everyone.
Workshop files · Version 1
The reference project
Download the complete blog, English and Italian instructions, SQL schema, agent contracts, fictional fixtures and tests. The sample blog interface is in English. This is a local learning project: password recovery, email verification and MFA remain extensions before opening it to a public community.
Free download. Full lessons require a free Take Two account. Codex access depends on your own plan.
Sources and further reading
- OpenAI · Codex CLI: setup and first task ↗
- OpenAI · Project instructions with AGENTS.md ↗
- OpenAI · Subagents and coordination ↗
- OpenAI · Non-interactive mode and structured output ↗
- Bootstrap · Getting started ↗
- Bootstrap · JavaScript and jQuery ↗
- jQuery · Official downloads ↗
- PHP · Password hashing ↗
- PHP · PDO prepared statements ↗
- PHP · Session security ↗
- OWASP · CSRF prevention ↗
- Turismo Roma · Roma Live calendar ↗
- Turismo Roma · Crawl rules ↗