← Standard IT Reading free  ·  buy the toolkit · $249  ·  have us build it
Standard IT  ·  standardit.org

The Standard IT Playbook

Run your whole company on open protocols. The exact stack we use at La Nao.

$7.5M in revenue. 250,000+ parcels a year. More than ten countries. A team of six. Total IT cost: just over $35 a month. This is how.

The Standard IT Playbook   First Edition
Written by the operators of La Nao  ·  lanao.org
Free to read  ·  the toolkit, $249, yours forever
No JavaScript. No tracking.
Before you start

What this is, and who it is for

Your company is one of the weird ones. You believe that incentives dictate results. So ask the obvious question: what are the incentives of the companies that build the tools most other companies run on? Are they aligned with yours?

This playbook is for business owners and managers who trust their people and know they are capable of learning things. SaaS turned "easy to use" and "no training necessary" into headline features. We disagree with that whole train of thought. We are happy to use more complex and more powerful tools when they deliver outsized returns, and we trust our people to learn things that were not engineered for a child to operate. Sometimes a learning curve is the price of a powerful tool. This playbook is for the companies willing to pay it.

We are not selling minimalism for its own sake. We run a real business on this stack. La Nao does about $7.5M of revenue a year, ships between 250,000 and 300,000 parcels into more than ten countries on two continents, and buys from manufacturers in seven countries across three continents. The team is six people in three time zones. Our IT infrastructure costs just over $35 a month.

The money is not the real win. The real win is time and focus. The tools we use have no sexy animations engineered to pull you back in. They are utilitarian by design, which means we use them to get a thing done and then we stop using them. And because they are asynchronous by nature, everyone on the team does their work when they are at their best, on their own rhythm. The tools help with that. So does the way we organised the company, but that is a subject for another day.

The promise

By the end of this playbook you will have a clear blueprint that: (1) shows you how to set up the exact infrastructure we use; (2) explains how each tool works and how to get the most out of it; (3) makes the case for why this set of tools saves money, time, and focus; and (4) for those who want it, shows how an open-standards stack makes AI dramatically easier to put to work.

A note on honesty, up front: this is not for everyone. Setting it up takes a few focused days, not a specialist. You also have to teach your team, which means trusting them to learn tools that were not built to be "intuitive." If your edge is staying lean and protecting your margins, this stack will serve you for years. If you need enterprise SSO, a compliance department's blessing, or something that impresses an investor in a diligence call, this is probably not your moment. We would rather tell you that now than take your money and have you discover it in chapter four.

Contents

The stack, end to end

Executive summary

The whole thing on one page

If you read nothing else, read this. Each row is a job to be done, the tool we use for it, and the chapter that shows you how.

The jobWhat most companies buyWhat we use insteadCh.
Communication & decisionsSlackEmail, used with discipline01
Company memory & wiki-by-threadSlack history, NotionMailing lists (groups.io)02
Shared filesDropbox, Google DriveManaged Nextcloud (Hetzner)03
Passwords & secrets1Password, LastPassKeePassXC on shared files04
Project & task trackingAsana, MondayA spreadsheet (the Situation Room)05
SOPs & documentationNotion, ConfluenceDokuWiki (plain text on disk)06
Quick, throwaway chatWhatsApp, Slack DMsDelta Chat with auto-delete07
AI on your own dataPer-seat AI add-onsLocal scripts over mail & files08
Monthly total~$417~$52

The $417 figure is a conservative monthly estimate for a ten-person team across the SaaS column. Our $52 is the real bill, detailed line by line in chapter ten. The point of this table is not the saving. It is that one column was designed to maximise your engagement and the other was designed to get out of your way.

Chapter One

Email: the backbone

Everything else in this playbook hangs off email. Get this right and the rest falls into place. Get it wrong and no tool will save you.

Who hosts your email

Who hosts your email is a real decision in terms of money, but in the end it is the same tool no matter who you use. We recommend Purelymail for three reasons. They stick to email standards strictly. They charge pay-as-you-go, so if you have a larger team with a few people who barely touch email, you pay almost nothing for them: a team of ten heavy users runs about $10 a month. And they have been around since 2018. A good alternative is Migadu, around since 2014. Their pricing is a little more involved but the service is excellent.

A confession worth your attention

We are still on Google Workspace, because people like Gmail too much and we let that win. If we were starting again we would move to Purelymail from day one. Google's slow creep of AI canned replies and emoji reactions into email has come back to bite us. Learn from our dependency. Start clean.

How to structure your addresses

The etiquette that makes email work

This is the part nobody wants to hear and the part that matters most. Email without etiquette becomes a swamp. With it, email scales to run an entire company. The Linux kernel coordinates thousands of contributors over plain email, and the only reason that works is that they are deadly serious about etiquette and let no one slide.

  1. No top posting. Every message you send should contain only the information you want to keep. When you bottom-post, leave enough context that someone reading a week after their original message gets a refresher of where the conversation stood as they read your reply.
  2. Plain text is king. If you genuinely need HTML, for a table say, use it. Otherwise plain text wins. Most of these rules are drawn from useplaintext.email.
  3. Use the headers deliberately. Putting someone in To: means something different from Cc:. To: means you are aiming the water gun at them. Cc: means you would just like them to get splashed.

Three more that earn their place once you are past the basics:

Make it everyone's job

Etiquette only holds if the team polices the team. Not as bureaucracy, as a shared standard people actually care about. A gentle public "mind the top-post" in a thread does more than any policy document. Here is the kernel community doing exactly that, recently and without ceremony.

Chapter takeaway

Pick a standards-respecting host (Purelymail), give every human one address, and treat etiquette as non-negotiable infrastructure. The discipline is the product. The software is just plumbing.

Chapter Two

Mailing lists: the company memory

This is our favourite part of the setup. Mailing lists are powerful precisely because they are such a simple primitive. They adapt to an astonishing range of situations, and they turn day-to-day conversation into a permanent, searchable record without anyone doing extra work.

Which service, and what it costs

We are on Google Groups today, because we are on Google for email. We recommend groups.io instead: it has more features than you will ever need and is genuinely easy to use. Start on their free plan. The limit you will eventually hit is the 1 GB storage cap. When you do, it is $20 a month for effectively everything you will ever want.

Start with as few lists as you can

We began with a single group that included the whole company. After about a month it became obvious that one product line generated discussion unrelated to everything else, so we split it onto its own list. That is the right order of operations: start with one, and let real friction tell you when to divide.

A common shape for an e-commerce business past ten people is two lists: one like platforms@ for listings, product, and marketing, and one like purchasing@ for manufacturers, freight forwarders, and 3PLs. Once you have lived with lists for a couple of months and know what is genuinely useful to you, add more. Not before.

The settings that matter

First, a mindset point the whole team needs: the lists are not only for internal chatter. Your external partners will post into them too, and that is a large part of the value. A supplier's reply landing in the archive is company memory you did not have to file.

groups.io · Admin → Settings
  • Allow Non-Members to Post: enabled. Lets external partners email the group.
  • New Members Moderated: enabled. Forces unverified senders into the approval queue.
  • Unmoderate After: set to 1 post. After you approve an external sender once, they post automatically from then on.
  • Messages / Archive Visibility: set to Members. Whitelisted external posters can email in but can never read the archive.

Net effect: your team posts and reads freely. External parties email in, queue once for approval, then post automatically forever, and never see your history.

groups.io message policies settings
Figure 2.1 — The message-policy controls in groups.io. "Allow Nonmembers to Post" is the switch that lets suppliers and partners write into your company memory.
The one rule

People must always reply-all. A reply that drops the list is a memory that never got written. This is the mailing-list equivalent of no-top-posting, and it deserves the same seriousness.

Two things lists give you that aren't obvious

Chapter takeaway

One list to start. Let externals post but not read. Reply-all, always. You are not "using a mailing list," you are writing the company's memory as a side effect of doing your work.

Chapter Three

Shared files: managed Nextcloud

Nextcloud is powerful software and notoriously fiddly to self-host. So we don't. We let professionals run it and we get the ownership of self-hosting with none of the maintenance.

The plan

We use Hetzner's Storage Share, which is managed Nextcloud. We are on the NX11 plan: 1 TB for €4.29 a month, unlimited users. It scales to 10 TB. You can order it bare, or route a subdomain to it so your files live at something like nc.example.com. Hetzner keeps the software stable, the servers up, and runs daily backups of the entire file system. This is not hobby software: it is used by the German federal government, the French Ministry of the Interior, the Sorbonne, and Deutsche Telekom, among others.

Hetzner Storage Share pricing tiers
Figure 3.1 — Storage Share plans. NX11 at €4.29/month, 1 TB, unlimited users, is where almost every team should start. Note the per-month price is a ceiling, billed hourly.

Folder structure

This is particular to every business, so we will not hand you ours and pretend it fits. The one rule worth stating: structure for the new hire who has never seen it, not for the person who built it. If a folder name needs explaining, rename the folder.

The admin features that earn their keep

The admin panel is where a managed Nextcloud quietly beats consumer file sync:

Nextcloud admin sharing configuration presets
Figure 3.2 — The admin panel's sharing defaults. This is where you enforce link expiry and password protection once, for everyone, instead of trusting each person to remember.

Version history and external sharing

We use version history for exactly one thing: saving ourselves from ourselves. It is the undo button for a file someone overwrote.

External sharing is where it gets genuinely useful. We set public links to expire automatically after six months, so nothing stays open forever by accident. And we lean on the file request share type constantly: you send a client or a manufacturer a link, they cannot see anything in the folder, all they can do is drop files into it. It is the cleanest way to collect documents from someone outside the company.

Nextcloud share menu showing File request option
Figure 3.3 — The share menu. "File request" gives an outsider an upload-only door into one folder. They add files; they see nothing.
Nextcloud enforced link expiration date
Figure 3.4 — Enforced link expiry. With the admin default set, every public link gets an expiry date whether the sharer remembers to set one or not.
Chapter takeaway

Buy managed Nextcloud, not a Dropbox seat. You get ownership, daily backups, real admin controls, and no per-user bill, while someone else handles the part that is genuinely hard to run.

Chapter Four

Passwords: KeePassXC

Your passwords should not live on someone else's server behind a subscription. KeePassXC keeps them in an encrypted file that you own, that syncs with the file system you already have, and that costs nothing per user, ever.

How to organise the vaults

We keep one folder at the root of our shared files that everyone can reach. Inside it, a vault per department and a folder of personal vaults:

safe/
safe
├── accounting.kdbx
├── admin.kdbx
├── logistics.kdbx
└── personal
    ├── claire.kdbx
    ├── john.kdbx
    └── mary.kdbx

To weave shared credentials into each person's own database, use KeePassXC's KeeShare feature. It is not strictly necessary: you can simply keep several files with different passwords. But KeeShare lets the logistics vault, say, appear inside a logistics person's personal database automatically, which is a real convenience once you are past a handful of people.

Where the vaults live

All of them live in Nextcloud. When someone leaves, you email them their personal file and delete it from the shared folders. These files are tiny: one of ours holds hundreds of passwords and is under 500 KB.

Onboarding a new hire

  1. Give them a short screen-recording from someone on your team explaining the basics of KeePassXC for your setup. A generic tutorial is fine to supplement, but your own two-minute video is what lands.
  2. Send them the passwords for the KeeShare vaults that are theirs (logistics only, say) through a one-time secret service like PrivateBin. Never the shared file's password over plain email.
  3. Drill the one rule that actually matters: never lose your master password.
Reassure them

New people are terrified of breaking the password vault. Tell them plainly: every file is backed up, with version history. They cannot break anything. If something looks wrong, they can open the vault's version history themselves and roll back to a previous copy.

Nextcloud version history for a KeePass database file
Figure 4.1 — Version history on a .kdbx file in Nextcloud. Every save is recoverable. This screenshot, shown to a nervous new hire, removes most of the fear.

KeePassXC's documentation is excellent, and this video is a good tour of the advanced features when you are ready for them.

Chapter takeaway

An encrypted file on your own shared drive beats a per-seat password subscription. Department vaults, personal vaults, KeeShare to tie them together, and a backup story you can show people so they stop being afraid of it.

Chapter Five

Coordination: the Situation Room

Mailing lists have one weakness: a thread has no status. It is either in your inbox or it is not. The Situation Room is the small, deliberate fix for that, and it is nothing more than a spreadsheet.

Why this exists

This problem is not new. The Linux kernel hit it years ago and built a tool called Patchwork that reads the whole mailing list, picks out the messages containing patches, and tracks the status of each one so a maintainer never loses a thread just because it went quiet for a while. We needed something like that, far simpler. So we built the Situation Room: a single spreadsheet listing the things currently in flight. It can be a Google Sheet, or an .ods file living in Nextcloud. The tool does not matter. The discipline does.

How it works, column by column

The flow is simple. When an email thread turns into something that needs real work, or needs you to wait on an outside party, you add a line to the Situation Room. Our columns are deliberately plain:

ColumnWhat goes in it
DateWhen the item was opened.
OwnerThe person responsible for getting it past the finish line. Not necessarily the person doing the work.
DescriptionWhat the item actually is, in a sentence.
Closure DateWhen it was resolved, or the target.
CommentsThe running status. The most recent note at the top, dated.
Reference 1–3A link to the archived thread, or just the thread's subject line pasted in. Three columns because, in real life, one project sometimes sprawls across several threads. Not ideal, but life is messy.
What "owner" means here

An owner is the person responsible for making sure everyone does their part and the thing crosses the finish line. They are not necessarily the one who does most of the work. Confusing those two is how items stall with everyone assuming someone else has it.

The rhythm

Everyone looks at this file several times a day, and it changes every single day. We do not use it to run meetings. We have very few meetings, and when we do meet it is about one specific topic, not a march through the backlog. For something as simple as a status update, a well-written email is almost always enough.

Build a tool that serves you, not one you serve. Keep it simple. The moment the Situation Room needs a manual, you have overbuilt it.

A ready-to-use situation-room-template.ods, filled with realistic example rows you can clear out, is included in the toolkit. See the final section.

Chapter takeaway

A spreadsheet gives your email threads the one thing they lack: status. Owner, description, a dated running comment, and a link back to the thread. That is the entire system, and its simplicity is the point.

Chapter Six

Knowledge base: DokuWiki

Some things need to be carved in stone, not discussed in a thread. For those, you want a wiki. We use DokuWiki, and we will be honest about where we compromised.

The honest trade-off

This is the one place in the stack where we are less minimal than we could be, and we half regret it. We would have loved a wiki that was just markdown files under Git version control. Two things stopped us. First, Git defeats even programmers often enough that we did not want to spend our lives debugging broken repositories for the sake of a wiki. Second, DokuWiki already existed and gave us most of what we wanted:

How to install it

  1. Buy the most basic Hetzner webhosting plan.
  2. Point your domain's nameservers at Hetzner's.
  3. Do not put the wiki at your domain root. Create a subdomain in Hetzner's console, like wiki.example.com.
  4. Using the WebFTP tool in Hetzner's konsoleH, create a folder layout: inside public_html (already there), add a site folder and a wiki folder.
  5. Download DokuWiki (the install guide is thorough), decompress it, and drag the files into the wiki folder via WebFTP.
  6. In the subdomain settings in konsoleH, set the subdomain's root to the wiki folder.
  7. Visit wiki.yourdomain.com/install.php and follow the admin setup. This is where you configure access permissions.
  8. Set up SSL certificates for both yourdomain.com and wiki.yourdomain.com (Hetzner's SSL guide).
Hetzner konsoleH services menu with WebFTP highlighted
Figure 6.1 — Hetzner's konsoleH. WebFTP, Subdomains, and DNS Administration all live in the Services menu on the left. This is the whole control surface you need.
Creating a new subdomain in Hetzner konsoleH
Figure 6.2 — Creating the wiki subdomain. Set the destination directory to the wiki folder you made, and that subdomain now serves DokuWiki.
On permissions

DokuWiki's permissions are powerful, but think hard before you use them to lock people out. We give the whole team full access, and even in a larger company we struggle to see why you would restrict the wiki. It is not where secrets belong. Secrets go in KeePassXC. The wiki is where shared understanding lives, and shared understanding should be shared.

Namespaces, and not over-thinking them

We have under 100 pages and do not expect more than 300 in five years. At that volume, search is good enough that namespaces barely matter. For most companies, fussing over namespace hierarchy is premature optimisation. If your project genuinely needs deep structure, you already know enough about wikis to design it yourself.

What belongs in the wiki

The wiki is for things you want carved in stone: stable, important, and worth getting exactly right for everyone. Two good examples:

A sidebar layout in DokuWiki format, and an example AI-use policy, are both in the toolkit. See the final section.

Chapter takeaway

DokuWiki gives you a plain-text, database-free knowledge base on hosting you already pay for, that AI can read whole. Keep it open to everyone, do not over-engineer namespaces, and reserve it for the things that should not change often.

Chapter Seven

Quick chat: Delta Chat

Delta Chat is a lighter version of WhatsApp: it does everything genuinely necessary very well, and none of the gamification we do not want. Remember the goal here is to chat as little as possible.

Why this one

Delta Chat runs on email underneath, so it fits the rest of the stack naturally, and it has one feature we consider non-negotiable: a short auto-delete timer on conversations. That single setting is what keeps chat in its lane. It also has a genuinely powerful trick up its sleeve: webxdc apps, small applications that run inside any chat. We use them to live-edit small documents on the fly. There are hundreds of them. You do not need to be paranoid about which ones you run or who wrote them, because these apps cannot reach the internet at all. They can only exchange messages with the other people in the chat they live in. It is also a perfect place to have an AI build a small bespoke tool for your team when you want one.

The one feature that is mandatory

If you choose a different tool, fine, but it must let you set a very short deletion timer on conversations, like one week. That timer is the whole point. Anything worth remembering belongs in email, where it becomes part of the company memory. Chat is for the things that are not worth keeping.

Rolling it out

  1. Get everyone to download the app and create an account on any of the chatmail relays. In practice that is just installing the app and following the prompts.
  2. Share your profile with the team using the QR code or link the app gives you. You can keep multiple profiles in Delta Chat: one of us uses it for both family and work, kept cleanly separate.
How to enforce good use

Two moves. First, set auto-delete to one week, or even shorter. We would honestly try one hour. Second, when someone sends a message that should have been an email, say so, lightly, in the chat: "we won't be happy when this disappears in a few days, let's move to email." The disappearing messages do the teaching for you.

Chapter takeaway

Use a chat tool that forgets on purpose. Delta Chat with a short auto-delete timer keeps quick questions quick and pushes anything that matters back onto email, where it should live.

Chapter Eight

The AI layer

Here is the payoff that most people miss. Every AI tool on the market is straining to "integrate" with your SaaS stack: APIs, paid tiers, your data routed through someone else's servers. When your company already runs on plain text, that whole problem evaporates. AI works directly on your data, locally, with no middleman.

Why we don't use MCP servers (yet)

Our understanding may be limited, but as we see it, MCP servers are useful for injecting only the relevant slice of information into a model's context at a given moment, the situation where you do not want the AI taking action for you. For now, our AI workflows use only our email as context, and instead of an MCP to search it, we use notmuch to build very precise search queries in advance and inject only the relevant context. It is a different shape of solution for a focused job.

A workflow we genuinely rely on: the weekly recap

Once a week, an email goes to the whole team with the big topics of the week, the progress made, and what matters for the week ahead. It is generated by a small set of Python scripts that pull the week's email and the Situation Room, load the last few reports for long-term context, send it all to a model, and email a draft back for a human to check before it goes out.

The scripts are included in full in the toolkit. They are worth reading even if you never run them, because they show something a SaaS product's setup never will: pages of custom search terms and bespoke logic shaped entirely around how our company actually works. That is what becomes possible when your data is just files and plain text.

What else you can feed it

Because everything is a file, the context sources are open-ended. Two we are adding:

  • Documents changed this week. Every company file is synced through Nextcloud as a normal file, so a simple find command lists what changed, and can even pull small files of the right type straight into context.
  • Calendar events, by parsing a local .ics file.

What we do not let AI touch

For now, AI takes no action without supervision. The weekly recap sends a draft for a human to verify before anything is fired off to the team. We also keep a written AI-use policy in the wiki, evolving slowly, and an example version of it is in the toolkit. Its spine is simple:

Chapter takeaway

Open standards are not just cheaper, they are the thing that makes AI genuinely useful on your own data. Plain text and flat files mean a model can work directly, locally, with no integration and no subscription. As models get better at holding context, this advantage only compounds.

Chapter Nine

Rolling it out to your team

The tools are the easy part. Whether this works comes down to how you introduce it to people. Here is exactly how we did it.

The training, step by step

  1. The IT stack owner records a screen video for each tool, covering setup for your specific use case. These videos are essential, and no document replaces them. It takes the stack owner about a day to make the full set, and you keep them forever for future hires.
  2. One email goes out per tool (Nextcloud, KeePassXC, DokuWiki, email itself, the AI workflows), each with the same three sections: what the tool looks like and does; why you chose it over the alternatives; and what the tool is not for.
  3. Give everyone two weeks to try things and collect pain points and questions in a shared document.
  4. Everyone sends their pain points to the stack owner, then you hold one team call to walk through the tools, the friction, and the questions together.
Who the stack owner is

Pick someone slightly technical. The tools rarely break, but when something does come up, this is the person who can ask an AI model or search their way to understanding the problem and then explain the fix to the team. Crucially, they should answer every question with a video or a written note that is easy to find later, because the same questions come up again and again. At our scale, maintaining the whole stack takes the stack owner no more than two hours a month.

What we would do differently

We tried GitLab, Basecamp, and Google Docs before we landed here. We wish we had read this playbook and skipped the detours. Three lessons stand out:

Chapter takeaway

Record videos, send one clear email per tool, give two weeks of hands-on, then meet once to resolve the friction. Name a stack owner who documents every answer. Switch everything at once. The rollout is where this stack is won or lost.

Chapter Ten

What it costs, what breaks

No hand-waving. Here is the real monthly bill, the real maintenance load, and the one thing that has actually given us trouble in two years of running this.

The monthly ledger

ServiceMonthlyNotes
Storage Share, 1 TB (Nextcloud)$5Files, backups, unlimited users
Purelymail$25~10 people using email heavily
Hetzner webhosting$2DokuWiki and the website
groups.io$20Free if you use Google Groups instead
Total$52$32 with Google Groups

That is the whole stack for a company doing $7.5M a year. Drop the mailing list down to a free Google Group and you are at $32 a month. We think groups.io is worth the difference, but the option is yours.

Maintenance

Nothing here truly needs touching. Every service in the stack is run by professionals. Most "maintenance" is just helping a team member sort out an error on their own machine. All told, it is about two hours a month for the stack owner.

What has actually broken

In about two years, exactly one thing has been a recurring nuisance: the Nextcloud desktop sync client. The software works well, but every so often it needs a restart to start syncing again. We solved it the same way we solve most things, with a short video showing people two things:

Everything else has run without drama. We have noticed no meaningful downtime. Hetzner warns us before they do maintenance, and we have never once been affected by it.

Chapter takeaway

About $52 a month, about two hours of upkeep, and one mildly annoying sync client that a single video defuses. That is the true running cost of replacing a $400-a-month SaaS stack.

The working files

The toolkit

This playbook is built on real working files, sanitised of our company's data and ready for you to adapt. They come with the toolkit: one zip with everything below, plus this book as a PDF and a self-contained offline HTML file. $249, one payment, future editions included.

FileWhat it isCh.
situation-room-template.odsThe project-tracking spreadsheet, with realistic example rows to clear out05
toolkit/ai-weekly-report/The full Python scripts that generate and send our weekly AI recap08
ai-policy-example.txtOur AI-use policy, in DokuWiki format, ready to paste into your wiki08
dokuwiki-sidebar.txtA starting sidebar layout in DokuWiki format06
keepassxc-vault-structure.txtThe department / personal vault layout as a starting point04
dns-records-example.txtAn example walkthrough of the DNS records an email host asks you to set01
The weekly-report scripts

Read profiles.py first: it ships with a general team recap and two example per-person reports (alice and bob). Copy a person block, change the name and addresses, and you have a new profile. generate_report.py holds the prompts you will want to tune. The scripts assume notmuch for mail and the Claude CLI for the model, both noted inline.


Where to go from here

This playbook is the blueprint. If you want the conversation, a small list of operators running their companies this way share configurations, templates, and what they have learned at standardit.org. And if you would rather have it set up for you, with the keys handed over at the end so you own everything, that is something we do for a few companies a year. The site explains how to ask.

You've read it

Want the files, or want it done for you?

The toolkit has the working files: the Situation Room spreadsheet, the AI scripts, the configs, plus the book as a PDF and offline HTML. One payment, $249, single-company licence, 60-day refund with no questions asked. Or we install the whole stack and hand you the keys, so you own everything.

Buy the toolkit · $249 Have us build it · $5,000