Frequently Asked Questions about Jmix
Jmix is an open-source Java platform for enterprise software development with local and public AI models. It combines low-code productivity, the control of traditional Java development, and AI capabilities. This helps teams deliver enterprise applications predictably while maintaining full control over architecture, security, and source code.
Jmix is a good fit for CRM and ERP systems, business process automation applications, internal enterprise portals, document management systems, industry-specific solutions and other data-rich applications with complex business logic. The platform also supports modern solutions with embedded AI assistants, enterprise AI agents and large language models used for data processing and process automation.
The framework is built on Spring Boot, the industry standard for enterprise Java web applications. This makes it easy to integrate third-party libraries and frameworks with minimal configuration, alongside the capabilities provided by Jmix.
Jmix Studio is a plugin for IntelliJ IDEA that supports the full development lifecycle: from creating and configuring a project to building the UI in a visual designer. It provides convenient navigation, autocompletion and code inspections tailored to Jmix projects.
Jmix helps development teams use AI to speed up delivery without compromising quality or system governance. It provides a ready-made architectural foundation for enterprise projects, so teams can focus on business requirements and bring applications to production faster.
The time it takes to become productive with Jmix depends on your Java experience. If you already know Java, most developers are productive within 1-2 weeks. If you're new to Java, it typically takes 1-2 months to reach the same level.
To help you get started faster, we recommend the following learning resources:
-
Quickstart Guide. A step-by-step introduction to building your first Jmix application.
-
Free Udemy courses:
-
Videos. Short video tutorials covering the fundamentals of Jmix and common development tasks.
-
Live Demo. Explore real enterprise Jmix applications with AI and UI Samples to see UI components in action and learn how to use them in your own projects.
-
Documentation. Comprehensive technical documentation with code examples, guides and reference materials maintained by the Jmix team.
-
Community Forum. Find answers to common questions, ask your own and get help from both the community and the Jmix team.
-
AI Assistant. Get help with Jmix concepts, code generation, troubleshooting and application design. Every Jmix user receives 100 AI requests per month, and additional usage is available on request.
Using these resources can help you become productive with Jmix more quickly.
If you would like to learn Jmix individually, contact our training team to join a Group Training session. If you have a development team that would like to learn Jmix together, contact our Community Manager to arrange a Team Training program tailored to your team.
Yes, we offer a variety of training options to help you learn Jmix effectively, from free online courses to instructor-led training programs.
We recommend starting with our free Udemy courses:
• Full Stack Java Web Development | Jmix in Action
These courses provide a solid foundation in Jmix, covering topics such as:
- Using Jmix Studio and its visual tools to accelerate the development of data models, database migration scripts, UI views and business logic.
- Learning the core open-source technologies behind Jmix, including Spring, Vaadin, JPA and Liquibase.
- Understanding application security, deployment and enterprise development best practices.
To deepen your expertise, we offer instructor-led training programs for both individuals and teams. You can explore all available options on our Training page.
Our training portfolio includes:
- Team Training for development teams within a single organisation.
- Online courses for individual developers.
- AI-focused training covering AI-assisted enterprise application development with Jmix.
If you would like to arrange training for your team or discuss the best learning path, please contact our Community Manager.
We provide both free and paid support listed below.
We offer a range of both free and paid support options to help you make the most of Jmix. Here’s an overview of what’s available:
Free Support:
Tutorial:
We provide a comprehensive 9-step tutorial that covers the essentials of Jmix development. This is a great starting point for anyone new to the platform.
Live Demo:
Explore live demos live demos of Jmix applications and UI samples. This allows you to see the UI components in action and learn how to use them effectively in your projects.
Documentation:
The Jmix platform team offers complete technical documentation, including detailed code examples. This is an invaluable resource for developers at any level.
Sample Projects:
Explore a variety of example projects on GitHub that demonstrate different use cases of Jmix. These samples provide practical insights and solutions that you can apply to your own projects.
UI Samples:
Discover a rich collection of Jmix UI components through the UI Samples application. The Cookbook section within the UI Samples app offers solutions to common UI-related challenges, helping you implement effective user interfaces in your applications.
Community Forum:
Our Community Forum is a free platform where you can find answers to popular questions or post your own queries. Community members and the Jmix platform team are active in the forum, providing support and sharing knowledge.
AI Assistant:
Jmix AI Assistant gets help with Jmix concepts, code generation, troubleshooting and application design. Every Jmix user receives 100 AI requests per month, and additional usage is available on request.
Paid Support:
In addition to our free resources, we offer paid support options for those who need more personalized or advanced assistance. Our paid support plans include direct access to Jmix experts, priority response times, and dedicated support for complex issues. These services are ideal for core clients or teams working on mission-critical projects who need guaranteed support and guidance.
By offering a combination of free and paid support, we ensure that all users, from beginners to experienced developers, have the resources they need to succeed with Jmix.
Jmix provides tools that allow developers to automate the migration process from a legacy system. The process begins by transforming the existing data structure into a new data model. After this transformation, developers can generate standard data processing screens and configure the security system. Business logic can then be migrated by writing it in Java and using the built-in business process designer with BPMN 2.0 notation.
Jmix includes several tools to streamline this migration process:
- Database Reverse-Engineering: Automatically convert your legacy database structure into a modern Jmix data model.
- Standard Screen Generation: Quickly create screens for data processing, which reduces manual coding efforts.
- Declarative Security Settings: Easily configure security measures to match your new application's needs.
- Built-in Business Process Designer: Migrate business logic using BPMN 2.0 notation, allowing for a smooth transition of processes.
These tools enable developers to automate much of the manual work involved in migrating legacy systems, significantly reducing the time and effort required for the migration.
To learn more about application modernization with Jmix, visit this page.
We also offer a free application modernization assessment. Our experts can evaluate your existing system, discuss migration options and provide recommendations tailored to your project. Leave a request on the page above to get started.
Yes, Jmix fully supports a microservices architecture. Developers can create new microservices within Jmix and easily publish them as Docker containers, ready for deployment to the production environment. Additionally, Jmix applications can interact seamlessly with other microservices within an enterprise's broader informational ecosystem, enabling efficient integration and communication across different services.
The Free plan provides everything you need to build fully functional applications with Jmix. However, it doesn't include the productivity features for large-scale projects or the advanced Add-ons available in the commercial tiers. We recommend using the Free plan in the following scenarios:
Small Projects:
If your project has a small data model, with no more than 10 entities and 10 access roles, the Free plan is well-suited to meet your needs. It allows you to develop and deploy your application without the need for additional tools or features.
Maintenance Stage:
If your project has completed its active development phase and is now in the support stage, with only occasional changes needed, the Free plan is a cost-effective way to maintain your application.
Experienced Developers:
If you have a mature skillset in Java and are comfortable investing more time into development and learning, the Free plan can be a great fit. It allows you to work on your projects without any upfront cost, though you may need to spend extra time on tasks that would be streamlined by the advanced features in the commercial plans.
For a detailed comparison of the Jmix subscription plans, you can refer to our Pricing page.
This comparison will help you decide whether the Free plan meets your needs or if you might benefit from upgrading to a commercial plan as your project grows.
In summary, while the Free plan is robust and capable, it’s best suited for smaller projects, maintenance tasks, or developers who are willing to invest more time into the development process.
Yes, the Jmix Sprint plan is available for free for small projects. You can use all the visual designers and data migration tools included in the plan for projects containing up to 10 entities and 10 roles.
In Jmix, an "entity" refers to a Java class that represents a table in a database, not an individual record within that table. The limitation of 10 entities in the free plan means that you can utilize the advanced features of Jmix Studio for projects that have up to 10 Java classes representing tables (JPA entities) or up to 10 simple Java objects (DTO entities).
This limitation specifically applies to the number of entities and roles you can define within your project. Importantly, there are no restrictions on the number of records in your database or on the number of UI views you can create and manage in your application. You have full flexibility in these areas, allowing you to build and deploy a fully functional application within the given entity and role limits.
The free Jmix Sprint plan is ideal for small-scale projects, prototypes, or developers who are just starting out and want to explore the capabilities of the Jmix framework without any upfront cost. It provides a powerful set of tools for developing modern web applications, even with these constraints, making it a valuable resource for small projects.
The Jmix license is a named license. This means it is associated with a specific developer profile and cannot be shared among multiple users. Each license is assigned to an individual developer, who must use their own profile to access the Jmix platform and its features.
A named license ensures that each developer has personalized access to the tools and resources provided by Jmix, allowing for a more tailored and secure development environment. This type of licensing is particularly beneficial for teams where individual accountability and secure access are important. It also helps in managing and tracking the usage of the software within an organization, ensuring that each developer has the necessary resources to work efficiently.
Yes, you can use your Jmix license on multiple workstations. Since the Jmix license is a named license, it is tied to your individual developer profile, allowing you to install and use Jmix Studio on different computers.
However, it's important to note that while you can switch between workstations, you cannot use the Jmix Studio simultaneously on multiple machines under the same license. The license allows you to work from different locations or devices, which is convenient if you have multiple work environments, such as a desktop at the office and a laptop for remote work.
If your Jmix subscription is about to expire and you have auto-renewal enabled, here's what will happen:
- Notification: You will receive an email reminder before the expiration date.
- Payment Attempt: We will attempt to charge your payment method for the next subscription period based on your subscription terms.
- Renewal: If the payment is successful, your subscription will be automatically renewed.
- If you prefer not to renew, you can disable the auto-renewal option in your profile settings.
If your subscription expires without renewal, your Jmix Studio will automatically switch to the Free plan mode, limiting your access to certain features available only in paid plans.
Yes. You can continue running an application that was built using Enterprise or BPM add-ons while your subscription was active. However, once your subscription expires, you are no longer allowed to develop or modify the application using those commercial add-ons.
To continue development with Enterprise or BPM add-ons, you will need to renew the corresponding subscription. Without an active subscription, you will no longer have access to these commercial features for new or ongoing development, although applications built previously will continue to run.
We encourage you to carefully consider your purchase decision, which is why we offer a trial period. The license fee is non-refundable, so it's important to buy the subscription only when you're certain you need it and will use it. If you're unsure, you can contact the community manager to request an extension of your trial period.
You need one named license key for each developer on your team. This means you will need as many license keys as there are developers involved in the project.
No. If your team is developing an application that uses commercial add-ons, every developer working on that project must have an active Enterprise or BPM subscription.
Sprint subscriptions cannot be combined with Enterprise or BPM subscriptions within the same project. Any developer who works with commercial add-ons must have the appropriate subscription to access and develop applications that use those features.
Yes, you can add additional developer seats to your active subscription. To do this, simply log in to your personal account and click the "Manage" button. From there, you can increase the number of developer seats as needed.
Yes, you can upgrade your subscription plan. To do this, go to your subscription page and select the plan you want to switch to. The upgrade will take effect immediately, giving you access to the additional features of the new plan.
Yes, we offer free Academic licenses to official educational institutions and their students. To obtain an Academic license, you can submit a request through our website. This license provides access to the full features of Jmix, allowing students and educators to use the platform for educational purposes at no cost.
Learn more here.
You can access the full text of the License Agreement on our website. It is available in the legal or documentation section, where you can review all the terms and conditions associated with using Jmix. This document outlines your rights and obligations as a user, so it's important to read it carefully.
Jmix does not impose a hard limit on the number of users, but the maximum number of concurrent users depends on the application's architecture and available server resources.
The standard Jmix UI maintains UI state both in the user's browser and on the server. As a result, the number of simultaneously connected users is primarily limited by the amount of available server memory, or the total memory available across a server cluster.
In a typical application, each active user session consumes around 5–10 MB of memory. For example, a server with 10 GB of available memory can usually support around 1,000 concurrent users. Some of the largest applications built with Jmix serve more than 10,000 users.
If your architecture uses a separate frontend application communicating with the Jmix backend through REST APIs, this limitation no longer applies. Because REST is stateless, the backend does not store UI state for each connected user. For public-facing applications with unpredictable traffic, a dedicated frontend combined with Jmix as the backend is a common and scalable architecture.
The platform is licensed on a per-developer basis. A license is required for each developer seat, meaning you will need a separate license for every developer working on the project. User seats, processes, environments, and use cases are not licensed and are not billed separately. This straightforward licensing model ensures that you only pay for the number of developers actively using the platform.
No, the number of end users does not affect Jmix license fees. You only pay for developer seats under the Jmix paid subscription plans. The fees are associated with the visual tools, templates, and add-ons that enhance your development team's productivity and enable faster delivery of digital products.
Jmix follows a per-developer subscription pricing model, which means you are not charged based on the number of end users (runtime pricing) or the value generated by your application (usage-based pricing). This model ensures that you have the freedom to deploy and use your Jmix applications without any restrictions tied to the number of end users.
We support both card payments and wire transfers. You can make a payment through the Store. If you prefer to receive a pro-forma invoice before making a payment, simply choose the "Offline payment" option during the checkout process.
A Company license is the standard licensing option for commercial and non-profit organizations. It allows the organization to purchase licenses that can be used by any single person within the company.
An Individual license is intended for private individuals who purchase the license with their own funds and solely for their personal use. These licenses cannot be purchased, refunded, or financed by companies. Please note that we regularly check the usage conditions to prevent any misuse or fraud.
Yes, we offer volume discounts for both the Jmix Enterprise and BPM subscription plans. The discount increases with the number of developer seats purchased. The larger your team, the less you pay per developer.
You can check the exact subscription prices for your team in the Store.
Yes, you can purchase a monthly subscription for the Jmix Sprint plan. However, for the Jmix Enterprise plan and for the Jmix BPM plan, only an annual subscription is available.
No, you do not need to pay to distribute the apps created with Jmix. You fully own the applications you build with Jmix and can distribute and use them at any scale without any additional charges.
The payback period for the platform depends on whether you compare it to traditional development methods or an existing Low Code/BPM solution. To assist you in evaluating this, we've created a smart ROI calculator . This tool estimates the financial profit you can achieve by using Jmix for your project, helping you understand how quickly the platform can repay its cost.
It's also important to note that there are scenarios where you don't need to pay for Jmix at all:
Free Development:
You can start developing your application using the Jmix Free Plan, which provides all the essential tools without any cost.
No Ongoing Fees After Development:
Once your application is developed, you do not need to continue paying for Jmix to run your application. You fully own the application and can use it without any ongoing subscription fees.
These options make Jmix a cost-effective solution, especially for projects with limited budgets or those looking to minimize long-term costs.
With Jmix, you can develop a wide range of line-of-business web applications, including AI-powered enterprise solutions. Jmix is specifically designed for building data-intensive applications with complex business logic and rich user interfaces, primarily for internal users within an organization.
To see these capabilities in action, explore our AI-powered B2B CRM demo application. It demonstrates how Jmix can be used to build modern enterprise software with embedded AI capabilities, enterprise architecture and production-ready Java technologies.
Examples of applications you can build with Jmix include:
- AI-powered business applications with embedded AI assistants and enterprise AI agents
- Business process automation applications
- CRM systems
- ERP systems
- Document management systems
- Industry-specific enterprise applications
- Admin portals and back-office systems
- Simple CRUD (Create, Read, Update, Delete) applications
These applications often involve managing dozens or even hundreds of interconnected entities across hundreds or thousands of screens. Jmix provides ready-to-use UI components, data management tools and enterprise architecture, allowing development teams to focus on business requirements instead of infrastructure.
Jmix also helps teams accelerate enterprise software development with AI. The platform provides a structured application foundation that enables developers and AI coding agents to generate production-ready code more predictably while maintaining control over architecture, security, code quality and business logic. It supports both local and cloud-based large language models, making it suitable for organizations with strict security and compliance requirements.
Learn more about AI-powered Java development with Jmix here.
Additionally, to understand the concepts and capabilities of Jmix, explore the "Principles" and "Key Features" sections in our documentation. These resources will provide you with valuable insights into the framework's design and functionality, helping you make informed decisions and use the platform more effectively.
The different Jmix subscription plans are designed to cater to the varying needs of development teams based on their skill sets, project specifications, and DevOps practices. Here's a breakdown of the key differences between the plans:
Jmix Community Plan:
A free open-source plan that includes the Jmix framework, Jmix Studio Community Edition, AI Assistant with a monthly request limit, documentation and community support. It is ideal for learning Jmix, building production applications and evaluating the platform.
Jmix Sprint Plan:
Designed for professional development teams building enterprise applications with open-source features. It includes Jmix Studio Professional, AI Assistant with a higher usage limit, priority support and access to productivity tools for faster development.
Jmix Enterprise Plan:
Includes everything in Sprint, plus access to Enterprise add-ons such as Reports, REST DataStore, LDAP integration, Audit, Data Tools and other advanced components for enterprise application development.
Jmix BPM Plan:
The most comprehensive plan. It includes all Enterprise features together with the BPM add-on for designing, executing and monitoring business processes using BPMN 2.0. This plan is intended for applications that require workflow and business process automation.
All subscription plans support distributed development teams through the built-in capabilities of IntelliJ IDEA, ensuring smooth collaboration across various locations.
For a detailed comparison, please refer to the Jmix plans comparison table plans comparison table on our website.
Yes, you can upgrade your plan at any time if the features of your current subscription no longer meet your needs. To do so, simply go to your profile and select the new plan that offers the additional features you require. You can also add more users to your subscription as needed. When upgrading, you will only be charged the difference in price between the current plan and the new plan.
You have several options for data storage. You can store your data in your self-hosted environment, giving you full control over your infrastructure. Alternatively, you can use a public cloud infrastructure if you prefer a managed service. For more detailed information, refer to the technical documentation.
Yes. Jmix is designed for developing enterprise Java applications and makes it easy to integrate AI capabilities into existing business processes and enterprise systems.
The platform supports both cloud-based and locally deployed large language models, allowing you to build applications with Retrieval-Augmented Generation (RAG), embedded AI assistants and enterprise AI agents that automate business tasks and improve user productivity.
Built on Spring Boot, Jmix provides a production-ready application architecture, built-in security features and seamless integration with the standard Java ecosystem. This enables development teams to accelerate AI-powered application development while maintaining full control over architecture, security, code quality and business logic.
Learn more about AI-powered Java development with Jmix here.
Yes. Jmix supports modern AI-assisted software development. Developers can use AI assistants, coding agents and other tools powered by large language models to accelerate application development.
Unlike approaches that rely solely on code generation, Jmix provides a ready-made architectural foundation for enterprise applications. This allows development teams to combine the speed of AI with full control over application architecture, security, business logic and code quality.
This approach is particularly valuable for enterprise software, where long-term maintainability, governance and predictable delivery are just as important as development speed. By providing a structured application framework, Jmix enables both developers and AI coding agents to produce more reliable, production-ready results.
Yes. Jmix enables you to build enterprise AI assistants and AI agents that work directly within your business applications.
These solutions can use large language models to search and analyse data, generate documents, automate business processes and interact with users using natural language. AI capabilities can be embedded into existing enterprise workflows rather than operating as standalone chatbots.
Because AI operates within the context of the application, it can use existing user roles, access permissions and business logic. This helps improve security, reduces the risk of unauthorized data access and delivers more predictable AI behaviour for enterprise applications.
Learn more about AI-powered Java development with Jmix here.
You can also explore our AI-powered B2B CRM demo application to see how AI is used in a real enterprise application built with Jmix.
Yes, Jmix is secure enough to build enterprise-grade applications. While some skeptics argue that open-source software is less secure than proprietary software, this is more of a theoretical concern. The key advantage of open-source code is that it can be reviewed by a much larger community, allowing for greater transparency and the potential to catch and address security vulnerabilities more effectively than in closed-source software.
Jmix, which is the successor of the CUBA Platform, has been developed as an open-source project since 2016. The platform team has consistently maintained a transparent product roadmap and managed issue tracking publicly on GitHub. This openness allows for deep code inspection, reducing the risk of hidden vulnerabilities.
While the maturity of the Jmix platform provides a solid foundation, security risks can never be entirely eliminated. Therefore, governance procedures are essential. The strong community behind Jmix, with over 25,000 members and more than 1,000 projects built on the platform, offers additional assurance of its reliability and security for building enterprise-grade applications.
Yes, Jmix supports secure user authentication through several options. In addition to the standard username-password authentication, you can integrate your Jmix application with an enterprise LDAP directory to synchronize end-user accounts. For secure external connections via API endpoints, Jmix also provides OAuth 2.0 authentication services, ensuring robust security for your application.
Yes, you fully own the applications built with Jmix. Since Jmix is distributed under the Apache 2.0 license, there are no significant limitations on the applications you create. Jmix Studio is only needed during development and is not required to run your application.
If your application uses any add-ons from the Enterprise or BPM plan, you can continue using the local copy of those add-ons even after your subscription expires.
Yes, Jmix uses third-party libraries. You can find the full list of libraries used by the latest Jmix and Add-ons releases here and the list of libraries used in Jmix Studio here.
All the libraries we use are distributed under open-source, non-restrictive licenses such as MIT, Apache 2.0, EPL, and LGPL. We do not use libraries with "copyleft" licenses like GPL.
Please note that some Add-ons provide integration with products that may have a commercial license, such as Google Maps or amCharts. It is your responsibility to ensure proper usage of these products in compliance with their licenses.
Additionally, any forks of third-party libraries used in Jmix, Add-ons, and Studio are distributed under the same license terms as the original library.