This repository has been archived by the owner. It is now read-only.
Minos is a thin framework layer built on Spring, that helps you to develop applications in a modular way.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
Minos Sandbox Neu.sonarj
Minos Sandbox.sonarj


What is Minos?

Minos is a thin framework layer built on Spring, that helps you to develop applications in a modular way. It is concerned with:

  • making standard tasks easier by eliminating boilerplate code
  • separating distinct layers through modular configuration
  • structuring an application into self-contained modules with clear dependency directions

It is thin and lightweight in the sense, that it glues together several libraries and technologies instead of “reinventing the wheel” and augments these in some domains. Following is a list of the used libraries, technologies and augmenting code and their role in the framework:

  • Spring is used for Dependency Injection
  • Spring MVC is used, to define request handlers in the form of controller objects
  • Maven is used as a build system and – with the help of WAR overlays – to assemble applications from multiple Minos modules
  • JPA (via Hibernate’s implementation) is used to define the domain model
  • Hades (currently becoming Spring Data) is used to generate Data Access Objects for the domain model
  • Spring Security is used in a bundled user management with URL based access control
  • A menu system is provided, which allows rendering of hierarchical menus with respect to the security layer
  • Hera, a small plugin system, is used to collect providers for various aspects – for example the menus – from among the Spring beans
  • Internationalization support is provided as a modular aspect to simplify localized versions of an application
  • SiteMesh is used as a view decoration & layout system for the JSP-based views in Spring MVC
  • Helpful Tags for form generation or sortable & pageable table views (based on Hades and DisplayTag)
  • Pre-configured and modular definitions of the web application context (web.xml), Spring beans and application properties