SeedStack is a Java-based, high-productivity development solution. It can be used to build different types of software like REST microservices, classic Web applications or command-line applications.

What is SeedStack ?

The Java framework is the foundation. It can be completed with:

SeedStack is built upon carefully selected and integrated open-source components. Configuration, security, business code, persistence, APIs and Web interfaces are examples of where SeedStack provides an opinionated and simple answer.

SeedStack can adapt to various architectural styles, like micro-services, classic Web applications or CLI tools. Projects can be deployed to various runtime environments, like traditional application servers but also private or public clouds.

SeedStack modular architecture is a good fit for systems of any size. It is easy to start small and add modules as the system grow. The framework takes care of technical challenges and provides great development patterns while reducing boilerplate code. This frees developers from low-value tasks so they can focus on their core activity: high-value business code. When required, SeedStack can be easily extended with custom modules.

SeedStack goes well beyond providing existing components. It integrates them in an opinionated architecture that can scale from a single project to a big organization software strategy. Its elegant plugin architecture is designed for extensibility, enabling to write and effectively reuse software components at enterprise scale.

An enabler of quality software

While initial speed of development is an important objective of SeedStack, its primary goal is to lead developers and organizations into building quality software. Not only software that you can rely on from day one, but software that can evolve over time without difficulty nor expensive rewrite. This is achieved through:

  • Key design and implementation choices, like type-safe dependency injection or stateless design, that directly benefit project robustness and maintainability.
  • A well-defined modular architecture that allows developers and organizations to build and govern their own coherent software ecosystem, especially when numerous contractors are involved.
  • First-class support for Domain-Driven Design, a battle-proven software approach for building robust and scalable business code.

SeedStack itself has all these qualities built in a well-tested, reliable and secure codebase.

An efficient tool

Overall, SeedStack architecture and quality focus has the effect of driving down the Total Cost of Ownership (TCO) during the whole life of your software. This takes into account: the speed of initial development, the ease of maintenance and the inevitability of change. This claim is backed by a large number of existing projects in various business domains like banking, digital or manufacturing.

SeedStack is a great fit for agile development. With SeedStack, your software project can start small and grow iteratively into a mature system while staying clean along the way. Domain-Driven Design ensures that your software remains aligned with your business needs and can embrace change when required.

SeedStack has a highly modular architecture, allowing you to cherry-pick the components you need and leave off the ones you don’t. This will make your project light and clean. At any time, you can add or remove components without any change to the existing codebase, so you can start small and grow step-by-step.

A foundation for reusability

SeedStack is designed from the start to work in a context of reusable software components. Every feature like dependency injection, configuration, security, API support or the business framework is designed to work across multiple modules that you can reuse and combine as you need in multiple projects.

Naturally you can leverage SeedStack architecture to provide the same level of modularity in your own add-ons. Beyond built-in modularity, Seedstack can be the foundation for building your own technology stack.