We understand that building business applications is both an art and a science. Our platform is designed to empower developers to craft modern, high-quality applications in Java. However, with versatility comes the challenge of figuring out the best way to leverage it—some approaches lead to better outcomes than others.
Many business applications start small and grow over time. While it's possible to learn and adapt as you go, we believe it’s much easier when there’s a clear framework to guide you from the start. That’s where The Vaadin Way comes in: an evolving, structured approach to building business applications that spans user interface design to system integrations and deployment.
Please note: The Vaadin Way is still a work in progress, and we want to invite you to join us on the journey.
What is the Vaadin Way?
The Vaadin Way aspires to provide more than just technical advice—it’s a philosophy for creating clean, testable, and scalable applications. By combining modern Java, Spring, and UX best practices, we aim to simplify the development process while empowering developers with clear and actionable guidance.
The Vaadin Way won’t be prescriptive or rigid. Every project has its unique challenges, and developers know their context best. Instead, it will offer flexible guidelines and tools to help you make informed, confident decisions—whether you’re starting from scratch or working on an existing application.
Why the Vaadin Way?
Over the years, many developers have struggled with inconsistent examples, conflicting guidance, or a lack of opinionated recommendations when using Vaadin. While flexibility is a strength, it can also lead to uncertainty and suboptimal design decisions.
The Vaadin Way will aim to address these pain points:
- Consistency: Establishing standardized practices across documentation, tools, and generated code.
- Clarity: Providing opinionated recommendations to guide you toward effective solutions.
- Empowerment: Helping developers understand the "how" and "why" behind each recommendation, avoiding opaque "magic."
- Scalability: Offering a unified approach that scales from simple departmental apps to complex enterprise solutions.
Principles of the Vaadin Way
The Vaadin Way is grounded in several core principles:
- Simplicity with the right complexity: Solutions should be as simple as possible but complex enough to solve the problem at hand.
- Readable and maintainable code: Code should be intuitive for developers, even those new to the project.
- Modern Java practices: Embracing features like functional programming and avoiding outdated conventions.
- Reuse through composition: Favoring composability over inheritance to build scalable, maintainable systems.
- Transparency over automagic: Developers should understand what’s happening under the hood to avoid surprises.
- Future-proofing with pragmatism: Balancing immediate needs with the ability to adapt to future changes in technology and business requirements.
A holistic approach
The Vaadin Way isn’t just about UI or a specific layer of the application stack—it encompasses the entire development process:
- Designing applications: UX best practices, accessible design, and tools like the Vaadin Design System in Figma for seamless collaboration between developers and designers.
- Building applications: Domain-driven design, data-oriented programming, application architecture, testing strategies, and more.
- Deploying applications: Guidance on packaging, deployment pipelines, scaling, rolling updates, and using the Vaadin Control Center.
- Testing applications: Clear testing strategies from unit tests to UI testing, ensuring that applications are robust and reliable.
The Vaadin Way is a living approach that evolves with technology, developer feedback, and ongoing innovation. As Java and Vaadin advance, the Vaadin Way will continue to adapt, staying relevant and helpful for modern developers.
Join us in shaping the Vaadin Way
This journey is just beginning, and we want you to be part of it. Explore our initial resources in the Building Appssection of the Vaadin Docs, share your feedback, and let’s refine this together.
Together, let’s make building business applications simpler, faster, and more enjoyable —The Vaadin Way!