feat: Added netlify deployment docs
5671b31b
2 file(s) · +212 −120
| 1 | + | # Netlify |
|
| 2 | + | ||
| 3 | + | One of the classic static site providers still gives developers a great experience for deploying sites, including your bhvr client! There are multiple ways you can deploy your client package to Netlify: |
|
| 4 | + | - Netlify CLI |
|
| 5 | + | - Git Provider |
|
| 6 | + | ||
| 7 | + | ## CLI Method |
|
| 8 | + | ||
| 9 | + | The Netlify CLI will help setup a new project on Netlify and create Git webhooks so with every push it will deploy a new version automatically. To enable this for your bhvr project follow these steps. |
|
| 10 | + | ||
| 11 | + | ::::steps |
|
| 12 | + | ||
| 13 | + | ### Install `netlify-cli` |
|
| 14 | + | ||
| 15 | + | Install the `netlify-cli` globally so you can use it with your projects |
|
| 16 | + | ||
| 17 | + | ```bash [terminal] |
|
| 18 | + | bun add -g netlify-cli |
|
| 19 | + | ``` |
|
| 20 | + | ||
| 21 | + | ### Run Initialization |
|
| 22 | + | ||
| 23 | + | Move into the `client` package and run the initialization commmand to setup a new project |
|
| 24 | + | ||
| 25 | + | ```bash [terminal] |
|
| 26 | + | cd client |
|
| 27 | + | ntl init |
|
| 28 | + | ``` |
|
| 29 | + | ||
| 30 | + | Make sure when setting up the project that the `Directory to Deploy` is `dist` |
|
| 31 | + | ||
| 32 | + | ```bash [terminal] |
|
| 33 | + | ? Base directory `(blank for current dir): client |
|
| 34 | + | ? Your build command (hugo build/yarn run build/etc): bun run build |
|
| 35 | + | ? Directory to deploy (blank for current dir): dist |
|
| 36 | + | ``` |
|
| 37 | + | ||
| 38 | + | ### Deploy |
|
| 39 | + | ||
| 40 | + | If you setup the Git provider connection offered through the CLI you can just push commits and it will deploy instances. You can also do it through the CLI through the following command in the `client` package: |
|
| 41 | + | ||
| 42 | + | ```bash [terminal] |
|
| 43 | + | ntl deploy |
|
| 44 | + | ``` |
|
| 45 | + | ||
| 46 | + | If you want to deploy to production use the `--prod` flag |
|
| 47 | + | ||
| 48 | + | ```bash [terminal] |
|
| 49 | + | ntl deploy --prod |
|
| 50 | + | ``` |
|
| 51 | + | ||
| 52 | + | :::: |
|
| 53 | + | ||
| 54 | + | ## Git Provider |
|
| 55 | + | ||
| 56 | + | If you prefer a flow similar to something like Vercel where you get deployments on commits you can use the Git provider flow |
|
| 57 | + | ||
| 58 | + | ::::steps |
|
| 59 | + | ||
| 60 | + | ### Start Project |
|
| 61 | + | ||
| 62 | + | From the Projects dashboard click on the `Add new project` button in the top right and select the `Import an existing project` option. |
|
| 63 | + | ||
| 64 | + |  |
|
| 65 | + | ||
| 66 | + | Connect with your Git provider and locate your bhvr project |
|
| 67 | + | ||
| 68 | + | ### Confirm Build Settings |
|
| 69 | + | ||
| 70 | + | After selecting your project make sure the build settings are correct. Generally these are ready out of the box as Netlify will detect what you need. |
|
| 71 | + | ||
| 72 | + |  |
|
| 73 | + | ||
| 74 | + | ||
| 75 | + | ### Deploy |
|
| 76 | + | ||
| 77 | + | After confirming the settings Netlify should deploy a new instance with a URL you can visit! |
|
| 78 | + | ||
| 79 | + |  |
|
| 80 | + | ||
| 81 | + | :::: |
|
| 82 | + | ||
| 83 | + | ::::tip |
|
| 84 | + | [Check out the Vite Docs for more info and tips](https://vite.dev/guide/static-deploy#github-pages) |
|
| 85 | + | :::: |
| 1 | 1 | import { defineConfig } from "vocs"; |
|
| 2 | 2 | ||
| 3 | 3 | export default defineConfig({ |
|
| 4 | - | title: "bhvr", |
|
| 5 | - | baseUrl: "https://bhvr.dev", |
|
| 6 | - | description: "A stack made for the open web", |
|
| 7 | - | iconUrl: "/icon.png", |
|
| 8 | - | logoUrl: { |
|
| 9 | - | dark: "/logo-dark.svg", |
|
| 10 | - | light: "/logo-light.svg", |
|
| 11 | - | }, |
|
| 12 | - | ogImageUrl: "/og.png", |
|
| 13 | - | head({ path }) { |
|
| 14 | - | const fcData = JSON.stringify({ |
|
| 15 | - | version: "next", |
|
| 16 | - | imageUrl: "https://bhvr.dev/image.png", |
|
| 17 | - | button: { |
|
| 18 | - | title: "bhvr", |
|
| 19 | - | action: { |
|
| 20 | - | type: "launch_frame", |
|
| 21 | - | name: "bhvr", |
|
| 22 | - | url: `https://bhvr.dev${path}`, |
|
| 23 | - | splashImageUrl: "https://bhvr.dev/splash.png", |
|
| 24 | - | splashBackgroundColor: "#121113", |
|
| 25 | - | }, |
|
| 26 | - | }, |
|
| 27 | - | }); |
|
| 28 | - | return <meta name="fc:frame" content={fcData} />; |
|
| 29 | - | }, |
|
| 30 | - | socials: [ |
|
| 31 | - | { |
|
| 32 | - | icon: "github", |
|
| 33 | - | link: "https://github.com/stevedylandev/bhvr", |
|
| 34 | - | }, |
|
| 35 | - | ], |
|
| 36 | - | markdown: { |
|
| 37 | - | code: { |
|
| 38 | - | themes: { |
|
| 39 | - | light: "vitesse-light", |
|
| 40 | - | dark: "vitesse-dark", |
|
| 41 | - | }, |
|
| 42 | - | }, |
|
| 43 | - | }, |
|
| 44 | - | theme: { |
|
| 45 | - | colorScheme: "dark", |
|
| 46 | - | accentColor: "#BD976A", |
|
| 47 | - | }, |
|
| 48 | - | editLink: { |
|
| 49 | - | pattern: "https://github.com/stevedylandev/bhvr-docs/edit/main/docs/pages/:path", |
|
| 50 | - | text: "Edit on GitHub", |
|
| 51 | - | }, |
|
| 52 | - | topNav: [ |
|
| 53 | - | { |
|
| 54 | - | text: "0.3.0", |
|
| 55 | - | items: [{ text: "Contribute", link: "https://github.com/stevedylandev/bhvr" }], |
|
| 56 | - | }, |
|
| 57 | - | ], |
|
| 58 | - | sidebar: [ |
|
| 59 | - | { |
|
| 60 | - | text: "Getting Started", |
|
| 61 | - | link: "/getting-started", |
|
| 62 | - | }, |
|
| 63 | - | { |
|
| 64 | - | text: "Why bhvr?", |
|
| 65 | - | link: "/why-bhvr", |
|
| 66 | - | }, |
|
| 67 | - | { |
|
| 68 | - | text: "Packages", |
|
| 69 | - | collapsed: false, |
|
| 70 | - | items: [ |
|
| 71 | - | { |
|
| 72 | - | text: "server", |
|
| 73 | - | link: "/packages/server", |
|
| 74 | - | }, |
|
| 75 | - | { |
|
| 76 | - | text: "client", |
|
| 77 | - | link: "/packages/client", |
|
| 78 | - | }, |
|
| 79 | - | { |
|
| 80 | - | text: "shared", |
|
| 81 | - | link: "/packages/shared", |
|
| 82 | - | }, |
|
| 83 | - | ], |
|
| 84 | - | }, |
|
| 85 | - | { |
|
| 86 | - | text: "Deployment", |
|
| 87 | - | collapsed: false, |
|
| 88 | - | items: [ |
|
| 89 | - | { |
|
| 90 | - | text: "Client", |
|
| 91 | - | collapsed: true, |
|
| 92 | - | items: [ |
|
| 93 | - | { |
|
| 94 | - | text: "Orbiter", |
|
| 95 | - | link: "/deployment/client/orbiter", |
|
| 96 | - | }, |
|
| 97 | - | { |
|
| 98 | - | text: "Cloudflare Pages", |
|
| 99 | - | link: "/deployment/client/cloudflare-pages", |
|
| 100 | - | }, |
|
| 101 | - | { |
|
| 102 | - | text: "GitHub Pages", |
|
| 103 | - | link: "/deployment/client/github-pages", |
|
| 104 | - | }, |
|
| 105 | - | ], |
|
| 106 | - | }, |
|
| 107 | - | { |
|
| 108 | - | text: "Server", |
|
| 109 | - | collapsed: true, |
|
| 110 | - | items: [ |
|
| 111 | - | { |
|
| 112 | - | text: "Cloudflare Workers", |
|
| 113 | - | link: "/deployment/server/cloudflare-workers", |
|
| 114 | - | }, |
|
| 115 | - | ], |
|
| 116 | - | }, |
|
| 117 | - | { |
|
| 118 | - | text: "Single Origin", |
|
| 119 | - | link: "/deployment/single-origin", |
|
| 120 | - | }, |
|
| 121 | - | ], |
|
| 122 | - | }, |
|
| 123 | - | ], |
|
| 4 | + | title: "bhvr", |
|
| 5 | + | baseUrl: "https://bhvr.dev", |
|
| 6 | + | description: "A stack made for the open web", |
|
| 7 | + | iconUrl: "/icon.png", |
|
| 8 | + | logoUrl: { |
|
| 9 | + | dark: "/logo-dark.svg", |
|
| 10 | + | light: "/logo-light.svg", |
|
| 11 | + | }, |
|
| 12 | + | ogImageUrl: "/og.png", |
|
| 13 | + | head({ path }) { |
|
| 14 | + | const fcData = JSON.stringify({ |
|
| 15 | + | version: "next", |
|
| 16 | + | imageUrl: "https://bhvr.dev/image.png", |
|
| 17 | + | button: { |
|
| 18 | + | title: "bhvr", |
|
| 19 | + | action: { |
|
| 20 | + | type: "launch_frame", |
|
| 21 | + | name: "bhvr", |
|
| 22 | + | url: `https://bhvr.dev${path}`, |
|
| 23 | + | splashImageUrl: "https://bhvr.dev/splash.png", |
|
| 24 | + | splashBackgroundColor: "#121113", |
|
| 25 | + | }, |
|
| 26 | + | }, |
|
| 27 | + | }); |
|
| 28 | + | return <meta name="fc:frame" content={fcData} />; |
|
| 29 | + | }, |
|
| 30 | + | socials: [ |
|
| 31 | + | { |
|
| 32 | + | icon: "github", |
|
| 33 | + | link: "https://github.com/stevedylandev/bhvr", |
|
| 34 | + | }, |
|
| 35 | + | ], |
|
| 36 | + | markdown: { |
|
| 37 | + | code: { |
|
| 38 | + | themes: { |
|
| 39 | + | light: "vitesse-light", |
|
| 40 | + | dark: "vitesse-dark", |
|
| 41 | + | }, |
|
| 42 | + | }, |
|
| 43 | + | }, |
|
| 44 | + | theme: { |
|
| 45 | + | colorScheme: "dark", |
|
| 46 | + | accentColor: "#BD976A", |
|
| 47 | + | }, |
|
| 48 | + | editLink: { |
|
| 49 | + | pattern: |
|
| 50 | + | "https://github.com/stevedylandev/bhvr-docs/edit/main/docs/pages/:path", |
|
| 51 | + | text: "Edit on GitHub", |
|
| 52 | + | }, |
|
| 53 | + | topNav: [ |
|
| 54 | + | { |
|
| 55 | + | text: "0.3.0", |
|
| 56 | + | items: [ |
|
| 57 | + | { text: "Contribute", link: "https://github.com/stevedylandev/bhvr" }, |
|
| 58 | + | ], |
|
| 59 | + | }, |
|
| 60 | + | ], |
|
| 61 | + | sidebar: [ |
|
| 62 | + | { |
|
| 63 | + | text: "Getting Started", |
|
| 64 | + | link: "/getting-started", |
|
| 65 | + | }, |
|
| 66 | + | { |
|
| 67 | + | text: "Why bhvr?", |
|
| 68 | + | link: "/why-bhvr", |
|
| 69 | + | }, |
|
| 70 | + | { |
|
| 71 | + | text: "Packages", |
|
| 72 | + | collapsed: false, |
|
| 73 | + | items: [ |
|
| 74 | + | { |
|
| 75 | + | text: "server", |
|
| 76 | + | link: "/packages/server", |
|
| 77 | + | }, |
|
| 78 | + | { |
|
| 79 | + | text: "client", |
|
| 80 | + | link: "/packages/client", |
|
| 81 | + | }, |
|
| 82 | + | { |
|
| 83 | + | text: "shared", |
|
| 84 | + | link: "/packages/shared", |
|
| 85 | + | }, |
|
| 86 | + | ], |
|
| 87 | + | }, |
|
| 88 | + | { |
|
| 89 | + | text: "Deployment", |
|
| 90 | + | collapsed: false, |
|
| 91 | + | items: [ |
|
| 92 | + | { |
|
| 93 | + | text: "Client", |
|
| 94 | + | collapsed: true, |
|
| 95 | + | items: [ |
|
| 96 | + | { |
|
| 97 | + | text: "Orbiter", |
|
| 98 | + | link: "/deployment/client/orbiter", |
|
| 99 | + | }, |
|
| 100 | + | { |
|
| 101 | + | text: "Cloudflare Pages", |
|
| 102 | + | link: "/deployment/client/cloudflare-pages", |
|
| 103 | + | }, |
|
| 104 | + | { |
|
| 105 | + | text: "GitHub Pages", |
|
| 106 | + | link: "/deployment/client/github-pages", |
|
| 107 | + | }, |
|
| 108 | + | { |
|
| 109 | + | text: "Netlify", |
|
| 110 | + | link: "/deployment/client/netlify", |
|
| 111 | + | }, |
|
| 112 | + | ], |
|
| 113 | + | }, |
|
| 114 | + | { |
|
| 115 | + | text: "Server", |
|
| 116 | + | collapsed: true, |
|
| 117 | + | items: [ |
|
| 118 | + | { |
|
| 119 | + | text: "Cloudflare Workers", |
|
| 120 | + | link: "/deployment/server/cloudflare-workers", |
|
| 121 | + | }, |
|
| 122 | + | ], |
|
| 123 | + | }, |
|
| 124 | + | { |
|
| 125 | + | text: "Single Origin", |
|
| 126 | + | link: "/deployment/single-origin", |
|
| 127 | + | }, |
|
| 128 | + | ], |
|
| 129 | + | }, |
|
| 130 | + | ], |
|
| 124 | 131 | }); |