DEV.co
Open-Source CMS · dromara

ujcms

UJCMS is an open-source Java-based content management system built on Spring Boot, MyBatis, and Vue 3, supporting both traditional template-based and headless API-driven architectures. It provides automatic database schema management, a modern admin UI, and flexible deployment options (JAR, WAR, or direct Tomcat).

Source: GitHub — github.com/dromara/ujcms
656
GitHub stars
110
Forks
Java
Primary language
GPL-3.0
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositorydromara/ujcms
Ownerdromara
Primary languageJava
LicenseGPL-3.0 — OSI-approved
Stars656
Forks110
Open issues12
Latest releaseUnknown
Last updated2026-06-30
Sourcehttps://github.com/dromara/ujcms

What ujcms is

Enterprise CMS written in Java 17/21 with Spring Boot, Spring Security, MyBatis ORM, Lucene search, FreeMarker templating, and Vue 3 + Element Plus frontend. Features dual-mode operation: server-side FreeMarker templates or React/Vue + REST API; uses Liquibase for schema versioning and Flowable for workflows.

Quickstart

Get the ujcms source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/dromara/ujcms.gitcd ujcms# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Multi-language or multi-site content portals

UJCMS supports flexible template structures and role-based access control via Spring Security, making it suitable for organizations managing content across multiple sites or language variants with centralized governance.

Legacy Java monolith modernization

Organizations running older Spring applications can integrate UJCMS as a content layer without complete architectural rewrites, leveraging existing Java/MySQL infrastructure and team expertise.

Headless CMS for mobile-first or SPA projects

The REST API mode and Vue 3 example app enable modern frontend frameworks (React, Angular, Vue) to consume content, suitable for omnichannel deployments or progressive decoupling from server-side rendering.

Implementation considerations

  • Requires JDK 17 or 21 and MySQL 8.0.20+ (or 5.7.22+); test specific versions in sandbox first to avoid startup lock and key-length errors documented in README.
  • Do not deploy in paths with Chinese characters or spaces; use context path configuration in admin UI if multi-tenant or non-root deployments are required.
  • Frontend build (Node 22.12+, pnpm) and backend Maven compilation must complete before startup; allocate time for first-run schema auto-creation and Liquibase lock management.
  • Change default admin credentials (admin/password) immediately after initial login; review Spring Security and database user permissions in application.yaml.
  • Monitor Liquibase and Flowable schema lock tables (databasechangeloglock, flw_ev_databasechangeloglock) during deployments; unclean shutdowns can cause startup hangs.

When to avoid it — and what to weigh

  • GPL-3.0 copyleft licensing is unacceptable — UJCMS requires GPL-3.0 compliance (source code disclosure) for distributed derivatives unless a commercial license is purchased. Closed-source products or SaaS resale require explicit evaluation with the vendor.
  • No budget for commercial licensing — If closed-source derivatives, proprietary integrations, or commercial redistribution are planned, budget and timeline for commercial license negotiation with the UJCMS team must be confirmed upfront.
  • Minimal Java/Spring Boot operational expertise in-house — Deployment, debugging, and customization require JDK 17/21, Maven, MySQL tuning, and Spring Boot knowledge. Teams without Java infrastructure should evaluate lighter alternatives or plan for staff training.
  • Mission-critical SLA with no vendor support contract — No formal SLA, paid support tier, or enterprise maintenance contract is evident. High-availability deployments should arrange custom support agreements or rely on internal team capacity.

License & commercial use

UJCMS is licensed under GPL-3.0 (GNU General Public License v3.0). The project offers a dual-license model: GPL-3.0 for open-source use (with source code disclosure obligations) and commercial licenses for closed-source or proprietary derivatives. GPL-3.0 is a strong copyleft license requiring any distributed modifications to also be released under GPL-3.0.

Commercial use is permitted under GPL-3.0 (running the software for profit is allowed) as long as source code remains disclosed. However, proprietary modifications, closed-source forks, or SaaS redistribution require negotiating a commercial license with the UJCMS team (contact via https://www.ujcms.com). Do not assume commercial use without reviewing the dual-license terms or obtaining explicit written permission.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationStrong
License clarityClear
Deployment complexityModerate
DEV.co fitGood
Assessment confidenceHigh
Security considerations

Project uses Spring Security for authentication/authorization, standard Java libraries, and MySQL for data storage. Default credentials (admin/password) must be changed immediately. No security audit report, vulnerability disclosure policy, or penetration test summary is evident in provided data. CAPTCHA generation relies on system fonts (FontConfig); ensure secure font libraries are patched. Database access controls and TLS/SSL configuration are administrator responsibility; verify encryption in transit and at rest for production deployments.

Alternatives to consider

Liferay DXP

Enterprise-grade Java portal with stronger vendor support and SLA options, but significantly higher licensing cost and operational overhead; best for large organizations with dedicated infrastructure teams.

Strapi (Node.js/GraphQL-first headless CMS)

Modern, cloud-native alternative with strong API-first design and flexible licensing (Apache 2.0 + commercial), easier deployment (Docker), but Java/Spring integration requires API bridging.

MODX (PHP-based CMS)

Lightweight, template-friendly alternative with lower operational overhead for small-to-mid teams, but different tech stack (PHP/MySQL) and smaller ecosystem than Spring-based solutions.

Software development agency

Build on ujcms with DEV.co software developers

Review the demo site, assess GPL-3.0 licensing fit, and consult commercial licensing terms if closed-source derivatives are planned. Contact the UJCMS vendor for SLA and support options.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

ujcms FAQ

Can we use UJCMS in a proprietary SaaS product without open-sourcing?
No, not under GPL-3.0 alone. You must purchase a commercial license from the UJCMS vendor (https://www.ujcms.com) to release derivatives as closed-source or SaaS. Failing to do so violates GPL-3.0 and exposes you to license compliance risk.
What happens if we fork UJCMS and modify it?
Under GPL-3.0, any distributed modifications must be released under GPL-3.0 with full source code. Internal modifications (not distributed) may be kept private. Always consult a lawyer if proprietary distribution is intended.
Is there a Windows-compatible deployment?
Yes, UJCMS runs on Windows for development and small deployments. However, be aware of MySQL lower_case_table_names gotchas; set it to 2 before initialization if you plan to migrate to Linux production later. JAR mode is simpler than WAR + Tomcat on Windows.
How mature is the REST API / headless mode?
The project mentions headless CMS support and Vue 3 examples, but detailed REST API documentation and SDK availability are Unknown from the provided data. Test the demo (https://demo.ujcms.com) and review official docs before committing to headless-only architecture.

Software development & web development with DEV.co

Adopting ujcms is usually one piece of a larger software development effort. As a software development agency, DEV.co provides software development services and web development expertise — pairing senior software developers and web developers with your team to design, build, and operate open-source cms software in production.

Evaluate UJCMS for Your CMS Needs

Review the demo site, assess GPL-3.0 licensing fit, and consult commercial licensing terms if closed-source derivatives are planned. Contact the UJCMS vendor for SLA and support options.