Full-Stack Web Development from the Ground Up,
Edition 1 Principles, Practices, and TechnologiesEditors: By Christopher D Hundhausen, Ph.D.
Conformance
-
PDF/UA-1
-
The publication contains a conformance statement that it meets the EPUB Accessibility 1.1, WCAG 2.1, Level AA standard. Please see https://bornaccessible.benetech.org/certified-publishers/ for further details of our compatibility testing.
-
The publication was certified on 20250625
-
Accessibility addendum
-
The certifier's credential is https://bornaccessible.benetech.org/certified-publishers/
-
For detailed accessibility information, see Elsevier’s website at https://www.elsevier.com/about/accessibility
-
Compatibility tested
-
For queries regarding accessibility information, contact [email protected]
Ways Of Reading
-
This e-publication is accessible to the full extent that the file format and types of content allow, on a specific reading device, by default, without necessarily including any additions such as textual descriptions of images or enhanced navigation.
-
All contents of the digital publication necessary to use and understanding, including any text, images (via alternative descriptions), video (via audio description) is fully accessible via suitable audio reproduction.
Navigation
-
The contents of the PDF have been tagged to permit access by assistive technologies as per PDF-UA-1 standard.
-
Page breaks included from the original print source
Additional Accessibility Information
-
All (or substantially all) textual matter is arranged in a single logical reading order (including text that is visually presented as separate from the main text flow, e.g., in boxouts, captions, tables, footnotes, endnotes, citations, etc.). Non-textual content is also linked from within this logical reading order. (Purely decorative non-text content can be ignored).
-
The language of the text has been specified (e.g., via the HTML or XML lang attribute) to optimise text-to-speech (and other alternative renderings), both at the whole document level and, where appropriate, for individual words, phrases or passages in a different language.
-
For readers with color vision deficiency, use of color (e.g., in diagrams, graphics and charts, in prompts, or on buttons inviting a response) is not the sole means of graphical distinction or of conveying information
-
Content is enhanced with ARIA roles to optimize organization and facilitate navigation
-
Where interactive content is included in the product, controls are provided (e.g., for speed, pause and resume, reset) and labelled to make their use clear.
Note
-
This product relies on 3rd party tooling which may impact the accessibility features visible in inspection copies. All accessibility features mentioned would be present in the purchased version of the title.
Description
Web development is one of the most highly sought after skills in the software industry
today. Full-Stack Web Development From the Ground Up: Principles, Practices, and
Technologies presents a systematic and modern treatment of this core area of software
development, starting with the fundamentals of front-end development using HTML, CSS,
and JavaScript; moving to front-end development with React; and culminating in server-side
development using Express.js, Node.js, and MongoDB.
Using the widely adopted MERN stack (MongoDB, Express.js, React.js, and Node.js), this
undergraduate textbook explores full-stack web development through the step-bystep
construction of a pedagogical version of SpeedScore (see https://speedscore.org), a
sophisticated full-stack web application that supports the international speedgolf community.
The book’s emphasis is not on specific web development technologies, but rather on the
underlying concepts, principles, and best practices of web development. This approach lays
a solid foundation for students to become proficient web developers who can adapt to the
rapidly changing landscape of web development technologies.
Key Features
- Takes a hands-on approach by motivating, designing, and developing a full-stack web application from the ground up
- Provides complete code for the application developed in the book (38,000 lines of code) through a well-documented companion GitHub repository with a branch for each book chapter and tags marking code examples developed in book, allowing students to explore, execute, and follow along with the book’s code
- Uses detailed annotated flow diagrams to graphically present complex application flows and logic
- Presents side discussions (“boxes”) of key technologies, considerations, and tradeoffs related to chapter content
- Includes end-of-chapter exercises and programming tasks that provide opportunities to reinforce and apply chapter content
About the author
By Christopher D Hundhausen, Ph.D., Professor, Computer science, Associate Head for Online Programs, School of Electrical Engineering and Computer Science, Oregon State University.
1. Welcome to Full Stack Web Development
2. The Front-End Code Behind a Single Page Web App
3. Creating a Single-Page Web App Framework in HTML and CSS: Semantic HTML and ARIA Roles
4. Creating a Single-Page Web App Framework in HTML and CSS: Part II
5. Bringing a Single-Page Web App to Life with JavaScript: Event Handling and Menus
6. Bringing a Single-Page Web App to Life with JavaScript: Tabs and Modal Dialogs
7. Automated Testing of Client-Side Web Apps
8. Obtaining and Validating User Data with HTML Forms
9. Using HTML Forms: An Advanced Example
10. Saving User Data in Local Storage
11. Working with Data in Tables
12. Welcome to React
13. Transitioning to the Create React App Framework
14. Using Web APIs to Obtain App Data and Enhance Functionality
15. Architecting React Component Hierarchies
16. Managing State and Complexity in React Component Hierarchies
17. Making Client Web Apps Accessible to the World
18. Using Node and Express to Build a Web App’s Back End
19. Storing App Data Persistently with MongoDB
20. Architecting Web APIs with Express and MongoDB
21. Authenticating Users
22. Securing API Routes
23. Testing and Documenting Web APIs
24. Implementing and Deploying SpeedScore with a Web API
APPENDIX
A. Cloning a Speedscore Repository to a Local Repository
B. Team Web Development Project
- CptS 489 Web Development
- Exercise Solutions
- Solutions Ch01.docx
- Solutions Ch02.docx
- Solutions Ch03.docx
- Solutions Ch04.docx
- Solutions Ch05.docx
- Solutions Ch06.docx
- Solutions Ch07.docx
- Solutions Ch08.docx
- Solutions Ch09.docx
- Solutions Ch10.docx
- Solutions Ch11.docx
- Solutions Ch12.docx
- Solutions Ch13.docx
- Solutions Ch14.docx
- Solutions Ch15.docx
- Solutions Ch16.docx
- Solutions Ch17.docx
- Solutions Ch18.docx
- Solutions Ch19 .docx
- Solutions Ch20.docx
- Solutions Ch21.docx
- Solutions Ch22.docx
- Solutions Ch23.docx
- Solutions Ch24.docx
- Lecture Slides
- 06-1-Show-Data-in-Tables-Pt2.pptm
- 06-2-Welcome-to-React-1.pptm
- 06-2-Welcome-to-React.pptm
- 06-3-Getting-Data-From-Web-APIs .pptm
- 06-3-Getting-Data-From-Web-APIs-1 .pptm
- 07-1-Managing-Collections-of-Components.pptm
- 07-2-Obtaining-User-Data-through-Controlled-Forms.pptm
- 07-3-Transitioning-to-Create-React-App.pptm
- 08-1-Managing-Parent-Component-State.pptm
- 08-2-Building-Reactive-Child-Components.pptm
- 08-3-Building-Components-to-Manage-User-Data.pptm
- 09-1-Building-Components-2.pptm
- 09-2-Supporting-Local-User-Management.pptm
- 09-3-Serving-Web-Apps-with-Express.pptm
- 10-1-Authenticating-Users-with-OAuth.pptm
- 10-2-Welcome-to-MongoDB.pptm
- 10-3-Supporting-Local-Accounts-with-Passport.pptm
- 10-30-Team-Project-1.pptx
- 11-1-Completing-MERN-Implementation-of-SpeedScore.pptm
- 11-2-Deploying-MERN-Apps-to-the-Web.pptm
- 11-3-WrapUp-and-Workday.pptm
- 12-2-Team-Project-1.pptx
- 12-3-Team-Project-2.pptx
- 12-3a-Team-Project-2.pptx
- 12-3b-Team-Project-3.pptx
- SpeedScore-RoundsMode.gif
- TestCafe-Test-Example.gif
- Tips-for-Google-OAuth.docx
- Programming Task Solutions
- README.docx
- SpeedScore Repository
- Team Project