mrkeyoor.com_
Mon 26 Oct 01:08 UTC
Self-Hostedevaluationupdated 23 Oct 2026

halo review

Halo is a Java-based website publishing system for blogs, knowledge bases and company sites, with themes and plugins. It has a community edition and separate paid editions. The supplied README and Docker deployment guide are Chinese; official English documentation coverage was not verified.

+68stars / 7d
Verdict

Halo's UI installed in 17 seconds and built in 34 seconds at commit de2a6c3. That supports evaluating its frontend contribution path; server operation remains unassessed. Shortlist Halo if its edition boundaries fit your requirements and your team can work with Chinese documentation and own the database. Before committing site content, verify a backup restore on the intended deployment.

We ran it

Lab card: what happened when we ran haloScreenshot of halo (www.halo.run)
Install✓ · 17s1293 packages · 894 MB
Build✓ · 34s
Testsn/ano test script
Repo3319 files~307,862 lines of source · 18.2 MB · 5 CI workflows

Answers from our run

Does halo build from source?

Dependencies installed in 17 seconds (1293 packages), and the build succeeded in 34 seconds. We cloned commit de2a6c3 into a clean Debian container with 3 CPUs and no project-specific setup.

Does halo have tests you can run?

Not through a standard command: the project exposes no test script or target that our harness could run.

Who should not use halo?

English-only operators who require verified English deployment and recovery instructions before adoption.

What are the alternatives to halo?

Ghost, Hugo. Halo's UI installed in 17 seconds and built in 34 seconds at commit de2a6c3.

SetupN/AThe lab installed and built the UI but did not reproduce a complete Java server deployment or configure its database.
Docs3/53/5 for the inspected operator documentation: persistence, database choices and edition differences are explained, while official English coverage remains unverified. This is a documentation judgment, not a deployment result.
CommunityN/ARecent pushes and pull-request updates establish activity, but support responsiveness and community adoption were not assessed.
MaturityN/AThe UI build succeeded, but tests were skipped and server operation, upgrades and database recovery were not assessed.

Who it’s for

Developers evaluating a publishing system with themes and plugins.
Site operators who can work with Chinese deployment instructions and manage persistent storage and a database.
UI contributors assessing the pnpm workspace under ui/, where the supplied sandbox install and build succeeded.

Who it’s NOT for

English-only operators who require verified English deployment and recovery instructions before adoption.
Teams expecting paid features in the community image: the Docker guide says that image excludes paid features and cannot activate a license.
Operators intending to leave the default H2 database arrangement unchanged in production without addressing the guide's warning.
Merchants assuming worldwide payment compatibility: the README describes the commerce edition as tailored to Chinese merchants, including WeChat Pay and Alipay.

Setup reality

At commit de2a6c3, the October 16, 2026 sandbox run installed 1,293 UI dependencies in 17 seconds, recorded 894 MB on disk and built successfully in 34 seconds. Tests were skipped because the exercised UI path had no test script or target. This was the pnpm project under ui/, not a Java server deployment.

The documented Docker trial uses persistent storage and defaults to H2. The maintainers discourage H2 in production because incorrect operation can damage data files, and recommend Docker Compose for deployment with other databases. Public access also requires the external URL and access configuration.

The recorded sandbox had 3 CPUs and 8 GB RAM. Its lab-node:22 image label does not establish actual runtime or operating-system versions. Server startup, database recovery and production capacity were not assessed.

Choose the edition before evaluating Halo

Halo is a Java-based publishing system whose README describes blogs, knowledge bases, company sites and online stores. Its community edition is free and GPLv3 licensed, with themes and plugins; professional and commerce editions add paid capabilities. A team evaluating Halo should establish which edition contains the features it needs before planning deployment.

Halo belongs on a technical site owner's shortlist when the team can work with Chinese documentation and take responsibility for storage, database configuration and recovery. An English-only team that needs verified English operating instructions should resolve that requirement before adoption. Official English documentation coverage was not verified from the supplied sources.

What happened when we ran it

Our Halo UI build succeeded in 34 seconds. The October 16, 2026 sandbox run used commit de2a6c3 and installed 1,293 dependencies in 17 seconds, with 894 MB recorded on disk. The checkout contained 3,319 files, approximately 307,862 source lines and 18.2 MB before installation. These figures describe the pnpm development project under ui/, not a deployed publishing server's footprint.

Tests were skipped because the exercised UI path had no test script or target. The scan recorded five CI workflow files and monorepo workspaces, but no Dockerfile or tests directory. Those are scoped scan findings, not evidence that every Halo component lacks tests or container packaging. The README documents a published Docker image.

The sandbox configuration recorded 3 CPUs, 8 GB RAM and the image label lab-node:22. That label does not verify actual runtime or operating-system versions. The successful UI build does not establish Java server startup, editor behavior, database recovery or production capacity. None of those outcomes was assessed in this run.

The default Docker database comes with a production warning

The Docker deployment guide presents its default H2 route for trials and testing. The maintainers discourage H2 in production because incorrect operation can damage data files. For other databases, the guide recommends Docker Compose and marks PostgreSQL as recommended in its database table.

The documented container example maps port 8090 and mounts the working directory at /root/.halo2. The guide lists database connection settings and credentials, requires the actual external URL for public access, and recommends configuring reverse proxy and domain resolution before initialization. These are deployment decisions the UI build did not exercise.

Use the trial to inspect Halo, then choose the database and storage arrangement before adding content you need to keep. A useful acceptance exercise is to publish a disposable article with an attachment, back up the installation and restore it into a separate environment. This is a proposed check, not a result from the supplied lab run.

Paid features and documentation language affect fit

The community image excludes paid features and cannot activate a license. The Docker guide distinguishes it from the paid image, which covers the professional and commerce editions. Community deployment skips the license activation step.

The README lists mobile content management and phone-number verification under the professional edition. It describes the commerce edition as tailored to Chinese merchants, including WeChat Pay and Alipay. Merchants elsewhere should verify their required payment methods before choosing it; the supplied material does not establish worldwide payment compatibility.

The inspected README and Docker guide are Chinese. Official English documentation coverage was not verified. An English-speaking operator should try answering a concrete database, upgrade or recovery question with the available documentation before committing the team to Halo.

The documentation score is 3/5: the inspected guide explains persistence, database choices and edition differences, while English coverage remains unverified. This rating concerns the operator material supplied here. Setup ease and production maturity remain unassessed because the lab did not run a complete server deployment or recovery exercise.

Repository activity does not establish support quality

GitHub recorded Halo's last push on October 23, 2026, and listed 105 open issues and pull requests. The supplied activity feed contains pull-request updates dated October 23, 2026. These observations establish recent repository activity, but neither the combined open count nor the update dates measure support responsiveness or production reliability.

Consider Ghost or Hugo for a different publishing workflow

Ghost describes its scope as publishing, memberships, subscriptions and newsletters. Consider Ghost when those publication and subscriber functions are your main requirements. This recommendation follows its stated scope; the supplied lab did not compare Ghost and Halo in operation.

Hugo is a static site generator. Its README describes building a site and deploying it to a host, including through automated builds. Consider Hugo when a static publishing workflow meets your needs and you prefer that workflow to operating Halo's application and database. No comparative performance result is available here.

If Halo fits your requirements, choose the edition and database arrangement, then complete the article-and-attachment restore exercise on your intended deployment.

Alternatives

ProjectWhat it isPick it when
Ghost gh↗Publishing software focused on memberships, subscriptions and newsletters.Consider Ghost when publishing and subscriber functions are your main requirements; this is a scope recommendation, not a comparative test result.
Hugo gh↗A static site generator.Consider Hugo when a static publishing workflow meets your needs and you prefer it to operating Halo's application and database.

What people are saying

  1. [producthunt] Halo

Sources

  1. Halo README
  2. Halo Docker deployment guide
  3. Halo repository facts
  4. Halo recent issue and PR activity
  5. Ghost repository
  6. Hugo repository

More self-hosted reviews

umami · mathua · redlib · logto · bloom · Mailu · the whole board →