Apache Isis™ provides your apps with a standard, automatically generated UI. That means:
- On new apps, the business domain experts and the techies can work closely to learn, discover and then deliver.
- Existing apps are easy to modify - the app is mostly business logic, with costly UI code eliminated.
- Business users will find the app easy to learn as the business concepts are front and center
- When integrating with other systems, the development cost is minimized through built-in mechanisms
And because Apache Isis™ is open source, built on industry/de-facto standards, there's no vendor lock-in.
Reviews
We gathered together some comments from current users of the framework.
Apache Isis' philosophy is awesome - it drives you to focus on the domain model and encourages you to practice Behavior Driven Development. In addition, it brings the team together, sets the common platform and provides the right set of tools (Wicket Viewer OOUI, REST APIs, Swagger UI, Cucumber Framework) to work collaboratively which is simply great for the software development. It's a fabulously fantastic framework! A big thank you to the Apache Isis team.
Mansingh Shitole
Senior Developer, PRIME Research, Germany - Frankfurt / Mainz
Apache Isis enabled us to concentrate on modelling the domain and getting the UI and REST Interface with nearly no effort so we could build a fast and reliable application. Now we've started using it for the second project and I'm still very impressed by the framework and the community behind it.
Timothy Simecsek
NTT DATA Osterreich GmbH
We'd been looking for a RAD-tool for building our app; after trying different tools, Apache Isis gave us the most confidence for getting the job done. It's really remarkable how easy it is to use, while contributors and users on the Isis' active mailing list are ready to help on more advanced topics.
Erik de Hair
pocos.nl
A fantastic framework! With Apache Isis we can prototype a deployable application in minutes rather than days.
Jeremy Branham
With its automatic UI and REST web services generation, Apache Isis kept our developers amazed and happy. Having had strenuous experiences with architecture and infrastructure concerns differing from project to project, it's like having back the fun in software development
Willie Loyd Tandingan
Apache Isis' focus on the business domain improves communication between our end-users, architects and developers. Having a better application in a fraction of the time and cost is something we highly appreciate.
Cesar Lugo
I like the guidance Apache Isis gives me for structuring code along the lines of Domain Driven Design. My first web application in plain Java without writing a single line of DDL or HTML/*Script.
Joerg Rade
The Apache Isis team is very supportive. They even added new functionality for Summernote when I needed a WYSIWYG editor in my prototype project.
Marianne Hagaseth
What interests me most about Apache Isis is its goal of making both developers and users co-owners of their domain models. Apache Isis will be of interest to businesses who see their custom software as a strategic investment. It's not trying to be all things to all people, but it has depth and also, I predict, a bright future.
Steve Cameron
As students most of us prefer sticking with business logic than spending much time with UX enhancements. Apache Isis provides a great platform to create a perfectly working prototypes with loads of inbuilt UX concerns and customizations without worrying a single bit on the GUI perspective. And I must say this: "Great Support from the development team"
Vishma Dias
University of Moratuwa, Sri Lanka.
Apache Isis has allowed us to be focused on the Domain instead of infrastructure issues. The extensive metamodel let us further automate and enhance our custom viewer and integrate with external frameworks.
Nacho Canovas
Apache Isis provided us with a great starting point for our app; we simply took the todoapp archetype and used it as a template to help set up our integration tests and BDD specs. We were productive almost immediately
Vladimir Nisevic
A1 Telekom Austria
Apache Isis enabled us to focus on the problem domain and data quality and - because the UI was generated for us by the framework - not get distracted by UI concerns. Identified security issues were quickly addressed by the Apache Isis committers.
Architect
We use Apache Isis because of its simple and fast user interface generation.
Andreas Lechner
Apache Isis is an easy to learn, efficient and productive RAD platform. Further I can say it is evolving to be "the best RAD platform" without any exaggerations. The help from the community is simply wonderful.
Theekshana Dilshan
Computer Science and Engineering, University of Moratuwa, Sri Lanka.
Apache Isis is one of the best tools for hackathons. Given a 2 day hackathon challenge I have the perfect framework to create my prototype helping me to focus on business logic.
Sunand Padmanabhan
From a Sprint retrospective, the criticism of one lead developer sounded more like praise: "The problem is that if we show this to the customer they will think that all the work is done."
provided by Ged Byrne
How it works
UI & REST “for free”
Apache Isis™ dynamically builds both a generic user interface and also a rich hypermedia REST API directly from the underlying domain objects. This makes for extremely rapid prototyping and a short feedback cycle, perfect for agile development. The UI can also be extended for specific use cases, and can be themed using Bootstrap.
Domain-Driven
The core of an Apache Isis™ application are the domain objects, either persisted entities or view models. Business rules can be associated directly with domain objects, or can be factored out into separate services. Apache Isis performs dependency injection everywhere to ensure that the application remains decoupled and testable.
Add-ons
Apache Isis™ includes a large number of add-on modules for security, auditing, command profiling, mail merge and other cross-cutting concerns. It also has a number of UI extensions for maps, calendars etc. as well as a catalog of generic subdomains such as documents, communications, notes and tasks. All are open source and designed for out-of-the-box use or to modify as you require.
Built with
Apache Isis™ is built on top of industry leading open source products, all licensed with business-friendly Apache Software License v2.0 or MIT.
Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run".
Apache Wicket™ is an open source Java component oriented web application framework that powers thousands of web applications and web sites.
RESTEasy is a JBoss project that provides various frameworks to help you build RESTful Web Services and RESTful Java applications.
DataNucleus AccessPlatform provides persistence and retrieval of data to a range of datastores using a range of APIs, with a range of query languages.
Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java. Never write another getter or equals method again.
Byte Buddy is a code generation and manipulation library for creating and modifying Java classes during the runtime of a Java application.
Quick Start
Learn about Apache Isis™ by running the minimal helloworld starter app.
Develop your own Apache Isis™ app using the more structured simpleapp starter app.
curl https://codeload.github.com/apache/isis-app-helloworld/zip/2.0.0-M3 | jar xv cd isis-app-helloworld-2.0.0-M3 mvn clean install mvn spring-boot:run
curl https://codeload.github.com/apache/isis-app-simpleapp/zip/2.0.0-M3 | jar xv cd isis-app-simpleapp-2.0.0-M3 mvn clean install mvn -pl webapp spring-boot:run
Copy text
Copy text
If you want to use the previous 1.x version, you can use these Maven archetypes.
mvn archetype:generate \ -D archetypeGroupId=org.apache.isis.archetype \ -D archetypeArtifactId=helloworld-archetype \ -D archetypeVersion=1.17.0 \ -D groupId=com.mycompany \ -D artifactId=myapp \ -D version=1.0-SNAPSHOT \ -B mvn clean install mvn jetty:run
mvn archetype:generate \ -D archetypeGroupId=org.apache.isis.archetype \ -D archetypeArtifactId=$APP-archetype \ -D archetypeVersion=1.17.0 \ -D groupId=com.mycompany \ -D artifactId=myapp \ -D version=1.0-SNAPSHOT \ -B mvn clean install mvn -pl webapp jetty:run
Support
Apache projects use mailing lists for support. You can subscribe by sending an email to the users list, or you can browse the archives. If you find a problem, please raise a ticket on our JIRA, or ask a question on StackOverflow.