[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fUunzZU3yUaMAUrZUbqZT995era2QLFC2OZ1B3MRKHGU":3},{"slug":4,"category":5,"category_label":6,"category_color":7,"featured":8,"author":9,"hero_image":10,"reading_time":11,"title":12,"excerpt":13,"meta_title":14,"meta_desc":15,"tags":16,"products":28,"content":30,"images":31,"related_posts":32},"client-documentation-portal-encrypted-file-sharing","saas","SaaS & Product","blue",false,"Fimula","/storage/blog/heroes/client-documentation-portal-encrypted-file-sharing.jpg",7,"Why Your Client Documentation Is a Security Liability (And How to Fix It)","Most agencies share strategy docs, audit reports, and architecture diagrams through email attachments and Google Drive links. Here is why that is a GDPR risk, and how we built Flowshare to solve it with magic links, encrypted storage, and CipherSweet field-level encryption.","Secure Client Documentation Portal: GDPR-Compliant File Sharing | Fimula Blog","How agencies share documentation is a GDPR liability. Learn how Flowshare uses magic links, CipherSweet field-level encryption, and EU hosting to fix it.",[17,21,25],{"slug":18,"name":19,"color":20},"self-hosting","Self-Hosting","teal",{"slug":22,"name":23,"color":24},"gdpr","GDPR","purple",{"slug":26,"name":27,"color":24},"ciphersweet","CipherSweet",[29],"flowshare","\u003Ch2 id=\"the-problem-with-how-agencies-share-documents\">The Problem With How Agencies Share Documents\u003C/h2>\n\n\u003Cp>Agencies and consultants live on documentation. Strategy decks, audit reports, architecture diagrams, onboarding guides, project retrospectives. These documents contain client data, competitive analysis, infrastructure details, and internal processes.\u003C/p>\n\n\u003Cp>And yet the standard sharing method is still email attachments, Google Drive links, or Notion pages shared with \"anyone with the link.\" Every one of these approaches has the same fundamental flaw: there is no access control, no expiration, and no audit trail.\u003C/p>\n\n\u003Cp>A strategy deck sent as a PDF in January is still sitting in someone's Gmail in December. A Google Drive link shared with \"view\" access can be forwarded to anyone. A Notion page URL works for anyone who guesses or receives it. None of these methods give you control over who reads your work after you deliver it.\u003C/p>\n\n\u003Cp>For EU-based agencies handling client data, this is not just sloppy — it is a potential GDPR liability.\u003C/p>\n\n\u003Ch2 id=\"why-google-drive-and-email-arent-enough\">Why Google Drive and Email Aren't Enough\u003C/h2>\n\n\u003Cp>The GDPR does not say \"use encrypted email.\" It says you must implement appropriate technical and organisational measures to ensure a level of security appropriate to the risk (Article 32). When your documentation contains personal data — client names, employee details, financial figures, IP addresses from server logs — the \"risk\" is not trivial.\u003C/p>\n\n\u003Cp>Consider what happens with a typical audit report shared via Google Drive:\u003C/p>\n\n\u003Cp>\u003Cstrong>No access revocation.\u003C/strong> Once a link is shared, you can technically revoke access, but you have no guarantee the recipient hasn't downloaded or forwarded the file. There is no mechanism to expire access after a project ends.\u003C/p>\n\n\u003Cp>\u003Cstrong>No field-level encryption.\u003C/strong> Google Drive encrypts files at rest and in transit, which is good. But if someone gains access to the file — through a compromised account, a shared password, or a forwarded link — they see everything. There is no way to encrypt specific fields within a document so that even someone with file access cannot read sensitive data.\u003C/p>\n\n\u003Cp>\u003Cstrong>No audit trail.\u003C/strong> You cannot prove who accessed a document, when, or how many times. If a client asks \"who has seen our infrastructure audit?\" you have no answer.\u003C/p>\n\n\u003Cp>\u003Cstrong>Data residency uncertainty.\u003C/strong> Google Drive processes data globally. While Google offers EU data regions, the default behaviour does not guarantee that a document shared with a client in Munich stays on EU servers.\u003C/p>\n\n\u003Cp>These are not theoretical problems. They are the exact scenarios that GDPR supervisory authorities investigate when a data breach occurs.\u003C/p>\n\n\u003Ch2 id=\"what-a-secure-documentation-portal-actually-needs\">What a Secure Documentation Portal Actually Needs\u003C/h2>\n\n\u003Cp>We spent six months thinking about this problem while building Flowshare, our client documentation portal. The requirements fell into three categories: access control, encryption, and experience.\u003C/p>\n\n\u003Ch3 id=\"access-control-magic-links-with-expiration\">Access Control: Magic Links with Expiration\u003C/h3>\n\n\u003Cp>Flowshare uses magic links — unique, single-purpose URLs that grant access to a specific documentation project. No client login required. No passwords to manage. No account creation friction.\u003C/p>\n\n\u003Cp>Each magic link has an optional expiration date. When a project ends, the link stops working. The client can still request re-access, but the default is closed. This alone solves the \"link sitting in someone's inbox forever\" problem.\u003C/p>\n\n\u003Cp>You can also regenerate a link at any time, which invalidates the previous one. If a consultant leaves your team and had access to a project, regenerate the link and the old one is dead.\u003C/p>\n\n\u003Ch3 id=\"encryption-ciphersweet-field-level-protection\">Encryption: CipherSweet Field-Level Protection\u003C/h3>\n\n\u003Cp>This is the part that most documentation tools ignore. Flowshare uses CipherSweet — a library by Paragon Initiative Enterprises that provides field-level encryption for application data stored in PostgreSQL.\u003C/p>\n\n\u003Cp>Why field-level encryption instead of just full-disk or column-level encryption? Because it gives you \u003Cstrong>per-field control\u003C/strong>. A project title can be searchable and visible in the admin UI. A client's full name, financial data, or server infrastructure details can be encrypted at the field level, so that even a database administrator with direct PostgreSQL access cannot read them.\u003C/p>\n\n\u003Cp>CipherSweet works by encrypting specific model attributes before they hit the database. The encryption keys are separate from the database credentials. If an attacker gains read access to your database — through a SQL injection, a compromised backup, or a rogue employee — they see ciphertext, not plaintext.\u003C/p>\n\n\u003Cp>We integrated CipherSweet into Flowshare because agencies regularly store information that falls under GDPR special categories or involves legitimate business interests that clients want protected. A server architecture diagram showing internal IP ranges and service configurations is not \"personal data\" in the strict GDPR sense, but it is sensitive business information that clients expect to be protected.\u003C/p>\n\n\u003Ch3 id=\"experience-interactive-docs-not-static-pdfs\">Experience: Interactive Docs, Not Static PDFs\u003C/h3>\n\n\u003Cp>Security without usability is security that nobody uses. The reason agencies fall back to Google Drive is not because they don't care about security — it is because the secure alternatives are painful.\u003C/p>\n\n\u003Cp>Flowshare supports three content types that cover the vast majority of agency documentation needs:\u003C/p>\n\n\u003Cp>\u003Cstrong>Mermaid diagrams.\u003C/strong> Flowcharts, sequence diagrams, architecture diagrams, Gantt charts — all rendered from plain-text Mermaid syntax. This is the format most agencies already use in Notion and GitHub. Flowshare renders them as interactive SVGs that clients can view without any special software.\u003C/p>\n\n\u003Cp>\u003Cstrong>Markdown.\u003C/strong> The lingua franca of technical documentation. Headings, code blocks, tables, inline code, task lists. Everything you need for audit reports, technical specifications, and project summaries.\u003C/p>\n\n\u003Cp>\u003Cstrong>HTML blocks.\u003C/strong> For rich layouts that Markdown cannot handle — styled callout boxes, embedded iframes, custom components. Most Flowshare users stick to Markdown and Mermaid, but HTML blocks are there when you need them.\u003C/p>\n\n\u003Cp>Version history tracks every change. Clients can leave comments and emoji reactions on specific sections. And the entire portal is white-label — your logo, your colours, your domain.\u003C/p>\n\n\u003Ch2 id=\"hosting-and-data-residency\">Hosting and Data Residency\u003C/h2>\n\n\u003Cp>Flowshare runs on the Fimula Platform. There are two deployment options:\u003C/p>\n\n\u003Cp>\u003Cstrong>Fimula Lite\u003C/strong> is a shared-hosting tier. Your data lives in a PostgreSQL database on Hetzner infrastructure in Germany, alongside other Flowshare tenants. Row-level security (RLS) policies ensure your data is isolated at the database level — one tenant's query cannot touch another's rows. This is the right choice for agencies with fewer than 50 active documentation projects.\u003C/p>\n\n\u003Cp>\u003Cstrong>Fimula Core\u003C/strong> gives you a dedicated PostgreSQL instance and dedicated S3-compatible storage. Your data is completely isolated at the infrastructure level, not just the application level. This is the right choice if your clients require contractual data isolation, or if you are handling documentation that contains regulated data (financial services, healthcare, government).\u003C/p>\n\n\u003Cp>In both cases, data stays in the EU. The PostgreSQL instance and S3 storage are in Hetzner data centres in Germany. No data crosses the Atlantic. No US cloud provider involvement. This is not a configuration option you need to find and enable — it is the default.\u003C/p>\n\n\u003Cp>Self-hosting is also available. If your agency has existing infrastructure or regulatory requirements that prohibit shared hosting, you can deploy Flowshare on your own servers with your own PostgreSQL and S3-compatible storage. We maintain the application code — you control the infrastructure.\u003C/p>\n\n\u003Ch2 id=\"the-practical-difference\">The Practical Difference\u003C/h2>\n\n\u003Cp>Here is what changes when an agency switches from Google Drive to Flowshare:\u003C/p>\n\n\u003Cp>Before: a strategy consultant sends a 40-page PDF audit report to a client. The PDF sits in the client's downloads folder and email archive indefinitely. The consultant has no idea if the client actually read it, and no way to revoke access if the engagement ends badly.\u003C/p>\n\n\u003Cp>After: the consultant creates a Flowshare project with the audit report as a structured Markdown document with embedded Mermaid diagrams. The client receives a magic link that expires in 90 days. The consultant can see when the client last accessed the project and which sections generated comments. When the engagement ends, the link expires and access is closed.\u003C/p>\n\n\u003Cp>The content is the same. The delivery mechanism is fundamentally different.\u003C/p>\n\n\u003Ch2 id=\"what-this-means-for-gdpr-compliance\">What This Means for GDPR Compliance\u003C/h2>\n\n\u003Cp>Flowshare does not make you GDPR-compliant — no tool can. But it gives you the technical measures that Article 32 requires:\u003C/p>\n\n\u003Cp>\u003Cstrong>Encryption of personal data\u003C/strong> — CipherSweet field-level encryption protects sensitive fields at rest. TLS protects data in transit.\u003C/p>\n\n\u003Cp>\u003Cstrong>Ability to ensure ongoing confidentiality\u003C/strong> — Magic link expiration and regeneration give you control over access after delivery.\u003C/p>\n\n\u003Cp>\u003Cstrong>Data residency within the EU\u003C/strong> — All data is stored on Hetzner infrastructure in Germany. No third-country transfers unless you explicitly configure them.\u003C/p>\n\n\u003Cp>\u003Cstrong>Audit capability\u003C/strong> — Version history and access logging provide a record of who accessed what and when.\u003C/p>\n\n\u003Cp>If you are an EU-based agency sharing documentation that contains any form of personal data — even something as simple as employee names in an organisational chart — these are the measures you should already have in place. Flowshare provides them as defaults, not as add-ons.\u003C/p>\n\n\u003Cp>Read more about our approach to GDPR-native architecture in \u003Ca href=\"/blog/gdpr-native-vs-gdpr-compliant-why-difference-matters\">GDPR-Native vs GDPR-Compliant: Why the Difference Matters\u003C/a>.\u003C/p>\n\n\u003Ch2 id=\"building-for-the-fimula-platform\">Building for the Fimula Platform\u003C/h2>\n\n\u003Cp>Flowshare is a Fimula Lite product — it runs on shared infrastructure with row-level security isolation. This keeps the price accessible for small agencies and solo consultants while still providing field-level encryption through CipherSweet.\u003C/p>\n\n\u003Cp>The Fimula Platform handles tenant management, authentication, and billing. Flowshare focuses on what it does well: interactive documentation, magic link sharing, and client collaboration. This separation means we can ship features faster without maintaining a bespoke infrastructure layer for each product.\u003C/p>\n\n\u003Cp>If you want to see Flowshare in action, visit \u003Ca href=\"/products/flowshare\">flowshare\u003C/a>. The free tier includes three projects and 100MB of storage — enough to evaluate whether the magic link workflow fits your agency's process.\u003C/p>",[],[33,51,63],{"slug":34,"category":5,"category_label":6,"category_color":7,"featured":8,"author":9,"hero_image":35,"reading_time":11,"title":36,"excerpt":37,"meta_title":38,"meta_desc":39,"tags":40,"products":49},"b2b-ecommerce-platform-manufacturers-simpashop","/storage/blog/heroes/b2b-ecommerce-platform-manufacturers-simpashop.jpg","B2B E-Commerce for Manufacturers: How SimpaShop Automates Supplier Management","Manufacturers selling through distributors face margin chaos — spreadsheets, manual price updates, and no real-time profit visibility. SimpaShop automates the entire supplier-to-sale pipeline.","B2B E-Commerce Platform for Manufacturers | Fimula Blog","SimpaShop automates supplier product imports, margin management, and order fulfillment for B2B manufacturers and distributors. Flat pricing, EU-hosted, full data ownership.",[41,45],{"slug":42,"name":43,"color":44},"b2b-saas","B2B SaaS","emerald",{"slug":46,"name":47,"color":48},"flat-pricing","Flat Pricing","cyan",[50],"mercstack",{"slug":52,"category":5,"category_label":6,"category_color":7,"featured":8,"author":9,"hero_image":53,"reading_time":11,"title":54,"excerpt":55,"meta_title":56,"meta_desc":57,"tags":58,"products":61},"crm-to-project-management-sales-core","/storage/blog/heroes/crm-to-project-management-sales-core.jpg","From CRM to Project Management: What Happens After the Deal Closes","Most CRMs stop at the signed contract. Sales Core bridges the gap between sales and delivery with activity timelines, contact management, and team assignment that carry straight into project execution.","From CRM to Project Management: Sales Core Handoff | Fimula Blog","How Sales Core bridges the gap between CRM and project management. Same data model, activity timeline, and team management carry from sales into delivery without handoff problems.",[59,60],{"slug":42,"name":43,"color":44},{"slug":46,"name":47,"color":48},[62],"sales-core",{"slug":64,"category":5,"category_label":6,"category_color":7,"featured":8,"author":9,"hero_image":65,"reading_time":66,"title":67,"excerpt":68,"meta_title":69,"meta_desc":70,"tags":71,"products":76},"cold-email-single-model-ai-outreach-multi-llm-advantage","/storage/blog/heroes/cold-email-single-model-ai-outreach-multi-llm-advantage.jpg",8,"Why Single-Model AI Cold Outreach Fails and Multi-LLM Consensus Wins","Most AI outreach tools rely on a single LLM, producing generic emails that get filtered. Multi-model consensus creates natural, varied cold emails that actually reach inboxes.","Why Single-Model AI Cold Outreach Fails: Multi-LLM Consensus | Fimula Blog","Single-LLM AI outreach produces generic emails that get filtered. Multi-model consensus creates natural, varied cold emails with higher deliverability and response rates.",[72,75],{"slug":73,"name":74,"color":44},"ai-llm","AI & LLM",{"slug":42,"name":43,"color":44},[77],"salesagent"]