Cover-Picture Sources
Preface
- MVP
Prerequisites
- Tools of the Trade
Teaching Aid
- Schedule like it’s 200X
- Getting Started: Hello, Play!
Project Layout
- Outwith: Überproject
- Within: So Long, Layered MVC!
- Monolith, Modulith, and Microservices
New …
- … Repository
- … Application
Dependency Injection
- Controllers and Filters
Two Become One 1
- Dude, where’s my API?
- Prepare for Launch
GUI Libraries
- Bootstrap
- React Router
- Getting htmx and Bootstrap as well as Bootstrap Icons
Security as a Forethought
- Hardening the backend
- Testing
- Hardening the frontend
- What about TLS?
- Rinse & Repeat
Database Management System
- MongoDB
- Event Store
- Event Sourcing
- MongoDB
Internationalization and Localization
- Both Fixadat and SVPofWFTTC
- Only Fixadat: Backend
- Only Fixadat: Frontend
- CI/CD
Two Become One 2
- Alternatives
- Building Images Locally
- Running Containers Locally
Continuous Integration
- Test
- Scan
Continuous Delivery
- Pull
- Push
Continuous Deployment
- MongoDB
- Docker or Java
- Features
Going Public
- index.html
- Records and Case Classes
- Primitive Types
Interaction Design
- Users and Interactions
- Boilerplate
Configuration
- Configuration Files
- Application Secret
- Session Cookie
- Logging
Template
- Boilerplate
Privacy
Legalese
- Appendix
Updating and Upgrading
- Updating the Backend
- Updating the Frontend
- Upgrading the Backend
- Upgrading the Frontend