All articles
B2B CRM application preview

Production-ready
enterprise
CRM app with AI

Explore the code

From Final Projects to Advanced Add-ons: Agustín Santos Méndez’s Jmix Story

Editorial note: Throughout this article, references to Jmix technologies include both Jmix and its predecessor, CUBA Platform, reflecting the continuous evolution of the same platform, architectural ideas, technology stack, and community.

A Final Degree Project gives students an opportunity to bring together everything they have learned.

It also comes with a strict time limit.

A promising idea can easily become buried under framework configuration, infrastructure setup, and the effort required to connect different application layers.

For Agustín Santos Méndez, Lecturer and Teaching Assistant at Universidad Rey Juan Carlos in Madrid, the goal was to give students a more direct path from an idea to a complete working application.

Over the years, Jmix has become a supporting platform for Final Degree Projects ranging from public-sector prototypes to technically advanced integrations and custom add-ons.

As part of the Jmix 10-year anniversary series, Agustín shares how the platform helps students focus on meaningful problems, work with technologies relevant to their future careers, and progress toward increasingly ambitious projects.

Teaching Enterprise Development with Jmix
By Agustín Santos Méndez, Lecturer and Teaching Assistant at Universidad Rey Juan Carlos

Below, Agustín shares his experience in his own words.

Finding a Practical Academic Platform

I first came across Jmix while searching for an open-source, Java-based solution that could support a broad range of academic needs, from database design and business logic to user interface development.

Access to the source code was particularly important. I wanted students to understand what was happening underneath the platform, collaborate on the code, and extend their applications when required.

Over the years, I had worked with approaches including plain Spring Boot stacks, JHipster, C# technologies, and Python frameworks such as Django and Flask. All were technically capable, but I needed a more integrated development experience for Final Degree Projects.

Jmix offered an open-source foundation, a Java-based technology stack, and capabilities covering the application from its data model to its UI and security configuration. Just as importantly, students could work productively without losing access to the underlying technologies.

Students showed greater engagement when working with Jmix, particularly because they perceived the technologies as relevant to real professional contexts.

Jmix is built on technologies such as Spring Boot, JPA, and standard Java tooling. Students recognize that the knowledge they gain is transferable beyond the university project and useful in their future careers.

From Setup to Substance

Before introducing Jmix technologies, the development approach depended heavily on the student’s background and the project. Some students worked with Spring Boot-based stacks, occasionally using JHipster for scaffolding. Others used Python frameworks for more straightforward applications.

These approaches could produce strong results, but students often spent a significant part of their limited time on setup, configuration, and integration. Initial progress could be slow, and promising projects sometimes struggled to reach a coherent, usable state.

My main requirement was to give students a structured foundation that would let them focus on the substance of the project. I wanted an environment covering data modeling, UI development, security, and business logic without requiring students to assemble every part manually.

With Jmix, students can reach a first working version earlier and begin validating their ideas while there is still time to improve them.

Compared to our previous approach, Jmix reduced initial technical overhead and allowed earlier validation of project ideas.

Instead of spending most of the early stages configuring the technology stack, students can concentrate on the domain, requirements, application behavior, and final result.

One Platform, Different Learning Paths

Jmix is not currently used as part of a regular taught course. I use it primarily as a supporting platform for individual Final Degree Projects completed by university students and students coming from vocational education.

The work is supervised through regular milestones and reviews, while the role of Jmix depends on the project.

For some students, it is primarily a productivity tool that helps them focus on requirements, domain modeling, business logic, and results. For others, understanding and extending the platform becomes part of the academic objective.

Students may begin with data entities, CRUD screens, custom UI, security roles, and business logic. More advanced projects can introduce workflows, integrations, testing, deployment, extension points, and custom add-on development.

A student can therefore begin by building an application with Jmix and later progress toward understanding how the platform itself can be customized and extended.

Applying Jmix to Real-World Domains

Some Final Degree Projects use realistic public-sector scenarios as the basis for academic prototypes. These are proof-of-concept projects designed to model real requirements and business processes rather than production systems developed for external organizations.

One example focused on managing European public funding programs. The application modeled programs, operations, beneficiaries, expenses, and indicators, together with financial tracking, validation rules, and role-based access control.

By the end of the project, the student had delivered an almost fully functional application suitable for demonstrating how such processes could be supported in a public-sector environment.

Another project explored the management of Energy Savings Certificates, a regulated domain with strong traceability requirements.

The application modeled certificates, projects, calculation methods, validation statuses, and supporting documentation. The student implemented structured workflows, state transitions, and role-based permissions.

These projects allow students to work with realistic domains and move beyond standard CRUD functionality by translating business rules and processes into coherent applications.

From Applications to Platform Extensions

In other projects, Jmix itself becomes part of the academic challenge.

Over several academic periods, students have worked on custom extensions and add-ons with increasing levels of technical complexity.

One of the most advanced projects focused on OData integration, allowing external systems to consume data managed by Jmix through the OData protocol. This required the student to explore platform extensibility, API design, and compatibility with the Jmix data model.

Other projects have explored complementary frontend and integration technologies. More recently, students have also begun working on AI-related extensions based on Spring AI and inspired by the Jmix AI Backend project.

The complexity of these projects comes from the need to understand Jmix extension points, security integration, API design, and maintainability.

Students are no longer only learning how to build applications with the platform. They are also learning how to extend it.

Using Jmix encouraged students to explore and learn beyond the minimum project requirements.

What began with application development has gradually expanded into experimentation with integrations, platform extensions, frontend technologies, and AI.

Learning Technologies That Transfer Beyond the Project

One of the most important aspects of using Jmix in education is that students do not feel they are working with a closed academic tool.

Jmix gives them a structured way to build an application while keeping the underlying Java technologies accessible. As projects become more advanced, students can explore Spring Boot, JPA, Java, and Jmix extension mechanisms within the same application architecture.

This combination of productivity and transparency is particularly valuable for Final Degree Projects.

Students can focus first on domain modeling, UI, security, and business logic, and then explore the underlying technologies in greater depth when their projects require it.

The objective is not only to finish an application, but also to develop an understanding of how the different parts of an enterprise application work together.

Keeping the Focus on the Project

Student feedback has been positive and pragmatic.

Students value being able to focus on the project itself rather than spending most of their time on infrastructure or basic UI setup. They also appreciate that the technologies they encounter are recognizable and relevant to professional software development.

For me, this is an important part of Jmix’s value in education: students can spend more of their limited project time understanding the domain, developing the application, and exploring beyond the minimum project requirements.

Continuing to Explore

My experience with Jmix in education has been positive, and I would recommend it particularly for final-year students and Final Degree Projects.

The platform can support straightforward applications without limiting students to them. As their knowledge grows, they can move toward custom interfaces, complex domains, integrations, platform extensions, and add-on development.

Students need a way to produce meaningful results within the available time, but they also need room to investigate and understand the technologies behind their applications.

Jmix provides both.

Current projects are already exploring new integration and AI-related scenarios, continuing this progression toward increasingly advanced technical challenges.

From the Classroom to Industry: Bridging Academia and Consulting

Building on this academic foundation, we recently launched a specialized software and consulting venture (eNexum Innovation) focused on Jmix, AI integrations, and public-sector solutions (such as European funding programs and Energy Savings Certificates/CAEs management).

What started as university prototypes has seamlessly evolved into enterprise-grade products. Thanks to the power of Jmix and our educational track record, onboarding former and new students into our consulting team has been remarkably smooth. They hit the ground running with an enterprise stack they already understand, allowing us to deliver high-quality, modern solutions - increasingly enhanced with Jmix, Spring AI and custom LLM workflows - to real clients with minimal friction.

Jmix 10 aniversary logo

Thank You, Agustín

Agustín, thank you for sharing your experience and for bringing Jmix into such a wide range of academic projects.

Your work shows how student development can grow far beyond basic exercises. From realistic public-sector prototypes to advanced integrations, platform extensions, and AI-related experiments, your students are learning how to turn complex requirements into coherent applications while working with technologies relevant to their future careers.

It is especially rewarding to see this experience now moving beyond the university environment. The launch of eNexum Innovation demonstrates how the knowledge, practices, and technical foundation developed through academic projects can translate naturally into real-world software and consulting work.

We deeply appreciate your long-term trust in Jmix, your thoughtful feedback, and your commitment to helping students explore beyond the minimum requirements of their projects.

It is a privilege to have you as part of the Jmix community, and we look forward to seeing what you, your students, and the eNexum Innovation team build next.

Jmix is an open-source platform for building enterprise applications in Java

Recommended Reading