Skip to content

Commit 1931626

Browse files
committed
feat: scaffold BootstrapLaboratory company website
0 parents  commit 1931626

19 files changed

Lines changed: 21313 additions & 0 deletions

.github/workflows/pages.yml

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
name: Pages
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
workflow_dispatch:
8+
9+
permissions:
10+
contents: read
11+
pages: write
12+
id-token: write
13+
14+
concurrency:
15+
group: pages
16+
cancel-in-progress: true
17+
18+
jobs:
19+
build:
20+
name: Build
21+
runs-on: ubuntu-latest
22+
steps:
23+
- name: Checkout
24+
uses: actions/checkout@v6
25+
26+
- name: Setup Node.js
27+
uses: actions/setup-node@v6
28+
with:
29+
node-version: 24
30+
cache: npm
31+
32+
- name: Setup Pages
33+
uses: actions/configure-pages@v6
34+
35+
- name: Install dependencies
36+
run: npm ci
37+
38+
- name: Build website
39+
run: npm run build
40+
41+
- name: Upload Pages artifact
42+
uses: actions/upload-pages-artifact@v5
43+
with:
44+
path: build
45+
46+
deploy:
47+
name: Deploy
48+
needs: build
49+
runs-on: ubuntu-latest
50+
environment:
51+
name: github-pages
52+
url: ${{ steps.deployment.outputs.page_url }}
53+
steps:
54+
- name: Deploy to GitHub Pages
55+
id: deployment
56+
uses: actions/deploy-pages@v5

.gitignore

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Dependencies
2+
/node_modules
3+
4+
# Production
5+
/build
6+
7+
# Generated files
8+
.docusaurus
9+
.cache-loader
10+
11+
# Misc
12+
.DS_Store
13+
.env.local
14+
.env.development.local
15+
.env.test.local
16+
.env.production.local
17+
18+
npm-debug.log*
19+
yarn-debug.log*
20+
yarn-error.log*

README.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# BootstrapLaboratory Website
2+
3+
This repository contains the Docusaurus website for the BootstrapLaboratory
4+
GitHub organization homepage.
5+
6+
## Development
7+
8+
Install dependencies:
9+
10+
```bash
11+
npm install
12+
```
13+
14+
Start the local development server:
15+
16+
```bash
17+
npm start
18+
```
19+
20+
Run the full local check:
21+
22+
```bash
23+
npm run check
24+
```
25+
26+
## Deployment
27+
28+
The site is built and deployed to GitHub Pages by
29+
`.github/workflows/pages.yml` when changes are pushed to `main`.
30+
31+
The production URL is:
32+
33+
```text
34+
https://bootstraplaboratory.github.io/
35+
```

docusaurus.config.ts

Lines changed: 121 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,121 @@
1+
import type {Config} from '@docusaurus/types';
2+
import type * as Preset from '@docusaurus/preset-classic';
3+
import {themes as prismThemes} from 'prism-react-renderer';
4+
5+
const config: Config = {
6+
title: 'BootstrapLaboratory',
7+
tagline: 'Modern web systems built for long-term ownership.',
8+
favicon: 'img/logo.svg',
9+
10+
future: {
11+
v4: true,
12+
},
13+
14+
url: 'https://bootstraplaboratory.github.io',
15+
baseUrl: '/',
16+
organizationName: 'BootstrapLaboratory',
17+
projectName: 'BootstrapLaboratory.github.io',
18+
trailingSlash: true,
19+
20+
onBrokenLinks: 'throw',
21+
markdown: {
22+
hooks: {
23+
onBrokenMarkdownLinks: 'warn',
24+
},
25+
},
26+
27+
i18n: {
28+
defaultLocale: 'en',
29+
locales: ['en'],
30+
},
31+
32+
presets: [
33+
[
34+
'classic',
35+
{
36+
docs: false,
37+
blog: false,
38+
theme: {
39+
customCss: './src/css/custom.css',
40+
},
41+
} satisfies Preset.Options,
42+
],
43+
],
44+
45+
themeConfig: {
46+
image: 'img/logo.svg',
47+
colorMode: {
48+
defaultMode: 'light',
49+
respectPrefersColorScheme: false,
50+
},
51+
navbar: {
52+
title: 'BootstrapLaboratory',
53+
logo: {
54+
alt: 'BootstrapLaboratory logo',
55+
src: 'img/logo.svg',
56+
},
57+
items: [
58+
{to: '/services', label: 'Services', position: 'left'},
59+
{to: '/portfolio', label: 'Portfolio', position: 'left'},
60+
{to: '/pricing', label: 'Pricing', position: 'left'},
61+
{to: '/contact', label: 'Contact', position: 'left'},
62+
{
63+
href: 'https://github.com/BootstrapLaboratory',
64+
label: 'GitHub',
65+
position: 'right',
66+
},
67+
],
68+
},
69+
footer: {
70+
style: 'dark',
71+
links: [
72+
{
73+
title: 'Company',
74+
items: [
75+
{label: 'Services', to: '/services'},
76+
{label: 'Portfolio', to: '/portfolio'},
77+
{label: 'Pricing', to: '/pricing'},
78+
{label: 'Contact', to: '/contact'},
79+
],
80+
},
81+
{
82+
title: 'Open Source',
83+
items: [
84+
{
85+
label: 'Rush Delivery',
86+
href: 'https://github.com/BootstrapLaboratory/rush-delivery',
87+
},
88+
{
89+
label: 'Labkit',
90+
href: 'https://github.com/BootstrapLaboratory/labkit',
91+
},
92+
{
93+
label: 'Reference App',
94+
href: 'https://github.com/BootstrapLaboratory/typescript_monorepo_nestjs_relay_trunk',
95+
},
96+
],
97+
},
98+
{
99+
title: 'More',
100+
items: [
101+
{
102+
label: 'AWS Lambda With Rust',
103+
href: 'https://bootstraplaboratory.github.io/aws_lambda_rust_runtime/',
104+
},
105+
{
106+
label: 'GitHub Organization',
107+
href: 'https://github.com/BootstrapLaboratory',
108+
},
109+
],
110+
},
111+
],
112+
copyright: `Copyright © ${new Date().getFullYear()} BootstrapLaboratory.`,
113+
},
114+
prism: {
115+
theme: prismThemes.github,
116+
darkTheme: prismThemes.dracula,
117+
},
118+
} satisfies Preset.ThemeConfig,
119+
};
120+
121+
export default config;

0 commit comments

Comments
 (0)