FocusWriter is a fullscreen editor that hides its own interface
Simple fullscreen word processor.
At a glance
- What is it?
- gottcode/focuswriter is a GPL-3.0 C++ word processor built around a hide-away interface that only appears when the mouse reaches the screen edge, with themes, live statistics, daily goals and a portable mode that keeps settings on a USB drive. It is deliberately narrow, and the README says little about what it leaves out.
- Who is it for?
- Adopt FocusWriter if what you want is a window that disappears while you write, with a theme that sets the font, colours and background, and if you value the portable Data folder that keeps settings and themes off the host computer. Do not adopt it as the place to store work you later need formatted, reviewed or shared, since the README documents themes, statistics, goals, multiple documents and spell checking and says nothing further about the feature set.
- 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 3 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 October 23, 2026, and from our analysis. They are not legal advice.
Editorial analysis
The interface is the product, and it hides
FocusWriter is described as a simple, distraction-free word processor, and the mechanism it uses to get out of the way is a hide-away interface. You access it by moving your mouse to the edges of the screen, so the program can keep a familiar look and feel while getting out of the way of the text. That single design decision explains most of the application. The window is fullscreen, the chrome is absent while you type, and the controls reappear only when you go looking for them. For a writer who finds a visible menu bar distracting, this is the feature. For a writer who wants styles, comments or a toolbar within reach, it is the cost, and the README does not pretend otherwise, since its list of what the program does mentions themes, statistics, daily goals, multiple open documents and spell checking and nothing more.
Themes set the font, the colours and the background image
The customisation story in FocusWriter is the theme, and the theme controls three things: the font, the colours, and the background image, which the README says is there to add ambiance. That is a narrower and more opinionated model than picking a colour scheme from a settings panel. The background image in particular is the part that changes the character of the room you are writing in, and it is why the themes live in a folder that can be copied between machines, which the portable mode section relies on. The themes are stored in a Themes folder inside the application's data directory, so they are plain files you can move, back up or share, rather than settings locked inside a database. It also means a theme is the unit of personalisation: if you like how somebody else's writing environment looks, the theme is what you take.
Statistics and daily goals are the motivational layer
Beyond the writing surface, FocusWriter features on-the-fly updating statistics and daily goals. The statistics update as you work rather than being something you ask for, so the word count and whatever else it tracks reflect the session in progress, and the daily goal gives the day a target. This is the part of the application that sits closest to a gamified tool, and it is deliberately low key compared with a habit tracker, because the whole design goal is to remove anything that pulls the writer out of the document. Multiple open documents are supported, and the program is not a single file editor, so a long project can stay open without the interface ever becoming a file manager.
The document and the cursor position come back on launch
When you open the program, your current work in progress loads automatically and positions you where you last left off, so you can jump back in immediately. That is a small feature stated in one sentence, and it is the one that decides whether you will use the program daily. A writer's hardest moment is not the writing, it is the re-entry, and FocusWriter removes the decision of which file to open and the decision of where in the file to start. The session state is stored with the application's data, which is also where the themes live, and that is the link to the portable mode: everything about the environment travels with the Data folder.
Portable mode is a folder named Data next to the executable
The portable mode is unusually simple to explain. Create a folder named Data in the same folder as the executable, or as the application bundle if you are on macOS, and the program runs from a USB drive. If you later decide you want it to store its settings and related files on the host computer instead, you simply rename or delete that Data folder. If you have already used FocusWriter and want to move your themes to the drive, you copy the Themes folder into the new Data folder, and the Themes folder lives in one of these locations:
Linux:
~/.local/share/GottCode/FocusWriter
macOS:
~/Library/Application Support/GottCode/FocusWriter
Windows:
%LOCALAPPDATA%\GottCode\FocusWriterThe paths are per platform, and the macOS and Windows ones are the application support conventions of those systems, which is a good sign about how the rest of the program behaves. The practical reading is that FocusWriter keeps everything it owns in one directory per platform, and the portable mode is that same directory redirected rather than a separate feature with its own code path.
A CMake C++ project with translations and deployment scripts
The repository is the source for a C++ desktop application built with CMake, and the top level shows how a project of this kind is put together. There is a CMakeLists.txt with a cmake directory for the module and toolchain files, a src directory for the code, a resources directory for icons and data, and a translations directory for the localised strings. Two deployment scripts sit at the root, mac_deploy.sh and windows_deploy.bat, one per platform that needs a packaged build. There is also a ChangeLog, a CREDITS file, an INSTALL file, a CONTRIBUTING.md and a COPYING file that carries the GPL-3.0 terms. The project is hosted on gottcode.org, and the releases are steady: v1.9.0 on 2026-02-10, v1.9.1 on 2026-07-23, with v1.8.13 from 2025-08-18 before it, and the last push was on 2026-10-08, so the code is moving faster than the release tags.
Where a general purpose editor is the better choice
The alternative is a general purpose word processor, and the difference in approach is structural rather than a matter of taste. A general editor keeps a ribbon, a style list and a formatting toolbar in front of you at all times, and the cost of that is a constant stream of affordances competing for attention. FocusWriter removes the interface entirely and lets you configure the surface through a theme instead, so the choices you made once about font, colours and background are what you see, and nothing else. The trade is direct. If your writing is plain prose that you will export or paste elsewhere, the narrowness is a benefit, because the program never asks you to decide how a heading should be styled. If your document needs structure that survives the export, the theme model does not carry that, and the README's silence on formatting features is a fair signal of where this application stops. For the same reason, collaborative editing and review workflows are outside what this program attempts.
Editorial conclusion
Adopt FocusWriter if what you want is a window that disappears while you write, with a theme that sets the font, colours and background, and if you value the portable Data folder that keeps settings and themes off the host computer. Do not adopt it as the place to store work you later need formatted, reviewed or shared, since the README documents themes, statistics, goals, multiple documents and spell checking and says nothing further about the feature set. Before you commit, read the INSTALL and ChangeLog files in the repository, check the release you would install against v1.9.1 from 2026-07-23, and confirm that the GPL-3.0 terms suit how you intend to distribute it, since modified versions must stay under the same licence.
Frequently asked questions
How do I run FocusWriter from a USB drive?
Create a folder named Data in the same folder as the executable, or as the application bundle on macOS, and the program runs from the drive. Renaming or deleting that Data folder later returns it to storing settings on the host computer, and migrating existing themes means copying the Themes folder into it.
Where does FocusWriter store its themes and settings?
In a per platform application data directory. On Linux it is ~/.local/share/GottCode/FocusWriter, on macOS it is ~/Library/Application Support/GottCode/FocusWriter, and on Windows it is the LOCALAPPDATA folder under GottCode/FocusWriter, with the Themes folder inside it.
What is the hide-away interface in FocusWriter?
The program's interface is accessed by moving your mouse to the edges of the screen, which lets the application keep a familiar look and feel while getting out of the way so you can immerse yourself in your work.
Does FocusWriter track my writing with statistics and daily goals?
Yes. The README lists on-the-fly updating statistics and daily goals among the features, along with multiple open documents and spell checking, and it also states that your work in progress loads automatically and positions you where you last left off.
What licence is FocusWriter released under?
FocusWriter is released under the GNU General Public License version 3, with the terms in the COPYING file at the repository root. If you distribute a modified version, the same licence terms apply to what you ship.
Official sources
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.
[](https://hysenlabs.com/projects/gottcode-focuswriter)Was this useful?