Open-source project
seatonjiang/kratos avatar
seatonjiang/kratos

seatonjiang/kratos: a WordPress theme built around reading, not around page builders

WordPress theme that focus on reading experience

3,327 stars596 forksPHPGPL-3.0

At a glance

What is it?
Kratos is a GPL-3.0 WordPress theme from seatonjiang aimed at long-form reading, installed the ordinary way through Appearance > Themes. The trade-off is that it is a classic PHP theme with no block-editor or page-builder story in the README.
Who is it for?
Kratos suits someone running a text-heavy WordPress site who wants a classic PHP theme and is willing to accept that the README covers installation and nothing else. It is the wrong choice if your site is built on the block editor or a page builder, because the documentation says nothing about either.
Can I use it commercially?
Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
Is it still maintained?
Yes. The repository last received commits 80 days ago.
What is it written in?
Mainly PHP, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What seatonjiang/kratos is for, and who should care

Kratos is a WordPress theme whose stated purpose is reading experience. That is the whole positioning: not a site builder, not a business template, not a landing-page kit. The repository describes it as a "WordPress theme that focus on reading experience," and the file list backs that up. There is a single.php for posts, a page.php and a page-full.php for pages, comments.php for the comment thread, and a 404.php. Those are the files a theme needs when the job is to render one article well.

The audience is therefore narrow and specific. If you publish long posts, essays, documentation, or a personal blog on WordPress and you want the theme to get out of the way, this is the category of project you would look at. If you are building a storefront, a membership site, or anything where the theme is expected to ship blocks and patterns, Kratos is not aimed at you and the README does not pretend otherwise.

One thing worth noting before you go further: the name collides badly with search traffic. Searching for Kratos returns God of War characters, Greek mythology, and a defense contractor. None of that has anything to do with this theme. If you are trying to find discussion of the project, search for the repository path rather than the bare name.

The mechanism: classic PHP templates, not blocks

The architecture visible in the repository is the traditional WordPress theme model. header.php, footer.php, index.php, single.php, page.php, comments.php, and 404.php sit at the top level, with a functions.php that wires them together and an inc/ directory for the theme's own PHP. A style.css at the root is the theme stylesheet WordPress reads for the theme header. There is a pages/ directory, which in this layout usually holds page templates, and an assets/ directory holding images and front-end files.

That structure implies a specific data flow. WordPress routes a request, picks a template from the hierarchy, and the template pulls in header.php and footer.php around the post content. The theme's own logic lives in inc/ and functions.php. Nothing in the repository listing suggests a block-based theme, because a block theme would carry a theme.json and an html-based templates directory instead of this set of PHP files. The README does not document the inc/ contents, so what each file there does is something you would read for yourself.

The repository also carries a crowdin.yml alongside a languages/ directory, which indicates translations are managed through Crowdin and shipped as language files. If your site is not in English or Simplified Chinese, that is the pipeline you would be contributing to rather than something the theme handles for you.

Installing kratos and getting a first post to render

The README gives a five-step install that runs entirely through the WordPress admin, with no Composer, no npm, and no build step. Step one is to download the theme's .zip file. The remaining steps are the standard upload flow.

From the WordPress administration area, go to Appearance > Themes and click Add New. The Add New screen has an Upload Theme option; open it, click Choose File, select the zip you downloaded, and click Install Now. After that the theme appears in the theme catalog under the Appearance tab, where you click its Activate link.

There is no CLI path documented in the README. If you would rather install from a shell, the README does not describe one, so the admin upload is the supported route as far as the documentation goes.

Before you activate, check the requirement in the README badges: PHP >8.0 and WordPress tested up to v6.8. If your host runs PHP 7.x, the theme is outside its stated range and you should not expect it to behave. Once activated, publish or open an existing post and confirm it renders through single.php with the comment thread intact, since comments.php is part of the template set.

What the documentation does not cover

The README is short, and the gaps matter more than the length. It documents installation and contribution and then stops. There is no section on the theme options, even though assets/img/options/about.png is the image the README leads with, which strongly implies an options screen exists. What those options are, where they live, and what they change is not stated.

There is no rollback guidance. If an update breaks your layout, the README does not tell you how to revert, and it does not describe a child theme workflow. For a theme you would customize, that absence is a real cost: without a documented child theme approach, edits to the PHP templates are overwritten on the next release.

There is also no compatibility statement about the block editor or page builders. The file list points to classic PHP templates, and the README never mentions blocks, so if your content depends on block patterns or a builder's shortcodes, you are testing an unstated assumption rather than following documented support. None of this makes the theme bad. It makes the documentation thin, and you should price that in before adopting.

Maintenance, releases, and the licence you inherit

The repository is not archived, and the most recent push was on 2026-07-12, which is also the date of the v4.3.4 release. The release history before that is sparse: v4.3.3 landed on 2025-11-17 and v4.3.2 on 2025-02-08. Two releases in roughly a year and a half, then a third. That is a slow cadence, and it tells you something practical about upgrade cost: you are not going to be chasing frequent breaking changes, but you are also not going to get quick fixes for a problem you hit between releases.

For a WordPress theme, the update surface is usually the theme files themselves plus whatever WordPress core changes underneath. Because the templates are plain PHP, a core change that alters a template function can affect the theme without any theme release at all. The README's WordPress v6.8 tested badge is the only compatibility signal available, and it is a snapshot, not a guarantee about later versions.

The licence is GPL-3.0, stated in the README and present as a LICENSE file at the root. GPL-3.0 is the same family WordPress itself uses, so distributing a modified version carries the usual copyleft obligations. If you fork the theme and ship it, or bundle it into a product you distribute, the licence terms apply to what you distribute. That is a description of the licence, not legal advice; if your situation is commercial, read the LICENSE file and get proper counsel.

An alternative approach: a block theme instead

The real alternative is not another reading-focused PHP theme. It is the block theme model that WordPress has been moving toward. A block theme replaces the PHP template files with an html templates directory and a theme.json file that defines typography, spacing, and colour presets. Instead of editing single.php to change how a post renders, you edit a template in the site editor and the change persists through the database rather than through files.

The difference in approach matters at exactly the point where Kratos is thin. With a block theme, customization does not require a child theme to survive updates, because your changes are stored as user content rather than as modified template files. With Kratos, the repository layout suggests the opposite: header.php, footer.php, and single.php are the surface you would edit, and edits there are the kind that get overwritten.

What you give up by going block-based is the thing Kratos is built around. A hand-written PHP template set is a fixed, opinionated reading layout that the author has already tuned. A block theme hands that tuning to you. If you want the theme to decide and you want to write, Kratos is the more direct answer. If you want to decide, the block model is the one with a documented path for that.

Editorial conclusion

Kratos suits someone running a text-heavy WordPress site who wants a classic PHP theme and is willing to accept that the README covers installation and nothing else. It is the wrong choice if your site is built on the block editor or a page builder, because the documentation says nothing about either. Before adopting it, verify the PHP 8.0 requirement against your host, check that the theme's language files cover your locale, and read inc/ and functions.php to see what the theme registers on activation.

Frequently asked questions

How do I install the Kratos WordPress theme?

Download the theme's .zip file, then in WordPress go to Appearance > Themes, click Add New, choose Upload Theme, select the zip, and click Install Now. After installation, activate it from the theme catalog under the Appearance tab.

What PHP and WordPress versions does seatonjiang/kratos require?

The README badges state PHP >8.0 and WordPress tested up to v6.8. Those are the only version figures the documentation gives.

Is seatonjiang/kratos still maintained?

The repository is not archived, and the last push was on 2026-07-12, which is also the v4.3.4 release date. The two releases before it were v4.3.3 on 2025-11-17 and v4.3.2 on 2025-02-08, so releases are infrequent.

What licence does Kratos use?

The project is released under the GNU General Public License v3.0, stated in the README with a LICENSE file at the repository root.

Does Kratos support translations?

The repository contains a languages/ directory and a crowdin.yml, which indicates translations are managed through Crowdin and shipped as language files. The README does not list which locales are available.

Official sources

  1. Issues
  2. License: GPL-3.0
  3. README
  4. Releases
  5. seatonjiang/kratos on GitHub
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/seatonjiang-kratos.svg)](https://hysenlabs.com/projects/seatonjiang-kratos)