Skip to content

Commit 2a68292

Browse files
Merge pull request #1 from gofs-cli/chore/github_actions
2 parents a7dc239 + 8fc2d27 commit 2a68292

File tree

14 files changed

+194
-121
lines changed

14 files changed

+194
-121
lines changed

.github/workflows/deploy.yaml

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

README.md

Lines changed: 3 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -5,37 +5,21 @@ This website is built using [Docusaurus](https://docusaurus.io/), a modern stati
55
### Installation
66

77
```
8-
$ yarn
8+
$ npm install
99
```
1010

1111
### Local Development
1212

1313
```
14-
$ yarn start
14+
$ npm run serve
1515
```
1616

1717
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
1818

1919
### Build
2020

2121
```
22-
$ yarn build
22+
$ npm run build
2323
```
2424

2525
This command generates static content into the `build` directory and can be served using any static contents hosting service.
26-
27-
### Deployment
28-
29-
Using SSH:
30-
31-
```
32-
$ USE_SSH=true yarn deploy
33-
```
34-
35-
Not using SSH:
36-
37-
```
38-
$ GIT_USER=<Your GitHub username> yarn deploy
39-
```
40-
41-
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.

blog/2025-01-28-evergreen-go.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
slug: evergreen-go
33
title: Evergreen Go
44
authors: [kavi]
5-
tags: [gofs, evergreen, go]
5+
tags: [gofs, go]
66
---
77

88
Large organizations have hundreds or even thousands of custom systems. Many of these systems were built decades ago and codify the business as it was decades ago. Often these systems have been underinvested in for years and have become an obstacle for the organization to change.

blog/2025-01-28-libraries-vs-frameworks.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
slug: libraries-vs-frameworks
33
title: Libraries vs. Frameworks
44
authors: [kavi]
5-
tags: [gofs, library, framework]
5+
tags: [standards, architecture]
66
---
77

88
Software libraries provide experienced developers with the flexibility to choose components that best align with their architectural vision and specific use cases. This modular approach empowers teams to build tailored solutions, often encouraging greater creativity and craftsmanship. When used effectively, libraries can foster cleaner, more maintainable code and lead to development environments where engineers are more engaged and productive.

blog/2025-02-01-nosql.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
slug: nosql
33
title: Sql DB, NoSql Schema
44
authors: [kavi]
5-
tags: [gofs, sql, nosql]
5+
tags: [architecture]
66
---
77

88
At first glance, combining a traditional SQL database with a NoSQL-style schema may seem counter-intuitive. However, this hybrid strategy is gaining traction as a practical way to harness the strengths of both relational and non-relational data models within a single system.

blog/2025-02-01-simplicity.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
slug: simplicity
33
title: Simplicity
44
authors: [kavi]
5-
tags: [gofs, coding, simplicity]
5+
tags: [standards]
66
---
77

88
At the heart of well written code is a principle that's often overlooked: simplicity. Simple code is easier to understand, test, debug, and maintain. This post explores the importance of code simplicity, the risks of over-engineering, and how to make better decisions around when to build in-house and when to depend on external tools.
@@ -17,7 +17,7 @@ Developers should aim to write code that is easy to read, not just for machines,
1717

1818
I was once called out by a senior developer for writing the code below. His comment was "There were once two minds who understood what was happening in this code: God and Kavi", and honestly I couldn't tell you what this code is supposed to do:
1919

20-
```
20+
```c
2121
for (int k = 0; k < TEAMS; k++) {
2222
int r = k;
2323
if (r == i)

blog/tags.yml

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
1-
facebook:
2-
label: Facebook
3-
permalink: /facebook
4-
description: Facebook tag description
1+
gofs:
2+
label: Gofs
3+
permalink: /gofs
4+
description: Gofs website
55

6-
hello:
7-
label: Hello
8-
permalink: /hello
9-
description: Hello tag description
6+
go:
7+
label: Go
8+
permalink: /go
9+
description: Go website
1010

11-
docusaurus:
12-
label: Docusaurus
13-
permalink: /docusaurus
14-
description: Docusaurus tag description
11+
standards:
12+
label: Standards
13+
permalink: /standards
14+
description: Coding standards
1515

16-
hola:
17-
label: Hola
18-
permalink: /hola
19-
description: Hola tag description
16+
architecture:
17+
label: Architecture
18+
permalink: /architecture
19+
description: Architecture

docusaurus.config.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,10 +46,16 @@ const config: Config = {
4646
],
4747

4848
themeConfig: {
49+
colorMode: {
50+
defaultMode: 'dark',
51+
disableSwitch: false,
52+
respectPrefersColorScheme: false,
53+
},
4954
navbar: {
5055
logo: {
5156
alt: 'Gofs',
5257
src: 'img/gofs.svg',
58+
srcDark: 'img/gofs-dark.svg',
5359
},
5460
items: [
5561
{

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/pages/index.tsx

Lines changed: 77 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -1,86 +1,94 @@
11
import type { ReactNode } from "react";
2-
import useDocusaurusContext from "@docusaurus/useDocusaurusContext";
32
import Layout from "@theme/Layout";
43
import styles from "./index.module.css";
4+
import { useColorMode } from "@docusaurus/theme-common";
55

66
export default function Home(): ReactNode {
7-
const { siteConfig } = useDocusaurusContext();
87
return (
98
<Layout title={`Home`}>
10-
<main className={styles.homecontainer}>
11-
<section
9+
<HomePage />
10+
</Layout>
11+
);
12+
}
13+
14+
function HomePage(): ReactNode {
15+
const { colorMode } = useColorMode();
16+
return (
17+
<main className={styles.homecontainer}>
18+
<section
19+
style={{
20+
alignItems: "center",
21+
justifyContent: "center",
22+
marginTop: "10rem",
23+
}}
24+
>
25+
<img
26+
src={colorMode === "dark" ? "./img/gofs-dark.svg" : "./img/gofs.svg"}
27+
alt="gofs"
28+
width="350"
29+
/>
30+
<p
1231
style={{
1332
alignItems: "center",
1433
justifyContent: "center",
15-
marginTop: "10rem",
34+
paddingTop: "3rem",
35+
paddingBottom: "3rem",
1636
}}
1737
>
18-
<img src="./img/gofs.svg" alt="gofs" width="350" />
19-
<p
20-
style={{
21-
alignItems: "center",
22-
justifyContent: "center",
23-
paddingTop: "3rem",
24-
paddingBottom: "3rem",
25-
}}
26-
>
27-
Lightweight templates for secure full-stack go apps.
28-
</p>
29-
</section>
30-
<section>
31-
<h1 style={{ color: "#007297" }}>Backward Compatible.</h1>
32-
<p>
33-
No more upgrade cycles. Focus your effort on new features instead of
34-
keeping up with upgrades.
35-
</p>
36-
<h1 style={{ color: "#007297" }}>Few Dependencies.</h1>
37-
<p>
38-
Minimize dependency related issues and security vulnerabilities.
39-
</p>
40-
<h1 style={{ color: "#007297" }}>Developer Centric.</h1>
41-
<p>
42-
Better developer experience means happier developers, faster time to
43-
ship, and less bugs.
44-
</p>
45-
</section>
46-
<section>
47-
<p>
48-
Gofs apps are built on on top of these popular alternatives to
49-
heavyweight legacy frameworks. They have no dependencies of their
50-
own and are being developed with a philosophy of stability and
51-
backward compatibility similar to ours.
52-
</p>
53-
<div
38+
Lightweight templates for secure full-stack go apps.
39+
</p>
40+
</section>
41+
<section>
42+
<h1 style={{ color: "#007297" }}>Backward Compatible.</h1>
43+
<p>
44+
No more upgrade cycles. Focus your effort on new features instead of
45+
keeping up with upgrades.
46+
</p>
47+
<h1 style={{ color: "#007297" }}>Few Dependencies.</h1>
48+
<p>Minimize dependency related issues and security vulnerabilities.</p>
49+
<h1 style={{ color: "#007297" }}>Developer Centric.</h1>
50+
<p>
51+
Better developer experience means happier developers, faster time to
52+
ship, and less bugs.
53+
</p>
54+
</section>
55+
<section>
56+
<p>
57+
Gofs apps are built on on top of these popular alternatives to
58+
heavyweight legacy frameworks. They have no dependencies of their own
59+
and are being developed with a philosophy of stability and backward
60+
compatibility similar to ours.
61+
</p>
62+
<div
63+
style={{
64+
display: "flex",
65+
flexDirection: "column",
66+
alignItems: "center",
67+
justifyContent: "center",
68+
marginTop: "60px",
69+
}}
70+
>
71+
<a href="https://alpinejs.dev">
72+
<img height={80} src="./img/alpinejs.svg" aria-label="alpinejs" />
73+
</a>
74+
<a
5475
style={{
55-
display: "flex",
56-
flexDirection: "column",
57-
alignItems: "center",
58-
justifyContent: "center",
59-
marginTop: "60px",
76+
marginBottom: "90px",
77+
fontSize: "5rem",
78+
height: "80px",
6079
}}
80+
href="https://htmx.org"
6181
>
62-
<a href="https://alpinejs.dev">
63-
<img height={80} src="./img/alpinejs.svg" aria-label="alpinejs" />
64-
</a>
65-
<a
66-
style={{
67-
marginBottom: "90px",
68-
fontSize: "5rem",
69-
height: "80px",
70-
}}
71-
href="https://htmx.org"
72-
>
73-
<span>
74-
&lt;<b style={{ color: "blue" }}>/</b>&gt; htm
75-
<b style={{ color: "blue" }}>x</b>
76-
</span>
77-
</a>
78-
<a href="https://templ.guide">
79-
<img height={60} src="./img/templ.svg" aria-label="templ" />
80-
</a>
81-
</div>
82-
</section>
83-
</main>
84-
</Layout>
82+
<span>
83+
&lt;<b style={{ color: "blue" }}>/</b>&gt; htm
84+
<b style={{ color: "blue" }}>x</b>
85+
</span>
86+
</a>
87+
<a href="https://templ.guide">
88+
<img height={60} src="./img/templ.svg" aria-label="templ" />
89+
</a>
90+
</div>
91+
</section>
92+
</main>
8593
);
8694
}

0 commit comments

Comments
 (0)