Exercise 1: A Real Philosophical Difference — Possible Solution ==================================================================== DJANGO'S FREE ADMIN ------------------------------ Per this chapter, Django ships an admin app as part of the framework itself, already present in INSTALLED_APPS. A single admin.site.register(Page) call generates a working list, edit, and delete interface automatically, by introspecting the model - no CRUD views or forms need to be written by hand at all. LARAVEL'S ABSENCE OF AN EQUIVALENT ------------------------------ Per this chapter, Laravel ships no comparable admin interface as a framework default. Nova (a paid, first-party package) and Filament (a free, community-maintained package) can both generate similar CRUD interfaces from model definitions, but installing either is an explicit, separate decision made after the fact - not something present out of the box the way Django's admin app is. WHY THIS CHAPTER BUILDS BY HAND INSTEAD OF USING FILAMENT ------------------------------ Per this chapter, the interface is built by hand for two reasons: it matches the same approach Next.js Rebuild 10 already took (that course also had no free admin and built its own), and more importantly, hand-building it is the only way to actually walk through and teach the reparenting logic - movePage() and the recursive full_path recomputation - that this chapter exists to cover. A generated admin package would hide exactly the mechanism this chapter is meant to teach. WHY THIS WORKS AS AN ANSWER ------------------------------ It correctly explains that Django's admin app is a framework default requiring only one registration call, correctly explains that Laravel has no equivalent default and that Nova/Filament are separate optional packages, and correctly explains why the course chose to build the interface manually rather than adopting a package.