feat: Added netlify deployment docs 5671b31b
Steve · 2025-06-08 16:08 2 file(s) · +212 −120
docs/pages/deployment/client/netlify.mdx (added) +85 −0
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 +
![dashboard](https://cdn.bhvr.dev/netlify-new-project.png)
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 +
![build settings](https://cdn.bhvr.dev/netlify-build-settings.png)
73 +
74 +
75 +
### Deploy
76 +
77 +
After confirming the settings Netlify should deploy a new instance with a URL you can visit!
78 +
79 +
![project overview](https://cdn.bhvr.dev/netlify-project-overview.png)
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 +
::::
vocs.config.tsx +127 −120
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
});