PageSourceSearch

https://pocketbase.io/docs/

html pocketbase.io collected 2026-09-25 14:56:25 UTC 24,956 bytes, 152 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3<head>
4    <meta charset="UTF-8" />
5    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
7    <!-- Primary Meta Tags -->
8    <meta name="description" content="Open Source backend in 1 file with realtime database, authentication, file storage and admin dashboard">
9
10    <!-- Open Graph / Facebook -->
11    <meta property="og:type" content="website">
12    <meta property="og:title" content="PocketBase - Open Source backend in 1 file">
13    <meta property="og:description" content="Open Source backend in 1 file with realtime database, authentication, file storage and admin dashboard">
14    <meta property="og:image" content="/images/og.png">
15
16    <!-- Twitter -->
17    <meta property="twitter:card" content="summary_large_image">
18    <meta property="twitter:title" content="PocketBase - Open Source backend in 1 file">
19    <meta property="twitter:description" content="Open Source backend in 1 file with realtime database, authentication, file storage and admin dashboard">
20    <meta property="twitter:image" content="/images/og.png">
21
22    <!-- favicon -->
23    <link rel="apple-touch-icon" sizes="180x180" href="/images/favicon/apple-touch-icon.png">
24    <link rel="icon" type="image/png" sizes="32x32" href="/images/favicon/favicon-32x32.png">
25    <link rel="icon" type="image/png" sizes="16x16" href="/images/favicon/favicon-16x16.png">
26    <link rel="manifest" href="/images/favicon/site.webmanifest">
27    <link rel="mask-icon" href="/images/favicon/safari-pinned-tab.svg" color="#000000">
28    <link rel="shortcut icon" href="/images/favicon/favicon.ico">
29    <meta name="msapplication-TileColor" content="#ffffff">
30    <meta name="msapplication-config" content="/images/favicon/browserconfig.xml">
31    <meta name="theme-color" content="#ffffff">
32
33    <!-- preload -->
34    <link rel="preload" href="/fonts/source-sans-pro/source-sans-pro-v18-latin_cyrillic-regular.woff2" as="font" type="font/woff2" crossorigin>
35    <link rel="preload" href="/fonts/source-sans-pro/source-sans-pro-v18-latin_cyrillic-600.woff2" as="font" type="font/woff2" crossorigin>
36    <link rel="preload" href="/fonts/source-sans-pro/source-sans-pro-v18-latin_cyrillic-700.woff2" as="font" type="font/woff2" crossorigin>
37    <link rel="preload" href="/fonts/source-sans-pro/source-sans-pro-v18-latin_cyrillic-italic.woff2" as="font" type="font/woff2" crossorigin>
38    <link rel="preload" href="/fonts/ubuntu-mono/ubuntu-mono-v17-cyrillic_latin-regular.woff2" as="font" type="font/woff2" crossorigin>
39
40    
40<script>
41        // CSS3 animations support check
42        (function () {
43            if (typeof document === "undefined") {
44                return; // serverside rendering
45            }
46
47            let elem = document.createElement("div");
48            let hasAnimation = elem.style.animationName !== undefined;
49
50            if (!hasAnimation) {
51                document.documentElement.classList.add("no-animations");
52            }
53        })();
54    </script>
54
55
56    
56<script>
57        // silent svelte console errors
58        if (typeof window === "undefined") {
59            window = {};
60        }
61        window.Prism = window.Prism || {};
62        window.Prism.manual = true;
63
64        if (typeof navigator !== "undefined" && navigator.userAgentData) {
65            navigator.userAgentData.getHighEntropyValues([
66                "architecture",
67            ]).then((ua) => {
68                window.UA_ARCHITECTURE = ua.architecture
69            });
70        }
71    </script>
71
72
73    
74		<link href="../_app/immutable/assets/2.CShZuLqV.css" rel="stylesheet">
75		<link href="../_app/immutable/assets/main.DgakXc13.css" rel="stylesheet">
76		<link href="../_app/immutable/assets/3.BJdqDXbV.css" rel="stylesheet">
77		<link href="../_app/immutable/assets/6.p_aZJzRV.css" rel="stylesheet">
78		<link rel="modulepreload" href="../_app/immutable/entry/start.27XSoFUf.js">
79		<link rel="modulepreload" href="../_app/immutable/chunks/entry.DD7N_MWi.js">
80		<link rel="modulepreload" href="../_app/immutable/chunks/scheduler.DQkMsCme.js">
81		<link rel="modulepreload" href="../_app/immutable/chunks/index.DXzOHq6C.js">
82		<link rel="modulepreload" href="../_app/immutable/entry/app.DYMvOTrE.js">
83		<link rel="modulepreload" href="../_app/immutable/chunks/index.DidmSOuj.js">
84		<link rel="modulepreload" href="../_app/immutable/nodes/0.hNR2-YDE.js">
85		<link rel="modulepreload" href="../_app/immutable/nodes/2.DmyO4LEA.js">
86		<link rel="modulepreload" href="../_app/immutable/chunks/PageFooter.CpLxiCqj.js">
87		<link rel="modulepreload" href="../_app/immutable/chunks/CommonHelper.ucxL7p6H.js">
88		<link rel="modulepreload" href="../_app/immutable/chunks/preferences.DKIoM6dL.js">
89		<link rel="modulepreload" href="../_app/immutable/chunks/tooltip.RC_5fCRL.js">
90		<link rel="modulepreload" href="../_app/immutable/nodes/3.DygStAXK.js">
91		<link rel="modulepreload" href="../_app/immutable/chunks/stores.BZEZ4v8j.js">
92		<link rel="modulepreload" href="../_app/immutable/chunks/each.DStbqIFS.js">
93		<link rel="modulepreload" href="../_app/immutable/nodes/6.B3DqfHHf.js"><title>Introduction - Docs - PocketBase</title><!-- HEAD_svelte-1az7yaz_START --><!-- HEAD_svelte-1az7yaz_END -->
94
95    
95<script src="/pagefind/pagefind-ui.js"></script>
95
96</head>
97<body>
98    <div class="page-body">  <header class="page-header"><div class="wrapper wrapper-lg"><div class="header-section left"><a href="/" class="logo logo-sm" data-sveltekit-preload-data><img src="/images/logo.svg" alt="PocketBase logo" width="40" height="40"> <span class="txt" data-svelte-h="svelte-omx7fd">Pocket<strong>Base</strong></span> <span class="version">v0.40.4</span></a></div> <div class="header-section center"> <div tabindex="-1" class="form-field searchbar"><div class="form-field-addon prefix" data-svelte-h="svelte-4xuxr"><i class="ri-search-line"></i></div>  <input type="text" class="searchbar-input" placeholder="Search..." value=""> <div tabindex="-1" class="dropdown searchbar-dropdown"><div class="tabs-header compact"><button type="button" class="tab-item active" data-svelte-h="svelte-1gcu78o">Go</button> <button type="button" class="tab-item" data-svelte-h="svelte-1oz4ee9">JavaScript</button></div>  <div id="pagefind_searchwn2yx"></div></div></div></div> <div class="header-section right"><button type="button" class="btn btn-circle btn-secondary responsive-menu-btn" title="Menu"><span></span> <i class="ri-menu-3-fill"></i>  <div class="toggler-container" tabindex="-1" role="menu"></div></button> <nav class="main-menu" data-svelte-h="svelte-1w5krcj"><a href="/faq" class="btn btn-secondary" data-sveltekit-preload-data>FAQ</a> <a href="https://github.com/pocketbase/pocketbase" class="btn btn-circle btn-secondary" target="_blank" rel="noreferrer noopener" title="GitHub Repo"><i class="ri-github-line"></i></a> <a href="/docs" class="btn btn-outline" data-sveltekit-preload-data><span class="txt">Documentation</span></a></nav></div></div></header> <main class="wrapper wrapper-lg page-content-wrapper"> <aside class="page-sidebar highlight docs-sidebar"><div class="sticky-wrapper svelte-kkdbbm"><div class="sidebar-content"><nav class="sidebar-list">  <a href="/docs" class="list-item active"> <span class="icon"><i class="ri-home-2-line"></i></span> <span class="txt">Introduction</span> </a>  <a href="/docs/how-to-use" class="sub-list-item"> <span class="tree-node">├</span>   How to use PocketBase  </a> <a href="/docs/collections" class="sub-list-item"> <span class="tree-node">├</span>   Collections  </a> <a href="/docs/api-rules-and-filters" class="sub-list-item"> <span class="tree-node">├</span>   API rules and filters  </a> <a href="/docs/authentication" class="sub-list-item"> <span class="tree-node">├</span>   Authentication  </a> <a href="/docs/files-handling" class="sub-list-item"> <span class="tree-node">├</span>   Files upload and handling  </a> <a href="/docs/working-with-relations" class="sub-list-item"> <span class="tree-node">├</span>   Working with relations  </a> <a href="/docs/use-as-framework" class="sub-list-item"> <span class="tree-node">└</span>   Extending PocketBase  </a>  <a href="/docs/going-to-production" class="list-item"> <span class="icon"><i class="ri-check-double-line"></i></span> <span class="txt">Going to production</span> </a>   <a href="/docs/api-records" class="list-item"> <span class="icon"><i class="ri-file-list-2-line"></i></span> <span class="txt">Web APIs reference</span> </a> </nav> <div class="clearfix m-t-base"></div> <div class="sidebar-bg-section"><div class="tabs-header stretched compact"><a class="tab-item active" href="/docs/go-overview" data-svelte-h="svelte-1qkrccu"><div class="block">Extend with
99                            <br> <strong>Go</strong></div></a> <a class="tab-item" href="/docs/js-overview" data-svelte-h="svelte-qrgnnx"><div class="block">Extend with
100                            <br> <strong>JavaScript</strong></div></a></div> <div class="tabs-content"><div class="tab-item active"><nav class="sidebar-list">  <a href="/docs/go-overview" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Overview</span> </a>   <a href="/docs/go-event-hooks" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Event hooks</span> </a>   <a href="/docs/go-routing" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Routing</span> </a>   <a href="/docs/go-database" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Database</span> </a>   <a href="/docs/go-records" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Record operations</span> </a>   <a href="/docs/go-collections" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Collection operations</span> </a>   <a href="/docs/go-migrations" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Migrations</span> </a>   <a href="/docs/go-jobs-scheduling" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Jobs scheduling</span> </a>   <a href="/docs/go-sending-emails" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Sending emails</span> </a>   <a href="/docs/go-rendering-templates" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Rendering templates</span> </a>   <a href="/docs/go-console-commands" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Console commands</span> </a>   <a href="/docs/go-realtime" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Realtime messaging</span> </a>   <a href="/docs/go-filesystem" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Filesystem</span> </a>   <a href="/docs/go-logging" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Logging</span> </a>   <a href="/docs/go-testing" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Testing</span> </a>   <a href="/docs/go-miscellaneous" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Miscellaneous</span> </a>   <a href="/docs/go-record-proxy" class="list-item"><span class="label label-sm label-info svelte-kkdbbm" data-svelte-h="svelte-w71e23">Go</span>  <span class="txt">Record proxy</span> </a> </nav></div> <div class="tab-item"><nav class="sidebar-list">  <a href="/docs/js-overview" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Overview</span> </a>   <a href="/docs/js-event-hooks" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Event hooks</span> </a>   <a href="/docs/js-routing" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Routing</span> </a>   <a href="/docs/js-database" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Database</span> </a>   <a href="/docs/js-records" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Record operations</span> </a>   <a href="/docs/js-collections" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Collection operations</span> </a>   <a href="/docs/js-migrations" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Migrations</span> </a>   <a href="/docs/js-jobs-scheduling" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Jobs scheduling</span> </a>   <a href="/docs/js-sending-emails" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Sending emails</span> </a>   <a href="/docs/js-rendering-templates" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Rendering templates</span> </a>   <a href="/docs/js-console-commands" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Console commands</span> </a>   <a href="/docs/js-sending-http-requests" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Sending HTTP requests</span> </a>   <a href="/docs/js-realtime" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Realtime messaging</span> </a>   <a href="/docs/js-filesystem" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Filesystem</span> </a>   <a href="/docs/js-logging" class="list-item"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Logging</span> </a>   <a href="/jsvm/index.html" class="list-item" target="_blank" rel="noopener noreferrer"><span class="label label-sm label-warning svelte-kkdbbm" data-svelte-h="svelte-13cfr2c">JS</span>  <span class="txt">Types reference</span> </a> </nav></div></div></div></div></div> </aside> <div class="page-content"><nav class="breadcrumbs"><div class="breadcrumb-item">Introduction</div></nav> <div class="content" data-pagefind-body data-tag-javascript="javascript" data-tag-go="go" data-tag-other="other" data-pagefind-filter="tag[data-tag-javascript],tag[data-tag-go],tag[data-tag-other]"><span class="hidden" data-pagefind-meta="title">Introduction</span> <div class="alert alert-danger m-b-sm" data-svelte-h="svelte-adb8av"><div class="icon"><i class="ri-alert-line"></i></div> <div class="content"><p>Please keep in mind that PocketBase is still under active development and full backward
101            compatibility is not guaranteed before reaching v1.0.0. PocketBase is NOT recommended for
102            production critical applications yet, unless you are fine with reading the
103            <a href="https://github.com/pocketbase/pocketbase/blob/master/CHANGELOG.md" class="txt-bold" target="_blank" rel="noopener noreferrer">changelog</a>
104            and applying some manual migration steps from time to time.</p></div></div> <p data-svelte-h="svelte-wagc87">PocketBase is an open source backend consisting of embedded database (SQLite) with realtime subscriptions,
105    builtin auth management, convenient dashboard UI and simple REST-ish API. It can be used both as Go
106    framework and as standalone application.</p> <p data-svelte-h="svelte-k5o6b7">The easiest way to get started is to download the prebuilt minimal PocketBase executable:</p> <div class="tabs compact tabs-architecture m-b-sm svelte-q6wypr"><div class="tabs-header left"><button type="button" class="tab-item svelte-q6wypr active" data-svelte-h="svelte-177f19e">x64</button> <button type="button" class="tab-item svelte-q6wypr" data-svelte-h="svelte-gxpiiw">ARM64</button></div> <div class="tabs-content"><div class="tab-item svelte-q6wypr active"><ul><li><div class="inline-flex flex-gap-5"><a href="https://github.com/pocketbase/pocketbase/releases/download/v0.40.4/pocketbase_0.40.4_linux_amd64.zip" class="inline-flex flex-gap-5 txt-bold" target="_blank" rel="noreferrer noopener"><i class="ri-qq-fill"></i> <span class="txt">Download v0.40.4 for Linux x64</span></a> <small class="txt-hint">(~12MB zip)</small></div></li> <li><div class="inline-flex flex-gap-5"><a href="https://github.com/pocketbase/pocketbase/releases/download/v0.40.4/pocketbase_0.40.4_windows_amd64.zip" class="inline-flex flex-gap-5 txt-bold" target="_blank" rel="noreferrer noopener"><i class="ri-windows-fill"></i> <span class="txt">Download v0.40.4 for Windows x64</span></a> <small class="txt-hint">(~12MB zip)</small></div></li> <li><div class="inline-flex flex-gap-5"><a href="https://github.com/pocketbase/pocketbase/releases/download/v0.40.4/pocketbase_0.40.4_darwin_amd64.zip" class="inline-flex flex-gap-5 txt-bold" target="_blank" rel="noreferrer noopener"><i class="ri-apple-fill"></i> <span class="txt">Download v0.40.4 for macOS x64</span></a> <small class="txt-hint">(~12MB zip)</small></div></li></ul></div> <div class="tab-item svelte-q6wypr"><ul><li><div class="inline-flex flex-gap-5"><a href="https://github.com/pocketbase/pocketbase/releases/download/v0.40.4/pocketbase_0.40.4_linux_arm64.zip" class="inline-flex flex-gap-5 txt-bold" target="_blank" rel="noreferrer noopener"><i class="ri-qq-fill"></i> <span class="txt">Download v0.40.4 for Linux ARM64</span></a> <small class="txt-hint">(~11MB zip)</small></div></li> <li><div class="inline-flex flex-gap-5"><a href="https://github.com/pocketbase/pocketbase/releases/download/v0.40.4/pocketbase_0.40.4_windows_arm64.zip" class="inline-flex flex-gap-5 txt-bold" target="_blank" rel="noreferrer noopener"><i class="ri-windows-fill"></i> <span class="txt">Download v0.40.4 for Windows ARM64</span></a> <small class="txt-hint">(~11MB zip)</small></div></li> <li><div class="inline-flex flex-gap-5"><a href="https://github.com/pocketbase/pocketbase/releases/download/v0.40.4/pocketbase_0.40.4_darwin_arm64.zip" class="inline-flex flex-gap-5 txt-bold" target="_blank" rel="noreferrer noopener"><i class="ri-apple-fill"></i> <span class="txt">Download v0.40.4 for macOS ARM64</span></a> <small class="txt-hint">(~11MB zip)</small></div></li></ul></div></div></div> <p class="txt-sm txt-hint" data-svelte-h="svelte-1momfdh">See the
107    <a href="https://github.com/pocketbase/pocketbase/releases" target="_blank" rel="noreferrer noopener">GitHub Releases page</a>
108    for other platforms and more details.</p> <hr> <p data-svelte-h="svelte-1v2nc9y">Once you&#39;ve extracted the archive, you could start the application by running
109    <code><strong>./pocketbase serve</strong></code> in the extracted directory.</p> <p data-svelte-h="svelte-vpbt2k"><strong>And that&#39;s it!</strong>
110    The first time it will generate an installer link that should be automatically opened in the browser to set
111    up your first superuser account
112    <small class="txt-hint">
112(you can also create the first superuser manually via
113        <code>./pocketbase superuser create EMAIL PASS</code>)
114    </small>.</p> <p data-svelte-h="svelte-umtohu">The started web server has the following default routes:</p> <div class="alert m-t-10 m-b-xs" data-svelte-h="svelte-1e6lwtp"><div class="content"><ul><li class="m-b-5"> <a href="http://127.0.0.1:8090" target="_blank"><code>http://127.0.0.1:8090</code></a>
115                - if <code>pb_public</code> directory exists, serves the static content from it (html, css, images,
116                etc.)</li> <li class="m-b-5"> <a href="http://127.0.0.1:8090/_/" target="_blank"><code>http://127.0.0.1:8090/_/</code></a>
117                - superusers dashboard</li> <li> <a href="http://127.0.0.1:8090/api/" target="_blank"><code>http://127.0.0.1:8090/api/</code></a>
118                - REST-ish API</li></ul></div></div> <p data-svelte-h="svelte-1b7ycmh">The prebuilt PocketBase executable will create and manage 2 new directories alongside the executable:</p> <ul data-svelte-h="svelte-1jwnyel"><li><code>pb_data</code> - stores your application data, uploaded files, etc. (usually should be added in
119        <code>.gitignore</code>).</li> <li><code>pb_migrations</code> - contains JS migration files with your collection changes (can be safely
120        committed in your repository).
121        <br> <div class="txt-hint m-b-xs">You can even write custom migration scripts. For more info check the
122            <a href="/docs/js-migrations">JS migrations docs</a>.</div></li></ul> <p data-svelte-h="svelte-pd3yee">You could find all available commands and their options by running
123    <code>./pocketbase --help</code> or
124    <code>./pocketbase [command] --help</code> </p></div> <hr> <div class="docs-footer svelte-1dbn67j" data-pagefind-ignore> <a href="/docs/how-to-use" class="btn btn-outline btn-expanded btn-next svelte-1dbn67j"><span class="txt">Next: How to use PocketBase</span> <i class="ri-arrow-right-line"></i></a> </div></div></main> <footer class="page-footer"><div class="wrapper wrapper-lg"><div class="primary-bar"><nav class="footer-col links" data-svelte-h="svelte-3s56aa"><a href="/faq" class="link-item">FAQ</a> <a href="https://github.com/pocketbase/pocketbase/discussions" class="link-item" target="_blank" rel="noopener noreferrer">Discussions</a> <a href="/docs" class="link-item">Documentation</a></nav> <nav class="footer-col links" data-svelte-h="svelte-1ie6rey"><a href="https://github.com/pocketbase/js-sdk" class="link-item" target="_blank" rel="noopener noreferrer">JavaScript SDK</a> <a href="https://github.com/pocketbase/dart-sdk" class="link-item" target="_blank" rel="noopener noreferrer">Dart SDK</a></nav> <div class="footer-col socials"><div class="watermark-logo" data-svelte-h="svelte-tfgzzj">Pocket<strong>Base</strong></div> <a href="mailto:support" class="btn btn-secondary btn-circle btn-hint social-item" aria-label="Contact support"><i class="ri-mail-line"></i></a> <a href="https://github.com/pocketbase/pocketbase" rel="noopener noreferrer" target="_blank" class="btn btn-secondary btn-circle btn-hint social-item" aria-label="Go to GitHub" data-svelte-h="svelte-liy1aj"><i class="ri-github-line"></i></a></div></div> <div class="secondary-bar"><div class="terms"><span class="txt">© 2023-2026 Pocket<strong data-svelte-h="svelte-1d8skxd">Base</strong></span> <span class="gopher-credit" data-svelte-h="svelte-3v1v6q">The Gopher artwork is from
125                    <a href="https://github.com/marcusolsson/gophers" target="_blank" rel="noreferrer noopener">marcusolsson/gophers</a></span></div> <div class="flex-fill"></div> <div class="credit" data-svelte-h="svelte-18tjksi">Crafted by <a href="https://gani.bg" target="_blank" rel="noopener noreferrer" class="link-hint"><strong>Gani</strong></a></div></div></div></footer>  <button type="button" class="btn btn-lg btn-circle btn-secondary scroll-to-top svelte-1fubo8o" arial-label="Go to top" data-svelte-h="svelte-tty6dx"><i class="ri-arrow-up-line"></i> </button> 
126			
127			
127<script>
128				{
129					__sveltekit_1hyl16n = {
130						base: new URL("..", location).pathname.slice(0, -1)
131					};
132
133					const element = document.currentScript.parentElement;
134
135					const data = [null,null,null,null];
136
137					Promise.all([
138						import("../_app/immutable/entry/start.27XSoFUf.js"),
139						import("../_app/immutable/entry/app.DYMvOTrE.js")
140					]).then(([kit, app]) => {
141						kit.start(app, element, {
142							node_ids: [0, 2, 3, 6],
143							data,
144							form: null,
145							error: null
146						});
147					});
148				}
149			</script>
149
150		</div>
151</body>
152</html>

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.