Open-source project
Sigil-Ebook/Sigil avatar
Sigil-Ebook/Sigil

Sigil: a Qt6 EPUB editor that routes its support questions to a forum

Sigil is a multi-platform EPUB ebook editor

7,054 stars631 forksC++GPL-3.0

At a glance

What is it?
A C++ ebook editor for ePub 2 and ePub 3, built on Qt6 and QtWebEngine, with a Windows installer and a Linux AppImage. Source builds cover every platform, and the issue tracker is closed to feature ideas.
Who is it for?
Take Sigil if you edit ePub 2 and ePub 3 by hand and want validation, reports and a bundled Python for plugins, and you are willing to build from source if neither the Windows installer nor the Linux AppImage fits. Pass if you need a book library, cover fetching or a catalogue integration, because none of those appear in the feature list.
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 2 days ago.
What is it written in?
Mainly C++, according to GitHub's language statistics.

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

From daily snapshots

Star history

  • Sigil-Ebook/Sigil7,054 ★ · +90
Star history
Repository2026-09-232026-11-14
Sigil-Ebook/Sigil7k7.1k

90 Stars in the last 52 days, measured from the daily GitHub snapshot. Compare with other projects

Editorial analysis

The issue tracker is closed to feature requests by policy

This is stated at the top of the project documentation rather than buried, and it changes where your time goes. The issue tracker is not for questions and not for suggesting new features. Both of the main developers monitor the Sigil Forum on mobileread.com, and the instruction is to direct questions and feature requests there so that other interested users can help or comment. Feature requests opened on the issue tracker will be closed.

What is left for the tracker is discussion around issues with the code and actual bug tracking. That is a narrower channel than the one most contributors assume, and it means a crash report is welcome while a proposal is not. Two other routes exist beside it: the Sigil Plugin Index, hosted on mobileread.com, catalogues plugins separately from the main repository, and translations run through a Transifex project rather than through pull requests.

Qt6.4 is the build floor, and Qt5 needs an older Sigil

Starting with Sigil 2.3.0, Qt6.4 is the minimum requirement to build, so the Qt5 path means using an older release of Sigil rather than an older compiler setup. On newer Linux systems, named examples being Ubuntu 23.04 and its derivatives, Arch Linux, and Debian Trixie or Unstable, you should be able to compile Sigil using repo-provided dependencies, and docs/Building_on_Linux.md goes out of its way to give both Debian-based and Arch-based package names. Older distributions whose repositories do not carry Qt6.4.0 or higher are pointed at a separate document for the Qt5 build.

There is a container route as well, and the repository ships a compose file for it:

yaml
docker compose run --rm build_appimage

The service it calls is named build_appimage, runs on ubuntu:22.04, mounts the repository at /reporoot, and hands control to .github/workflows/build_sigil_appimage.sh with restart set to no. If your distribution's own Sigil package has fallen behind, the maintainers now ship an up-to-date AppImage in the releases, which is the shortest route on Linux.

macOS dropped pure XCode builds and embeds a relocatable Python

Building with XCode alone is no longer supported on macOS. The documented route is cmake 3.X together with the XCode CommandLineTools, which is a different shape of build from what a Mac developer may have done previously.

The complication is the interpreter. Sigil embeds Python 3.14.2, and a relocatable build of that interpreter has to exist on the machine before Sigil itself will build, which is what docs/Building_A_Relocatable_Python_3.14_Framework_on_MacOSX.txt covers. Official releases use Qt6.10.2 plus local patches, documented separately in docs/Building_Qt6_From_Source_on_MacOSX.txt, and the build of Sigil proper is a third document, docs/Building_Sigil_On_MacOSX_With_Qt6.txt. Three separate documents for one platform is the honest shape of a Qt application with an embedded language runtime.

Windows is the only platform with a first-party installer

Sigil provides a Windows installer for x64 and states that it works on Windows 10 (1809) or newer. That version floor matters, because anything older is outside what the project claims to support. Beyond the official installer, the current versions are typically available through winget, Chocolatey and Npackd, with winget and Chocolatey listed as Windows 10 or newer.

The reason those package managers are called out is a specific nuisance they remove: installing through one of them avoids the Microsoft warnings about unknown publishers that a direct installer download produces. For anyone who builds Sigil on Windows rather than installing it, the route is docs/Building_Sigil_on_Windows_with_Qt6.md. The repository also carries windownloadqt.cmake and winvirtpy.cmake at the top level.

Bundle licensing is a second question behind the GPLv3

Sigil itself is licensed under the GPLv3, with the complete license in COPYING.txt. The document is explicit that libraries and components Sigil uses and bundles may be under a different license that is still compatible with the GPLv3, and that the license for each one lives with that component under the 3rdparty directory. The named set includes Hunspell 1.7.2, MiniZip version 1.1 with some security changes, the Perl-compatible Regular Expression Library 2 at pcre2 version 10.46, zlib 1.3.1, jQuery-3.6.4, jQuery.ScrollTo-2.1.2, and MathJax.js at version 3.2.X with a required minimum of 3.2.2.

Three more are listed as specifically modified for use inside Sigil: Beautiful Soup 4, whose launcher sits in src/Resource_Files/plugin_launchers/sigil_bs4; Sigil-gumbo, based on Google's Gumbo Parser and kept in internal/gumbo; and lexbor, the css and core module, taken from the lexbor repository at current master. That last one matters for anyone auditing a build: current master is a moving target, so the third-party versions in a checkout are not pinned by anything in the licensing text.

Python plugins and the modified bs4 launcher are the extension surface

Plugins are the way Sigil grows beyond its own menus, and they are written in Python 3 against the interpreter Sigil embeds. That is why the bundled and modified third-party list matters more here than in a typical desktop application: Beautiful Soup 4 is carried as a modified copy with its own launcher directory, and Sigil-gumbo, based on Google's Gumbo Parser, is kept as a modified copy in internal/gumbo. jQuery and jQuery.ScrollTo are shipped under src/Resource_Files/javascript, and MathJax.js sits in src/Resource_Files/polyfills, where 3.2.2 is stated as the minimum rather than the version in use.

The practical consequence is that a plugin written against one Sigil build can meet a different bundled library set in another, and there is no version lock described for the Python side. The Sigil Plugin Index is hosted separately on mobileread.com.

The feature list is about validating a book, not cataloguing one

The documented capabilities read like a validation and inspection tool: generate a table of contents, edit metadata, run reports, detect changes, validate EPUB, CSS and XHTML, open the preview's inspector, customise your layout, toggle dark mode, run Python 3 plugins, and work through the PageEdit visual XHTML editor. The editor itself is named as the interface everything else serves. Both ePub 2 and ePub 3 are supported, which is the other fact that shapes what the tool is for.

What is not on that list is as informative as what is. There is no book library, no cover lookup, no store integration, and no cataloguing view. Sigil is positioned for someone who already has the files and wants them correct at the markup level, not for someone building a reading collection. If you came from a library-oriented tool, that gap is structural rather than a missing feature, and it is not going to be filled by the components listed above.

Release numbering, ChangeLog.txt and the repology comparison

The project publishes tagged releases rather than leaving you to read commits: 2.8.1 on 2026-07-18, 2.8.0 on 2026-06-07, and 2.7.6 on 2026-03-19. The default branch is master, and the repository root carries ChangeLog.txt alongside version.xml, so the version string that a build embeds and the running change history are both in the tree rather than in release notes alone.

For a cross-platform project, the split between what upstream tags and what your package manager ships is the thing to watch. The README defers to repology.org for package versions across distributions, which is where you can see whether the AppImage, the Arch package or a Debian package has moved ahead of the last tag. The build machinery sits alongside it in ci_scripts/ and cmake_extras/, with CMakeLists.txt at the root, so the same commit produces different artefacts per platform and the tag number alone will not tell you which one you received.

Editorial conclusion

Take Sigil if you edit ePub 2 and ePub 3 by hand and want validation, reports and a bundled Python for plugins, and you are willing to build from source if neither the Windows installer nor the Linux AppImage fits. Pass if you need a book library, cover fetching or a catalogue integration, because none of those appear in the feature list. Before you start, read the bundled component licenses under 3rdparty, and expect to ask questions on the MobileRead forum rather than the issue tracker.

Frequently asked questions

Is Sigil free to use for editing EPUB files?

Yes. Sigil is described as a free, open source, multi-platform ebook editor licensed under the GPLv3, with the complete license in COPYING.txt. The bundled libraries and components may carry different but GPLv3-compatible licenses, recorded with each component under the 3rdparty directory.

How do I install Sigil on Windows or on Linux?

On Windows an official x64 installer covers Windows 10 (1809) or newer, and winget, Chocolatey and Npackd also carry the project, which removes the unknown publisher warning. On Linux the README points to a maintainer-built AppImage in the releases when the distribution package lags, and to the build documents in docs/ otherwise.

Can I file a Sigil feature request on the issue tracker?

No. The project asks that questions and feature requests go to the Sigil Forum on mobileread.com, where both main developers monitor, and states that feature requests opened on the issue tracker will be closed. The tracker is for discussion around issues with the code and for actual bug tracking.

Official sources

  1. Issues
  2. License: GPL-3.0
  3. README
  4. Releases
  5. Sigil-Ebook/Sigil 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/sigil-ebook-sigil.svg)](https://hysenlabs.com/projects/sigil-ebook-sigil)

Star history chart for your README

markdown
[![Star history](https://hysenlabs.com/chart/sigil-ebook-sigil.svg)](https://hysenlabs.com/projects/sigil-ebook-sigil)

Was this useful?