Framework
A software framework is a reusable structure that provides components, conventions, services, or extension points for building applications or other software systems.
Build a Frontend Web Framework (From Scratch)
A software framework that provides reusable structure and mechanisms for building the user-facing portion of web applications.
- How it is used
- Provides reusable structure for interactive web views while taking responsibility for running application code at appropriate triggers.
- How deep it goes
- Builds a small working framework incrementally, beginning with full DOM replacement and planning more selective reconciliation rather than production-level completeness.
- Examples
- Uses a button counter and a TODO application to show state-driven rendering and the move away from manual DOM manipulation.
- What you can do after
- Build it from scratch as a small JavaScript framework, then apply it to an interactive TODO application.
Read how Build a Frontend Web Framework (From Scratch) explains framework →
React in Depth
A software framework written for or centered on JavaScript that structures frontend application development.
- How it is used
- Structures fullstack React websites around server-rendered pages, URL routes, and server-loaded data.
- How deep it goes
- Works through route-file and data-loading implementations in two frameworks, while leaving their broader APIs to their documentation.
- Examples
- Uses weather-app country and city routes and a category page loaded through Next.js or Remix.
- What you can do after
- Build it from scratch: create server-rendered React routes that load page data using Next.js or Remix.
Think Like a CTO
A reusable software foundation that provides conventions and supporting components for building applications or automation systems.
- How it is used
- Guides CTOs through technology selection, modernization decisions, hiring implications, and long-term stack planning.
- How deep it goes
- Defines framework scope, explains migration consequences, and supplies selection criteria, but stops short of implementation detail.
- Examples
- Uses Java Enterprise Standard, Spring, ReactJS, and Express.js to illustrate framework relationships with Java, JavaScript, and Node.js.
- What you can do after
- Evaluate frameworks against maturity, sponsorship, community, educational adoption, hiring availability, and switching costs.
Machine Learning System Design
Software that provides reusable infrastructure for configuring and executing machine-learning model training.
- How it is used
- Separates research flexibility from production-serving performance when designing machine-learning training and inference pipelines.
- How deep it goes
- Compares framework strategies, decoupling, compilation, conversion, runtime support, and optimization without detailing implementation procedures.
- Examples
- Uses Pandas, scikit-learn, Keras, Torch 2.0, ONNX, and ONNX Runtime as contrasting framework and ecosystem examples.
- What you can do after
- Evaluate framework architectures by balancing research convenience, inference performance, portability, and long-term operational independence.
Read how Machine Learning System Design explains framework →
Web Components in Action
A software framework is a reusable application structure that provides conventions, abstractions, and extension points for development.
- How it is used
- Guides project decisions between framework-based application development and standards-based Web Components.
- How deep it goes
- Compares framework responsibilities and trade-offs but stops short of implementing a particular framework.
- Examples
- Uses Redux and React, plus deprecated Object.observe, to illustrate interchangeable libraries and rejected native data binding.
- What you can do after
- Evaluate framework and no-framework options against project needs and recognize their standards-based underpinnings.
Related concepts
- Flaskincludes · Flask is a lightweight Python web framework based on WSGI for building web applications and services.
- Djangoincludes · Django is an open-source Python web framework providing integrated components for developing structured, database-backed web applications and services.
- Axumincludes · Axum is a Rust web framework for building asynchronous HTTP services with routing, request extraction, and handler execution.
- Streamlitincludes · Streamlit is an open-source Python framework for building interactive web applications, particularly for data and machine-learning applications.
- FastAPIincludes · FastAPI is a Python web framework for building APIs, with type-annotation-based request handling, validation, and automatic OpenAPI documentation.
- librarykind of · A software library is a reusable collection of code or components that other programs can incorporate or invoke to provide functionality.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.




