[{"data":1,"prerenderedAt":610},["ShallowReactive",2],{"docs-nav":3,"content-query-uPyNEgo4rB":249},[4,8,11,14,18,22,26,30,34,38,42,46,50,54,58,62,66,70,74,78,82,86,90,94,98,102,105,108,111,114,117,120,123,126,129,132,135,138,141,144,147,150,153,156,159,162,165,168,171,174,177,180,183,186,189,192,195,198,201,204,207,210,213,216,219,222,225,228,231,234,237,240,243,246],{"_path":5,"title":6,"order":7},"/docs/getting-started","Getting Started",1,{"_path":9,"title":10,"order":7},"/docs/self-hosting/all-in-one","All-in-One Setup",{"_path":12,"title":13,"order":7},"/docs/views/grid","Grid View",{"_path":15,"title":16,"order":17},"/docs/core-concepts","Core Concepts",10,{"_path":19,"title":20,"order":21},"/docs/crdt","What is a CRDT?",11,{"_path":23,"title":24,"order":25},"/docs/self-hosting/separate-containers","Separate Containers Setup",2,{"_path":27,"title":28,"order":29},"/docs/interface-overview","Interface Overview",20,{"_path":31,"title":32,"order":33},"/docs/global-search","Global Search",22,{"_path":35,"title":36,"order":37},"/docs/filters","Filters",24,{"_path":39,"title":40,"order":41},"/docs/sorting","Sorting",25,{"_path":43,"title":44,"order":45},"/docs/tagging-and-selection","Tagging & Selection",26,{"_path":47,"title":48,"order":49},"/docs/quick-view","Quick View",28,{"_path":51,"title":52,"order":53},"/docs/self-hosting/remote-access-tailscale","Remote Access with Tailscale",3,{"_path":55,"title":56,"order":57},"/docs/block-actions","Block Actions",30,{"_path":59,"title":60,"order":61},"/docs/deleting-blocks","Deleting Blocks & Trash",32,{"_path":63,"title":64,"order":65},"/docs/self-hosting","Self-Hosting",4,{"_path":67,"title":68,"order":69},"/docs/managing-heaps","Managing Heaps",40,{"_path":71,"title":72,"order":73},"/docs/file-scanning","File Scanning & Importing",42,{"_path":75,"title":76,"order":77},"/docs/storage-management","Storage Management",44,{"_path":79,"title":80,"order":81},"/docs/daily-notes","Daily Notes & Calendar",46,{"_path":83,"title":84,"order":85},"/docs/views","Views",60,{"_path":87,"title":88,"order":89},"/docs/authentication","Authentication & User Management",70,{"_path":91,"title":92,"order":93},"/docs/licenses-privacy","Licenses & Privacy",72,{"_path":95,"title":96,"order":97},"/docs/faq","FAQ",80,{"_path":99,"title":100,"order":101},"/docs/changelog","Changelog",99,{"_path":103,"title":104},"/docs/changelog/v16.16.15","v16.16.15",{"_path":106,"title":107},"/docs/changelog/v16.16.34","v16.16.34",{"_path":109,"title":110},"/docs/changelog/v16.16.28","v16.16.28",{"_path":112,"title":113},"/docs/changelog/v16.16.35","v16.16.35",{"_path":115,"title":116},"/docs/changelog/v16.16.32","v16.16.32",{"_path":118,"title":119},"/docs/changelog/v16.8.0","v16.8.0",{"_path":121,"title":122},"/docs/changelog/v16.16.8","v16.16.8",{"_path":124,"title":125},"/docs/changelog/v16.16.27","v16.16.27",{"_path":127,"title":128},"/docs/changelog/v16.16.41","v16.16.41",{"_path":130,"title":131},"/docs/changelog/v16.16.11","v16.16.11",{"_path":133,"title":134},"/docs/changelog/v16.16.14","v16.16.14",{"_path":136,"title":137},"/docs/changelog/v16.16.17","v16.16.17",{"_path":139,"title":140},"/docs/changelog/v16.16.10","v16.16.10",{"_path":142,"title":143},"/docs/changelog/v16.16.20","v16.16.20",{"_path":145,"title":146},"/docs/changelog/v16.6.0","v16.6.0",{"_path":148,"title":149},"/docs/changelog/v16.16.22","v16.16.22",{"_path":151,"title":152},"/docs/changelog/v16.16.6","v16.16.6",{"_path":154,"title":155},"/docs/changelog/v16.16.36","v16.16.36",{"_path":157,"title":158},"/docs/changelog/v16.16.18","v16.16.18",{"_path":160,"title":161},"/docs/changelog/v16.16.38","v16.16.38",{"_path":163,"title":164},"/docs/changelog/v16.16.1","v16.16.1",{"_path":166,"title":167},"/docs/changelog/v16.16.12","v16.16.12",{"_path":169,"title":170},"/docs/changelog/v16.16.31","v16.16.31",{"_path":172,"title":173},"/docs/changelog/v16.16.40","v16.16.40",{"_path":175,"title":176},"/docs/changelog/v16.7.0","v16.7.0",{"_path":178,"title":179},"/docs/changelog/v16.9.0","v16.9.0",{"_path":181,"title":182},"/docs/changelog/v16.16.4","v16.16.4",{"_path":184,"title":185},"/docs/changelog/v16.16.13","v16.16.13",{"_path":187,"title":188},"/docs/changelog/v16.16.37","v16.16.37",{"_path":190,"title":191},"/docs/changelog/v16.16.9","v16.16.9",{"_path":193,"title":194},"/docs/changelog/v16.16.25","v16.16.25",{"_path":196,"title":197},"/docs/changelog/v16.16.24","v16.16.24",{"_path":199,"title":200},"/docs/changelog/v16.16.3","v16.16.3",{"_path":202,"title":203},"/docs/changelog/v16.10.0","v16.10.0",{"_path":205,"title":206},"/docs/changelog/v16.16.16","v16.16.16",{"_path":208,"title":209},"/docs/changelog/v16.16.33","v16.16.33",{"_path":211,"title":212},"/docs/changelog/v16.16.26","v16.16.26",{"_path":214,"title":215},"/docs/changelog/v16.16.43","v16.16.43",{"_path":217,"title":218},"/docs/changelog/v16.11.0","v16.11.0",{"_path":220,"title":221},"/docs/changelog/v16.16.29","v16.16.29",{"_path":223,"title":224},"/docs/changelog/v16.16.5","v16.16.5",{"_path":226,"title":227},"/docs/changelog/v16.16.39","v16.16.39",{"_path":229,"title":230},"/docs/changelog/v16.16.2","v16.16.2",{"_path":232,"title":233},"/docs/changelog/v16.16.7","v16.16.7",{"_path":235,"title":236},"/docs/changelog/v16.16.23","v16.16.23",{"_path":238,"title":239},"/docs/changelog/v16.16.0","v16.16.0",{"_path":241,"title":242},"/docs/changelog/v16.16.30","v16.16.30",{"_path":244,"title":245},"/docs/changelog/v16.16.21","v16.16.21",{"_path":247,"title":248},"/docs/changelog/v16.16.19","v16.16.19",{"_path":15,"_dir":250,"_draft":251,"_partial":251,"_locale":252,"title":16,"description":253,"order":17,"body":254,"_type":604,"_id":605,"_source":606,"_file":607,"_stem":608,"_extension":609},"docs",false,"","Understand the building blocks of Heaper — blocks, heaps, tags, and local-first sync",{"type":255,"children":256,"toc":596},"root",[257,265,271,278,291,299,344,350,362,367,400,412,418,430,453,464,470,482,512,517,523,528,557,568,574,586],{"type":258,"tag":259,"props":260,"children":262},"element","h1",{"id":261},"core-concepts",[263],{"type":264,"value":16},"text",{"type":258,"tag":266,"props":267,"children":268},"p",{},[269],{"type":264,"value":270},"Heaper is built around a few fundamental ideas. Understanding these will help you get the most out of the app.",{"type":258,"tag":272,"props":273,"children":275},"h2",{"id":274},"blocks",[276],{"type":264,"value":277},"Blocks",{"type":258,"tag":266,"props":279,"children":280},{},[281,283,289],{"type":264,"value":282},"Everything in Heaper is a ",{"type":258,"tag":284,"props":285,"children":286},"strong",{},[287],{"type":264,"value":288},"block",{"type":264,"value":290},". Notes, files, images, folders, tags — they're all blocks. This uniform structure means any block can link to any other block, and every block supports the same operations (tagging, mentioning, filtering, etc.).",{"type":258,"tag":266,"props":292,"children":293},{},[294],{"type":258,"tag":284,"props":295,"children":296},{},[297],{"type":264,"value":298},"what blocks can be:",{"type":258,"tag":300,"props":301,"children":302},"ul",{},[303,314,324,334],{"type":258,"tag":304,"props":305,"children":306},"li",{},[307,312],{"type":258,"tag":284,"props":308,"children":309},{},[310],{"type":264,"value":311},"Text Note",{"type":264,"value":313}," — A note or page you create and write in - Title or content is optional write down what you need",{"type":258,"tag":304,"props":315,"children":316},{},[317,322],{"type":258,"tag":284,"props":318,"children":319},{},[320],{"type":264,"value":321},"File",{"type":264,"value":323}," — An image, video, PDF, or any other file",{"type":258,"tag":304,"props":325,"children":326},{},[327,332],{"type":258,"tag":284,"props":328,"children":329},{},[330],{"type":264,"value":331},"Folder",{"type":264,"value":333}," — A collection of other blocks but you can add context for MOCs (Maps of Content) describing what is in the folder.",{"type":258,"tag":304,"props":335,"children":336},{},[337,342],{"type":258,"tag":284,"props":338,"children":339},{},[340],{"type":264,"value":341},"Tag / Mention",{"type":264,"value":343}," — Links between blocks, tags for hierarchical organization and mentions for a network of content linked together as your knowledge graph.",{"type":258,"tag":272,"props":345,"children":347},{"id":346},"heaps",[348],{"type":264,"value":349},"Heaps",{"type":258,"tag":266,"props":351,"children":352},{},[353,355,360],{"type":264,"value":354},"A ",{"type":258,"tag":284,"props":356,"children":357},{},[358],{"type":264,"value":359},"heap",{"type":264,"value":361}," is your top-level workspace/vault — a collection of blocks. You can have multiple heaps for different projects, areas of your life, or teams. They do not share blocks with othe heaps. this lets you separate your data into different workspaces and keep them isolated from each other.",{"type":258,"tag":266,"props":363,"children":364},{},[365],{"type":264,"value":366},"Heaps can be:",{"type":258,"tag":300,"props":368,"children":369},{},[370,380,390],{"type":258,"tag":304,"props":371,"children":372},{},[373,378],{"type":258,"tag":284,"props":374,"children":375},{},[376],{"type":264,"value":377},"Local-only",{"type":264,"value":379}," — Stored entirely on your device",{"type":258,"tag":304,"props":381,"children":382},{},[383,388],{"type":258,"tag":284,"props":384,"children":385},{},[386],{"type":264,"value":387},"Cloud-synced",{"type":264,"value":389}," — Synced to heaper.de",{"type":258,"tag":304,"props":391,"children":392},{},[393,398],{"type":258,"tag":284,"props":394,"children":395},{},[396],{"type":264,"value":397},"self-hosted",{"type":264,"value":399}," — Synced to your own server",{"type":258,"tag":266,"props":401,"children":402},{},[403,405,410],{"type":264,"value":404},"See ",{"type":258,"tag":406,"props":407,"children":408},"a",{"href":67},[409],{"type":264,"value":68},{"type":264,"value":411}," for details on creating and configuring heaps.",{"type":258,"tag":272,"props":413,"children":415},{"id":414},"tags-mentions",[416],{"type":264,"value":417},"Tags & Mentions",{"type":258,"tag":266,"props":419,"children":420},{},[421,423,428],{"type":264,"value":422},"Blocks are connected through ",{"type":258,"tag":284,"props":424,"children":425},{},[426],{"type":264,"value":427},"relations",{"type":264,"value":429},":",{"type":258,"tag":300,"props":431,"children":432},{},[433,443],{"type":258,"tag":304,"props":434,"children":435},{},[436,441],{"type":258,"tag":284,"props":437,"children":438},{},[439],{"type":264,"value":440},"Tags",{"type":264,"value":442}," create a parent-child hierarchy. When you tag block B with tag A, B becomes a child of A. Think of tags as folders that a block can belong to multiple of. The block inherits the tags of the parent allowing for nested tags.",{"type":258,"tag":304,"props":444,"children":445},{},[446,451],{"type":258,"tag":284,"props":447,"children":448},{},[449],{"type":264,"value":450},"Mentions",{"type":264,"value":452}," create bidirectional links. Mentioning block B in block A creates a backlink visible from both sides.",{"type":258,"tag":266,"props":454,"children":455},{},[456,458,462],{"type":264,"value":457},"Tags and mentions are the primary way to organize and navigate your content. See ",{"type":258,"tag":406,"props":459,"children":460},{"href":43},[461],{"type":264,"value":44},{"type":264,"value":463}," for how to apply them.",{"type":258,"tag":272,"props":465,"children":467},{"id":466},"local-first-architecture",[468],{"type":264,"value":469},"Local-First Architecture",{"type":258,"tag":266,"props":471,"children":472},{},[473,475,480],{"type":264,"value":474},"Heaper follows a ",{"type":258,"tag":284,"props":476,"children":477},{},[478],{"type":264,"value":479},"local-first",{"type":264,"value":481}," design:",{"type":258,"tag":483,"props":484,"children":485},"ol",{},[486,491,496,501],{"type":258,"tag":304,"props":487,"children":488},{},[489],{"type":264,"value":490},"All your data lives on your device first",{"type":258,"tag":304,"props":492,"children":493},{},[494],{"type":264,"value":495},"Changes are made locally and are available instantly, even offline",{"type":258,"tag":304,"props":497,"children":498},{},[499],{"type":264,"value":500},"When a network connection is available, changes sync in the background",{"type":258,"tag":304,"props":502,"children":503},{},[504,506,510],{"type":264,"value":505},"Conflicts are resolved automatically using CRDTs (see ",{"type":258,"tag":406,"props":507,"children":508},{"href":19},[509],{"type":264,"value":20},{"type":264,"value":511},")",{"type":258,"tag":266,"props":513,"children":514},{},[515],{"type":264,"value":516},"This means Heaper works without an internet connection. Your data is always accessible, and sync happens transparently when you're back online.",{"type":258,"tag":272,"props":518,"children":520},{"id":519},"servers-vs-clients",[521],{"type":264,"value":522},"Servers vs clients",{"type":258,"tag":266,"props":524,"children":525},{},[526],{"type":264,"value":527},"Heaper can be used with or without a server. with a server your data is synced. acting as the central hub for your data. This allows your clients to just keep previews and metadata and load the full content when needed. This is the recommended way to use Heaper, it allows you to offload the storage of your data to a server and you can use Heaper on multiple devices sharing data across all of them and having a central backup on your NAS or the cloud.",{"type":258,"tag":300,"props":529,"children":530},{},[531,547],{"type":258,"tag":304,"props":532,"children":533},{},[534,539,541],{"type":258,"tag":284,"props":535,"children":536},{},[537],{"type":264,"value":538},"Server",{"type":264,"value":540}," — the server organzies your files in normal folders so you can always access them even without heaper installed. Metadata and notes are stored in a postgres database that you also can fully access yourself if you want the extra control and export options of everything heaper saves.\n",{"type":258,"tag":542,"props":543,"children":544},"em",{},[545],{"type":264,"value":546},"Notes and Metadata are stored this way as filesystems are not capable or combining the concept of files, folders and notes into a single unit which would break the useablitity of the files",{"type":258,"tag":304,"props":548,"children":549},{},[550,555],{"type":258,"tag":284,"props":551,"children":552},{},[553],{"type":264,"value":554},"Client",{"type":264,"value":556}," — the client is your interface for interacting with your data. it allows you to create, edit, and delete blocks and view your data in a visual way. It is supposed to be the general purpose way to use Heaper for any kind of function. clients store the synced data differently to be space and performance efficient, files are stored in folders including their thumbnials but arent browseable on the client without heaper as only metadata or a thumbnail could be stored and is seamlessly merged in the heaper interface with the downloaded content.",{"type":258,"tag":266,"props":558,"children":559},{},[560,561,566],{"type":264,"value":404},{"type":258,"tag":406,"props":562,"children":563},{"href":63},[564],{"type":264,"value":565},"Self-hosting",{"type":264,"value":567}," for details on how to self-host Heaper.",{"type":258,"tag":272,"props":569,"children":571},{"id":570},"file-scanning",[572],{"type":264,"value":573},"File Scanning",{"type":258,"tag":266,"props":575,"children":576},{},[577,579,584],{"type":264,"value":578},"On selfhosted setups you can map a volume to an existing folder on your server, Heaper ",{"type":258,"tag":284,"props":580,"children":581},{},[582],{"type":264,"value":583},"scans",{"type":264,"value":585}," the filesystem and creates blocks for each file and folder. Thumbnails are generated automatically. The original files stay where they are. This is the fastest way to get large amounts of files into heaper.",{"type":258,"tag":266,"props":587,"children":588},{},[589,590,594],{"type":264,"value":404},{"type":258,"tag":406,"props":591,"children":592},{"href":71},[593],{"type":264,"value":72},{"type":264,"value":595}," for details.",{"title":252,"searchDepth":25,"depth":25,"links":597},[598,599,600,601,602,603],{"id":274,"depth":25,"text":277},{"id":346,"depth":25,"text":349},{"id":414,"depth":25,"text":417},{"id":466,"depth":25,"text":469},{"id":519,"depth":25,"text":522},{"id":570,"depth":25,"text":573},"markdown","content:docs:core-concepts.md","content","docs/core-concepts.md","docs/core-concepts","md",1774954238298]