No description
  • JavaScript 52%
  • PHP 37.3%
  • Twig 6.4%
  • CSS 3.8%
  • Shell 0.3%
  • Other 0.2%
Find a file
notkaramel 33652594f5 Fix: entrypoint must not pre-create settings.yaml (broke setup wizard)
Typemill treats the existence of settings/settings.yaml as 'setup
completed': Settings::loadSettings() drops the setup flag as soon as any
user settings file exists, so system.php never registers the /tm/setup
routes. Because init-server created settings.yaml (with only the proxy
flags) on first boot, a fresh container skipped straight to /tm/login
with zero user accounts - no admin could ever be created - and the site
author stayed at the defaults.yaml fallback 'Unknown' since setup is
what writes the real author into settings.yaml.

Move the proxy flags into the system defaults.yaml instead (merged the
same way, overridable by user settings) and let only the setup wizard
create settings.yaml. Also self-heal volumes broken by earlier images:
if settings.yaml exists but no user account does, move it aside so the
setup wizard comes back.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-10 14:04:43 -04:00
.github/workflows Add latest for workflow 2025-04-24 16:28:15 +02:00
.opencode Finish Ask The Docs and opencode setup 2026-05-27 15:58:58 +02:00
ai/docs Finish release 2026-06-13 14:31:38 +02:00
cache empty doc-index 2026-06-08 21:05:05 +02:00
content add files 2026-06-11 21:10:33 +02:00
docker-utils Fix: entrypoint must not pre-create settings.yaml (broke setup wizard) 2026-07-10 14:04:43 -04:00
media Fix image errors and save directly, kixote clear multilang 2026-02-05 21:22:58 +01:00
plugins/demo Finish 2.22.0 2026-04-19 14:00:37 +02:00
settings Remove kixote settings 2025-05-18 12:21:35 +02:00
system Fix: Mixed content behind http/https 2026-07-10 13:57:40 -04:00
themes/cyanine Increase img alt caption length, add option in cyanine to remove folder navi 2026-01-11 05:48:37 +01:00
.dockerignore Version 2.1.1 Remove standard ports from uri and add docker image 2024-01-16 21:46:07 +01:00
.gitignore Finish release 2026-06-13 14:31:38 +02:00
.htaccess changes to v2.19.4 2025-12-02 20:34:35 +01:00
composer.json Fix gregwar version and update dependencies 2026-06-14 18:39:14 +02:00
composer.lock Fix gregwar version and update dependencies 2026-06-14 18:39:14 +02:00
docker-compose.yml Fix: Nginx wrap configuration for CSP related issues; add fix for mixed content behind a proxy 2026-07-10 13:23:56 -04:00
Dockerfile Fix: Nginx wrap configuration for CSP related issues; add fix for mixed content behind a proxy 2026-07-10 13:23:56 -04:00
index.php V2 meta ready 2023-06-27 14:54:28 +02:00
licence.md Version 1.2.16 2019-10-20 12:09:45 +02:00
opencode.json Finish Ask The Docs and opencode setup 2026-05-27 15:58:58 +02:00
package-lock.json Update composer and js libraries 2026-05-27 16:17:18 +02:00
package.json Update composer and js libraries 2026-05-27 16:17:18 +02:00
readme.md Fixed php version to 8.1 in readme 2025-08-11 19:50:28 +02:00
tailwind.config.js RC2: Fix frontend navigation, darkmode, and more 2023-10-12 19:17:59 +02:00
typemill-editor.webp 2.18.3 finish and add new image 2025-07-22 21:15:40 +02:00

Typemill

Typemill is an open-source flat-file CMS for creating websites and eBooks with markdown files. Its commonly used for informational websites such as user manuals, documentation, knowledge bases, wikis, and handbooks.

Learn more at typemill.net, check the demo installation, or get started with the starter guide.

Typemill Screenshot

Key Features

  • Flat-file no database required.
  • Modern stack built with Slim PHP, Vue.js, and Tailwind CSS.
  • Lightweight only 2MB when gzipped.
  • Author-friendly visual block editor and raw markdown editor.
  • Developer-friendly Twig templates, Symfony event dispatcher, YAML definitions.
  • Flexible extend with plugins, themes, and custom eBook layouts.
  • Single Source Publishing convert content to PDF and ePUB with the eBook plugin.

Requirements

To run Typemill, you need the following:

  • Web server (Apache or Nginx).
  • PHP 8.1 or higher.
  • Standard PHP libraries like mod_rewrite, gd, mbstring, fileinfo, session, iconv, and more.

Installation

Check installation guides for different setups at docs.typemill.net

Using ZIP File and FTP

  1. Download and unpack the latest zip-version from the Typemill Website.
  2. Upload all files to your server.
  3. Check the file-permissions (see below).
  4. Visit your new website at www.your-typemill-website.com/tm/setup.
  5. Create an admin user.
  6. Log in and start writing.

Using GitHub and Composer

Clone this repository:

git clone https://github.com/typemill/typemill.git

Run Composer to install the required libraries:

composer update

Using Docker

Use the official image from DockerHub or read the description on docs.typemill.net

Folder Permissions

Ensure that the following folders are writable:

  • /cache
  • /content
  • /data
  • /media
  • /settings

Security Issues

If you discover a potential security issue related to Typemill, please report it via email to security@typemill.net, and we'll address it promptly.

License

Typemill is an open-source project published under the MIT License. Plugins, themes, and services are published under MIT and commercial licenses.