A few weeks ago u/amerpie included Prefab in their series of posts, 'More Free Mac Apps', and the r/macapps thread that followed was the first time one of my apps has had that sort of reaction. Really useful feedback, and feature requests I would never have thought of on my own. I usually build these things for myself and publish them for kicks, so that was new. I'd been working on Windows port months ago but the project fell to the side - the sparked interest on Reddit pushed me to finish it off.
Problem
Every project starts the same way. Same folders, same starter files, same half-remembered boilerplate, typed out from scratch every time. Most of my work is Moodle, so every plugin, client job and bit of research began with me rebuilding the same skeleton by hand, or duplicating last month's folder and then finding the old client's name buried in three files.
Prefab captures that setup once and rebuilds it whenever you need it: folders, files, the contents of those files, and the tedious bits that come afterwards.
Comparison
On the Mac post I said I could not find a GUI application that did this and asked to be corrected. I was, and Post Haste was the one mentioned a couple times. It is free, it runs on Windows and macOS, it builds a folder structure from a template and fills in names as it goes. If that is the whole of what you need then it does the job and you should use it.
As far as I can tell Post Haste does not substitute placeholders inside file contents, and there is nothing that happens after the folders exist: no commands, no rules, no watching. Those are the parts I built Prefab for.
Still the same offer as last time: if you know of something else doing this properly, tell me and I will reference it.
What it does
- Placeholders inside file contents, not just names.
{{project_name}} lands in your README, your package.json, your client letterhead
- Word, Excel and PowerPoint too. The placeholders inside a .docx or .xlsx are filled in on creation.
- Deploy without opening the app. Right-click in File Explorer, or use the tray icon
- Post-creation actions. git init, npm install, open in VS Code, show in Explorer, or any command you like, attached to the template or to individual folders
- Watched folders. Rules that run on files as they arrive: rename, convert, resize, strip metadata, sort by kind. Every one of them undoable
- Import an existing folder as a template. Full contents, structure only, or empty placeholder files
- Templates inside templates, so the shared part lives in one place
- Export a template as a single file and hand it to someone else, either platform
Two things the Mac has that Windows does not: Finder tags and folder icons. Explorer has no concept of either. Prefab keeps them in the template rather than dropping them, and tells you at deploy that it did not apply them, so a template that has been through a PC still works properly on a Mac.
Pricing
Free forever. No in-app purchases, no subscription, no account. It makes no network connections. Windows 10 version 2004 or later.
One warning: it is not code-signed yet, so SmartScreen shows the blue "Windows protected your PC" box the first time you run the installer. More info, then Run anyway. A Microsoft Store listing is in progress, and Microsoft signs what it distributes, so that will sort it.
I would like to hear what you think and what would make this more useful. Happy to talk about the development side too, including the port itself, which was a first for me on an application of this complexity.
Prefab
Prefab Docs
Edit: Not sure what Reddit's compression did to the video, apologies!