diff --git a/build/content.mjs b/build/content.mjs index 20f11c0..2f9abca 100644 --- a/build/content.mjs +++ b/build/content.mjs @@ -16,6 +16,7 @@ const currentYear = new Date().getFullYear(); ["software", "Software", "software.html"], ["exchanges", "Exchanges", "exchanges.html"], ["glossary", "Glossary", "glossary.html"], + ["entropy", "Workshop", "entropy.html"], ["dashboard", "Dashboard", "dashboard.html"], ["contact", "Get Help", "contact.html"] ]; @@ -187,147 +188,20 @@ const currentYear = new Date().getFullYear(); const pages = { home: { title: "SelfCustody.ca | Control Your Money", - description: "Clear, practical guidance for learning how to buy bitcoin, choose a wallet, protect recovery material, and withdraw to self custody.", + description: "Start in the cockpit: pick a destination, or fly the Quickstart route into your first self-custody guide.", + /* The cockpit is the site's front door. The launch that precedes it is a + separate route (launch.html) rather than markup hidden on this page, + so the approved entrance keeps its own timing and this page stays the + thing you come back to. assets/js/home-entrance.js decides which of the + two a visit lands on. */ content: ` - ${hero( - "", - `EXITFIAT - ENTERBITCOIN`, - "Your keys, your coins.
Learn how to buy, move, and protect
your bitcoin without turning security into a full time job.", - `Explore Guides - Get Help`, - { - src: "assets/img/cash-vortex/exchanges-cash-vortex-final3.mp4", - type: "video/mp4", - poster: "assets/img/cash-vortex/exchanges-cash-vortex.png", - alt: "", - width: 1616, - height: 1072, - video: true, - background: true - } - )} - -
-
-
-
-
- First steps -

Learn the Basics

-

Bitcoin can feel like an endless rabbit hole. Start with our step-by-step Quickstart guide, or dive into our recommended topic-specific guides. Learn at your own pace and go deeper when you’re ready.

- -
-
- -
-
-
- -
- -
-
- Explore -

Everything in One Place

-

Learn the system and check live network data when you are ready to act.

-
-
- ${homeExploreCard({ icon: "bi-signpost-split", title: "Guides", text: "Follow practical walkthroughs from first principles and first withdrawals to multisig, privacy, and inheritance.", href: "guides.html", linkText: "Browse guides", image: "assets/img/guides-library-hero.jpg" }).trim()} - ${homeExploreCard({ icon: "bi-stack", title: "Glossary", text: "Look up the language of bitcoin custody, transactions, wallets, backups, privacy, and network operation.", href: "glossary.html", linkText: "Search the glossary", image: "assets/img/glossary-hero.jpg" }).trim()} - ${homeExploreCard({ icon: "bi-graph-up", title: "Live Dashboard", text: "Check current network conditions, fees, blocks, supply, and other useful bitcoin data in one view.", href: "dashboard.html", linkText: "Open dashboard", image: "assets/img/dashboard-network-preview-v3.jpg" }).trim()} -
-
- Compare -

Compare hardware devices, wallet software, and Canadian buying options by custody model, compatibility, privacy, workflow, and tradeoffs.

-
-
- ${homeExploreCard({ icon: "bi-shield-lock", title: "Hardware Devices", text: "Compare signing devices by security model, workflow, openness, recovery design, and the tradeoffs each one makes.", href: "devices.html", linkText: "Compare devices", image: "assets/img/devices-hero.jpg" }).trim()} - ${homeExploreCard({ icon: "bi-window", title: "Wallet Software", text: "Find mobile and desktop wallets that match your device, privacy needs, node setup, and transaction workflow.", href: "software.html", linkText: "Compare software", image: "assets/img/software-hero.jpg" }).trim()} - ${homeExploreCard({ icon: "bi-bank", title: "Canadian Exchanges", text: "Compare Canadian buying routes by custody model, funding methods, purchase flow, and withdrawal experience.", href: "exchanges.html", linkText: "Compare exchanges", image: "assets/img/exchanges-hero.jpg" }).trim()} -
-
-
- - ${renderToolsBand({ home: true })} - -
-
-
- Our standard -

Built to Inform, Not Persuade

-

Self-custody has no universal setup. We explain the options, the risks, and the tradeoffs that matter—so you can decide for yourself.

-
-
-
Education-first

Understand Before Acting

Learn the model before choosing a product or moving money.

-
Transparent

See the Tradeoffs

Workflow, privacy, custody, and compatibility are shown directly.

-
Security boundary

Your Secrets Stay Yours

This site never asks for your recovery words or private keys.

-
Safer habits

Testing and Backups

Verify on-device, start small, and prove recovery before storing meaningful savings.

-
-
-
- -
-
-
-
-
-
- One-on-one guidance -

Need Help?

-

Get practical guidance choosing a wallet, setting up a device, reviewing a backup, or rehearsing a transaction—while you remain in control of every step.

- Get Help -
-
-
-
-

Get help with

-
    -
  • Hardware wallet selection
  • -
  • Software wallets
  • -
  • Multisig planning
  • -
  • Seed generation
  • -
  • Guided device setup
  • -
  • Address verification
  • -
  • Backups
  • -
  • Passphrases
  • -
  • Privacy basics
  • -
  • Test transactions
  • -
  • Exchange withdrawals
  • -
  • Recovery
  • -
-
-
-
-
- Your keys, your coins. -

We guide while you operate your own devices. We never ask for your recovery words or private keys—and never hold or move bitcoin for you.

-
-
-
-
- -
- -
-

- CONTROL YOUR MONEY -

-

Follow the first steps: create a wallet, back it up, prove you can recover it, and only then receive bitcoin.

- -
-
` +
+ + + + + Back to launch + ` }, guides: { @@ -1865,6 +1739,47 @@ const renderGlossaryCards = () => glossaryTerms.map(term => ` ` }; + /* The rocket entrance. A route of its own rather than markup hidden inside + index.html, so the approved launch keeps its own timing and the cockpit + stays the page people return to. assets/js/home-entrance.js sends the + first visit of a tab here and every later one straight to the cockpit. + + Markup is the approved launchpad unchanged -- the scene, its patches, the + porthole mask and the transition video. noindex in the , because the + page people should find is the cockpit. */ + pages.launch = { + title: "Launch into Bitcoin | SelfCustody.ca", + description: "The launch into SelfCustody.ca.", + content: ` +
+

Exit Fiat. Enter Bitcoin.

+ +
+ + + + +
+ + + + + +
+
+
+
+ + + + + +
+
+
+` + }; + /* Temporary holding page. Keep the full contact-page definition above in place so it can be restored when booking and support are ready to open. */ pages.contact = { @@ -1902,19 +1817,27 @@ const renderGlossaryCards = () => glossaryTerms.map(term => ` pages at the root, "../" for everything under docs/guides/. Pages there are otherwise identical, so the whole difference is threaded through here rather than duplicated into a second header. */ + /* Read by assets/js/home-entrance.js. A fragment rather than a query so the + cockpit keeps one canonical URL, and the script clears it from the address + bar once it has been honoured. */ + const COCKPIT_HASH = "#cockpit"; + const renderHeader = (pageKey, base = "") => { const links = routes.map(([key, label, href]) => { - if (["software", "exchanges"].includes(key)) return ""; + if (["software", "exchanges", "glossary"].includes(key)) return ""; if (key === "guides") { const menuActive = pageKey === "guides" ? "active" : ""; const items = guideCategories .map(cat => { - /* "Start here" is the hub's first section, so everything above - it -- the hero and the finder -- is part of starting. It gets - the top of the page rather than a jump past them; the rest - stay jump links to their own section. */ - const target = cat.key === "fundamentals" ? `${base}guides.html` : `${base}guides.html#${cat.key}`; - return `
  • ${cat.label}
  • `; + /* The first row used to be "Start here", pointing at the top of + the hub -- which is where the label above now goes, so the row + duplicated its own parent. It is Quickstart instead, going + straight to the guide that starts someone off. The rest stay + jump links to their own section. */ + if (cat.key === "fundamentals") { + return `
  • Quickstart
  • `; + } + return `
  • ${cat.label}
  • `; }) .join("\n "); /* The two entropy tools are not guide categories -- the items above are @@ -1927,17 +1850,23 @@ const renderGlossaryCards = () => glossaryTerms.map(term => ` guides.html that promotes them. From anywhere else on the site, following that band would mean landing on the hub and scrolling past six sections to reach a link to the real page. */ - const entropyGroup = `
  • Entropy Workshop
  • `; - /* Same shape as Compare: the label only opens the list. The hub - itself is still one click away as "Start here", the first item - in the list, so nothing needs the label to be a link too. */ - return `
  • - - @@ -322,6 +323,7 @@

    Explore

  • Software
  • Exchanges
  • Glossary
  • +
  • Workshop
  • Dashboard
  • Get Help
  • @@ -343,9 +345,9 @@

    Important!

    - + - + diff --git a/docs/cockpit-scene.html b/docs/cockpit-scene.html new file mode 100644 index 0000000..cdfa01f --- /dev/null +++ b/docs/cockpit-scene.html @@ -0,0 +1,99 @@ + +Quickstart — quick follow study + + + + + + + +
    +
    + +

    Your keys, your coins.

    Learn how to buy, move, and protect your bitcoin without turning security into a full time job.

    + + + + + +

    +
    + +
    JUMP STUDYReady to jumpClick Quickstart or Play to preview the route.
    + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/coinkite.html b/docs/coinkite.html index e0d75c2..63644bd 100755 --- a/docs/coinkite.html +++ b/docs/coinkite.html @@ -25,33 +25,34 @@ - - - + + + - - + + diff --git a/docs/contact.html b/docs/contact.html index ef710e8..95103d5 100755 --- a/docs/contact.html +++ b/docs/contact.html @@ -25,33 +25,34 @@ - - - + + + - - + + diff --git a/docs/dashboard.html b/docs/dashboard.html index f977eaf..3b1b410 100644 --- a/docs/dashboard.html +++ b/docs/dashboard.html @@ -26,33 +26,34 @@ - - - + + + - - + + diff --git a/docs/devices.html b/docs/devices.html index de8407c..c26fc6c 100755 --- a/docs/devices.html +++ b/docs/devices.html @@ -25,33 +25,34 @@ - - - + + + - - + + diff --git a/docs/entropy.html b/docs/entropy.html index 21829f0..9265274 100644 --- a/docs/entropy.html +++ b/docs/entropy.html @@ -35,9 +35,9 @@ - - - + + +