PageSourceSearch

https://phasoric.com/assets/PrivacyFirstPage-B7boZPJv.js

js phasoric.com collected 2026-09-24 14:51:32 UTC 9,927 bytes, 1 lines download raw bytes

1import{o as x}from"./rolldown-runtime-BNNRdYrd.js";import{b as m,r as p,s as o}from"./react-vendor-BqQF_9sx.js";import{t as r}from"./circle-check-DnG-FWXS.js";import{t as n}from"./database-CD_yMAa0.js";import{t as c}from"./laptop-D5aop2w9.js";import{Bt as i,Ht as h,It as u}from"./index-BQuIkJiK.js";import{t as b}from"./SEO-BHkDYAr3.js";var d={name:"arrow-down-up",size:24,node:[["path",{d:"m3 16 4 4 4-4",key:"1co6wj"}],["path",{d:"M7 20V4",key:"1yoxec"}],["path",{d:"m21 8-4-4-4 4",key:"1c9v7m"}],["path",{d:"M17 4v16",key:"7dpous"}]]};d.node;var l=h(d),C=x(m(),1),e=p(),y=[["Local-only vault","Markdown and derived local intelligence stay in browser-managed storage on this device. Sync and connected processing remain off until you choose them."],["Provider-backed vault","Phasoric keeps a local working cache and syncs the mapped vault to your chosen Google Drive, Dropbox, or GitHub connection where supported."],["Phasoric Hosted vault","Markdown and attachments mapped to Phasoric Hosted are stored for your account, collaboration, recovery, API, or automation features you enable."],["Connected provider context","A bounded set of authorized source excerpts can be retrieved or processed for the request; connecting a provider does not remap every local vault."]],g=[["Local notes and search","No","Local-only editing and lexical search run on the device."],["Local embeddings, OCR, transcription","No, when local processing is selected","Models and derived indexes remain rebuildable local state."],["Provider sync","Yes, by choice","Mapped content goes to the provider selected for that vault."],["Phasoric Hosted sync","Yes, by choice","Only vaults and inputs explicitly mapped to hosted storage use it."],["Connected AI requests","Yes, by choice","Only bounded, authorized context needed for the request is sent."],["Connections retrieval","Yes, on request","The selected connection is queried under its grant and context scope."],["Traffic and measurement","Basic counts; optional deeper measurement","Aggregate visits and limited consent-mode signals continue with either privacy choice. Optional cookies and deeper attribution require consent. Measurement excludes private workspace content."],["Collaboration","Yes, when enabled","Shared hosted workspace state is available to authorized collaborators."],["MCP and API","Yes, for explicit hosted mappings","Hosted interfaces cannot remotely read an unmapped local-only browser vault."]];function _(){return(0,e.jsxs)("div",{className:"min-h-screen bg-[#0B0F19] pb-24 pt-24 text-basalt-100",children:[(0,e.jsx)(b,{title:"Privacy-first product architecture",description:"See what stays on your device, what syncs to storage you choose, and what bounded context connected intelligence may process in Phasoric.",path:"/privacy",keywords:["privacy-first notes","local-first Markdown","private AI workspace"]}),(0,e.jsx)("section",{className:"mx-auto max-w-6xl px-4 py-16 sm:px-6",children:(0,e.jsxs)("div",{className:"max-w-3xl",children:[(0,e.jsxs)("span",{className:"inline-flex items-center gap-2 rounded-full border border-accent-cyan/15 bg-accent-cyan/[.04] px-3 py-1 text-[10px] font-bold uppercase tracking-[.16em] text-accent-cyan",children:[(0,e.jsx)(u,{size:12}),"Privacy-first product"]}),(0,e.jsx)("h1",{className:"mt-6 font-outfit text-4xl font-semibold leading-tight text-white sm:text-6xl",children:"Local-first does not mean local-only."}),(0,e.jsx)("p",{className:"mt-6 text-lg leading-8 text-basalt-400",children:"You decide what stays on-device, what syncs, and what connected intelligence may process. Creating an account does not upload local-only note content or change a vault's storage mode."}),(0,e.jsxs)("div",{className:"mt-8 flex flex-wrap gap-3",children:[(0,e.jsx)(o,{to:"/signup",className:"rounded-xl bg-white px-5 py-3 text-xs font-bold text-black",children:"Start free"}),(0,e.jsx)(o,{to:"/policies/privacy-policy",className:"rounded-xl border border-white/10 px-5 py-3 text-xs font-semibold text-basalt-200",children:"Read the legal Privacy Policy"})]})]})}),(0,e.jsxs)("section",{className:"mx-auto max-w-6xl px-4 py-12 sm:px-6",children:[(0,e.jsx)("h2",{className:"font-outfit text-3xl font-semibold text-white",children:"Where your data can live"}),(0,e.jsx)("div",{className:"mt-7 grid gap-4 md:grid-cols-2",children:y.map(([t,s],a)=>(0,e.jsxs)("article",{className:"rounded-2xl border border-white/[.07] bg-white/[.025] p-6",children:[(0,e.jsxs)("div",{className:"flex items-center gap-3",children:[(0,e.jsx)("span",{className:"flex h-9 w-9 items-center justify-center rounded-xl bg-accent-cyan/[.07] text-accent-cyan",children:a===0?(0,e.jsx)(c,{size:17}):a===1?(0,e.jsx)(i,{size:17}):(0,e.jsx)(n,{size:17})}),(0,e.jsx)("h3",{className:"font-semibold text-white",children:t})]}),(0,e.jsx)("p",{className:"mt-4 text-sm leading-6 text-basalt-400",children:s})]},t))})]}),(0,e.jsxs)("section",{className:"mx-auto max-w-6xl px-4 py-12 sm:px-6","aria-labelledby":"architecture-heading",children:[(0,e.jsx)("h2",{id:"architecture-heading",className:"font-outfit text-3xl font-semibold text-white",children:"Selective, inspectable boundaries"}),(0,e.jsxs)("div",{className:"mt-7 grid items-center gap-4 roun
1ded-3xl border border-accent-cyan/10 bg-gradient-to-br from-accent-cyan/[.04] to-violet-300/[.03] p-6 text-center md:grid-cols-[1fr_auto_1fr_auto_1fr]",children:[(0,e.jsxs)("div",{className:"rounded-2xl border border-white/[.08] bg-black/20 p-5",children:[(0,e.jsx)(c,{className:"mx-auto text-accent-cyan"}),(0,e.jsx)("strong",{className:"mt-3 block text-sm",children:"Your device"}),(0,e.jsx)("span",{className:"mt-2 block text-[11px] text-basalt-400",children:"Local knowledge and private derived indexes"})]}),(0,e.jsxs)("div",{className:"flex flex-col items-center gap-1 text-[9px] uppercase tracking-wider text-basalt-400",children:[(0,e.jsx)(l,{size:18}),(0,e.jsx)("span",{children:"Optional sync"})]}),(0,e.jsxs)("div",{className:"rounded-2xl border border-white/[.08] bg-black/20 p-5",children:[(0,e.jsx)(n,{className:"mx-auto text-emerald-200"}),(0,e.jsx)("strong",{className:"mt-3 block text-sm",children:"Your chosen storage"}),(0,e.jsx)("span",{className:"mt-2 block text-[11px] text-basalt-400",children:"Local, provider-backed, or Phasoric Hosted"})]}),(0,e.jsxs)("div",{className:"flex flex-col items-center gap-1 text-[9px] uppercase tracking-wider text-basalt-400",children:[(0,e.jsx)(l,{size:18}),(0,e.jsx)("span",{children:"Bounded context"})]}),(0,e.jsxs)("div",{className:"rounded-2xl border border-white/[.08] bg-black/20 p-5",children:[(0,e.jsx)(i,{className:"mx-auto text-violet-200"}),(0,e.jsx)("strong",{className:"mt-3 block text-sm",children:"Connected intelligence"}),(0,e.jsx)("span",{className:"mt-2 block text-[11px] text-basalt-400",children:"Only under the selected provider and scope"})]})]})]}),(0,e.jsxs)("section",{className:"mx-auto max-w-6xl px-4 py-12 sm:px-6",children:[(0,e.jsx)("h2",{className:"font-outfit text-3xl font-semibold text-white",children:"What leaves the device, and when"}),(0,e.jsx)("p",{className:"mt-3 max-w-3xl text-sm leading-6 text-basalt-400",children:"The answer depends on the vault, storage mapping, processing route, and feature you choose. This matrix describes product behavior; the legal policy remains authoritative for personal information."}),(0,e.jsx)("div",{tabIndex:0,role:"region","aria-label":"Data transmission and storage boundaries matrix",className:"mt-7 overflow-x-auto rounded-2xl border border-white/[.08]",children:(0,e.jsxs)("table",{className:"w-full min-w-[720px] text-left text-xs",children:[(0,e.jsx)("thead",{className:"bg-white/[.035] text-basalt-300",children:(0,e.jsxs)("tr",{children:[(0,e.jsx)("th",{className:"px-4 py-3",children:"Activity"}),(0,e.jsx)("th",{className:"px-4 py-3",children:"Leaves the device?"}),(0,e.jsx)("th",{className:"px-4 py-3",children:"Boundary"})]})}),(0,e.jsx)("tbody",{className:"divide-y divide-white/[.06]",children:g.map(([t,s,a])=>(0,e.jsxs)("tr",{children:[(0,e.jsx)("th",{className:"px-4 py-4 font-medium text-white",children:t}),(0,e.jsx)("td",{className:"px-4 py-4 text-accent-cyan",children:s}),(0,e.jsx)("td",{className:"px-4 py-4 leading-5 text-basalt-400",children:a})]},t))})]})})]}),(0,e.jsxs)("section",{className:"mx-auto grid max-w-6xl gap-5 px-4 py-12 sm:px-6 lg:grid-cols-2",children:[(0,e.jsxs)("article",{className:"rounded-2xl border border-white/[.07] p-6",children:[(0,e.jsx)("h2",{className:"font-outfit text-2xl font-semibold text-white",children:"AI processing you can choose"}),(0,e.jsx)("ul",{className:"mt-5 space-y-3 text-sm leading-6 text-basalt-400",children:["Use supported local models so source context stays on-device.","Connect your own provider under its credentials and policies.","Use metered Phasoric Hosted intelligence with bounded authorized context.","Inspect and govern Personal AI Memory; inferred items require confirmation.","Source content is treated as evidence data, not as a system instruction."].map(t=>(0,e.jsxs)("li",{className:"flex gap-2",children:[(0,e.jsx)(r,{size:15,className:"mt-1 shrink-0 text-accent-cyan"}),t]},t))})]}),(0,e.jsxs)("article",{className:"rounded-2xl border border-white/[.07] p-6",children:[(0,e.jsx)("h2",{className:"font-outfit text-2xl font-semibold text-white",children:"Controls stay with you"}),(0,e.jsx)("ul",{className:"mt-5 space-y-3 text-sm leading-6 text-basalt-400",children:["Export portable Markdown and attachments.","Choose or change a vault storage mode explicitly.","Disconnect providers and remove their grants.","Inspect AI memory and s
1ource provenance.","Review consequential Forge mutations before execution.","Export hosted data and request account deletion; local and external-provider vaults remain separately controlled."].map(t=>(0,e.jsxs)("li",{className:"flex gap-2",children:[(0,e.jsx)(r,{size:15,className:"mt-1 shrink-0 text-emerald-300"}),t]},t))})]})]})]})}export{_ as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.