Skip to content

Commit 32306dc

Browse files
committed
over agressive data centralization
1 parent d13ac1a commit 32306dc

File tree

11 files changed

+810
-0
lines changed

11 files changed

+810
-0
lines changed

_data/bookmarks.js

Lines changed: 271 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,271 @@
1+
export default {
2+
categories: [
3+
{
4+
id: "infrastructure-cloud",
5+
name: "Infrastructure & Cloud",
6+
subcategories: [
7+
{
8+
name: "Kubernetes",
9+
links: [
10+
{ title: "Kubernetes Documentation", url: "https://kubernetes.io/docs/", description: "Official K8s docs" },
11+
{ title: "Kubernetes the Hard Way", url: "https://github.com/kelseyhightower/kubernetes-the-hard-way", description: "Kelsey Hightower's guide" },
12+
{ title: "CNCF Landscape", url: "https://landscape.cncf.io/", description: "Cloud native ecosystem overview" },
13+
{ title: "Awesome Kubernetes", url: "https://github.com/ramitsurana/awesome-kubernetes", description: "Curated K8s resources" },
14+
{ title: "k9s", url: "https://k9scli.io/", description: "Terminal UI for Kubernetes" },
15+
{ title: "Lens", url: "https://k8slens.dev/", description: "Kubernetes IDE" }
16+
]
17+
},
18+
{
19+
name: "AWS",
20+
links: [
21+
{ title: "AWS Documentation", url: "https://docs.aws.amazon.com/", description: "Official AWS docs" },
22+
{ title: "AWS Well-Architected", url: "https://aws.amazon.com/architecture/well-architected/", description: "Best practices framework" },
23+
{ title: "CDK Patterns", url: "https://cdkpatterns.com/", description: "AWS CDK design patterns" },
24+
{ title: "AWS Samples", url: "https://github.com/aws-samples", description: "Official code samples" },
25+
{ title: "Last Week in AWS", url: "https://www.lastweekinaws.com/", description: "Newsletter by Corey Quinn" }
26+
]
27+
},
28+
{
29+
name: "Terraform",
30+
links: [
31+
{ title: "Terraform Registry", url: "https://registry.terraform.io/", description: "Modules and providers" },
32+
{ title: "Terraform Best Practices", url: "https://www.terraform-best-practices.com/", description: "Community guide" },
33+
{ title: "Terragrunt", url: "https://terragrunt.gruntwork.io/", description: "Terraform wrapper" },
34+
{ title: "Atlantis", url: "https://www.runatlantis.io/", description: "Terraform Pull Request automation" }
35+
]
36+
}
37+
]
38+
},
39+
{
40+
id: "devops-cicd",
41+
name: "DevOps & CI/CD",
42+
subcategories: [
43+
{
44+
name: "GitOps",
45+
links: [
46+
{ title: "Argo CD", url: "https://argo-cd.readthedocs.io/", description: "Declarative GitOps for K8s" },
47+
{ title: "Flux", url: "https://fluxcd.io/", description: "GitOps toolkit" },
48+
{ title: "GitOps Principles", url: "https://opengitops.dev/", description: "OpenGitOps standards" }
49+
]
50+
},
51+
{
52+
name: "CI/CD Platforms",
53+
links: [
54+
{ title: "GitLab CI Documentation", url: "https://docs.gitlab.com/ee/ci/", description: "GitLab CI/CD" },
55+
{ title: "Jenkins Documentation", url: "https://www.jenkins.io/doc/", description: "Jenkins pipeline docs" },
56+
{ title: "GitHub Actions", url: "https://docs.github.com/en/actions", description: "GitHub's CI/CD" }
57+
]
58+
},
59+
{
60+
name: "Containers",
61+
links: [
62+
{ title: "Docker Documentation", url: "https://docs.docker.com/", description: "Official Docker docs" },
63+
{ title: "Podman", url: "https://podman.io/", description: "Daemonless container engine" },
64+
{ title: "Containerd", url: "https://containerd.io/", description: "Container runtime" },
65+
{ title: "BuildKit", url: "https://github.com/moby/buildkit", description: "Next-gen build toolkit" }
66+
]
67+
}
68+
]
69+
},
70+
{
71+
id: "observability",
72+
name: "Observability",
73+
subcategories: [
74+
{
75+
name: "Monitoring",
76+
links: [
77+
{ title: "Prometheus Documentation", url: "https://prometheus.io/docs/", description: "Metrics and alerting" },
78+
{ title: "Grafana Documentation", url: "https://grafana.com/docs/", description: "Visualization" },
79+
{ title: "VictoriaMetrics", url: "https://victoriametrics.com/", description: "High-performance TSDB" },
80+
{ title: "Netdata", url: "https://www.netdata.cloud/", description: "Real-time monitoring" }
81+
]
82+
},
83+
{
84+
name: "Logging",
85+
links: [
86+
{ title: "Loki Documentation", url: "https://grafana.com/docs/loki/", description: "Log aggregation" },
87+
{ title: "Elastic Stack", url: "https://www.elastic.co/guide/", description: "ELK documentation" },
88+
{ title: "FluentBit", url: "https://docs.fluentbit.io/", description: "Log processor" }
89+
]
90+
},
91+
{
92+
name: "Tracing",
93+
links: [
94+
{ title: "Jaeger Documentation", url: "https://www.jaegertracing.io/docs/", description: "Distributed tracing" },
95+
{ title: "OpenTelemetry", url: "https://opentelemetry.io/docs/", description: "Observability framework" },
96+
{ title: "Zipkin", url: "https://zipkin.io/", description: "Distributed tracing system" }
97+
]
98+
}
99+
]
100+
},
101+
{
102+
id: "security",
103+
name: "Security",
104+
subcategories: [
105+
{
106+
name: "Vulnerability Scanning",
107+
links: [
108+
{ title: "Trivy", url: "https://aquasecurity.github.io/trivy/", description: "Container vulnerability scanner" },
109+
{ title: "Grype", url: "https://github.com/anchore/grype", description: "Vulnerability scanner" },
110+
{ title: "OWASP", url: "https://owasp.org/", description: "Web application security" }
111+
]
112+
},
113+
{
114+
name: "Network Security",
115+
links: [
116+
{ title: "WireGuard", url: "https://www.wireguard.com/", description: "Modern VPN protocol" },
117+
{ title: "Teleport", url: "https://goteleport.com/docs/", description: "Secure infrastructure access" },
118+
{ title: "HashiCorp Vault", url: "https://www.vaultproject.io/docs", description: "Secrets management" }
119+
]
120+
},
121+
{
122+
name: "Compliance",
123+
links: [
124+
{ title: "CIS Benchmarks", url: "https://www.cisecurity.org/cis-benchmarks/", description: "Security benchmarks" },
125+
{ title: "NIST Cybersecurity", url: "https://www.nist.gov/cyberframework", description: "Framework" }
126+
]
127+
}
128+
]
129+
},
130+
{
131+
id: "programming",
132+
name: "Programming",
133+
subcategories: [
134+
{
135+
name: "Go",
136+
links: [
137+
{ title: "Go Documentation", url: "https://go.dev/doc/", description: "Official docs" },
138+
{ title: "Effective Go", url: "https://go.dev/doc/effective_go", description: "Writing idiomatic Go" },
139+
{ title: "Go by Example", url: "https://gobyexample.com/", description: "Hands-on introduction" },
140+
{ title: "Awesome Go", url: "https://awesome-go.com/", description: "Curated Go packages" }
141+
]
142+
},
143+
{
144+
name: "TypeScript/JavaScript",
145+
links: [
146+
{ title: "TypeScript Handbook", url: "https://www.typescriptlang.org/docs/handbook/", description: "Official guide" },
147+
{ title: "Node.js Documentation", url: "https://nodejs.org/docs/", description: "Node.js docs" },
148+
{ title: "Bun Documentation", url: "https://bun.sh/docs", description: "Bun runtime" }
149+
]
150+
},
151+
{
152+
name: "Rust",
153+
links: [
154+
{ title: "The Rust Book", url: "https://doc.rust-lang.org/book/", description: "Official Rust book" },
155+
{ title: "Rust by Example", url: "https://doc.rust-lang.org/rust-by-example/", description: "Learn by doing" },
156+
{ title: "Awesome Rust", url: "https://github.com/rust-unofficial/awesome-rust", description: "Curated resources" }
157+
]
158+
}
159+
]
160+
},
161+
{
162+
id: "linux-systems",
163+
name: "Linux & Systems",
164+
subcategories: [
165+
{
166+
name: "Distributions",
167+
links: [
168+
{ title: "Arch Wiki", url: "https://wiki.archlinux.org/", description: "Comprehensive Linux docs" },
169+
{ title: "Debian Documentation", url: "https://www.debian.org/doc/", description: "Debian resources" },
170+
{ title: "Alpine Linux", url: "https://wiki.alpinelinux.org/", description: "Minimal Linux" }
171+
]
172+
},
173+
{
174+
name: "System Administration",
175+
links: [
176+
{ title: "Linux Performance", url: "https://www.brendangregg.com/linuxperf.html", description: "Brendan Gregg's guide" },
177+
{ title: "Systemd Documentation", url: "https://systemd.io/", description: "Init system docs" },
178+
{ title: "ZFS Documentation", url: "https://openzfs.github.io/openzfs-docs/", description: "OpenZFS docs" }
179+
]
180+
},
181+
{
182+
name: "Shell & Scripting",
183+
links: [
184+
{ title: "Bash Guide", url: "https://mywiki.wooledge.org/BashGuide", description: "Bash scripting" },
185+
{ title: "ShellCheck", url: "https://www.shellcheck.net/", description: "Shell script linter" },
186+
{ title: "Nushell Documentation", url: "https://www.nushell.sh/book/", description: "Modern shell" }
187+
]
188+
}
189+
]
190+
},
191+
{
192+
id: "databases",
193+
name: "Databases",
194+
subcategories: [
195+
{
196+
name: "PostgreSQL",
197+
links: [
198+
{ title: "PostgreSQL Documentation", url: "https://www.postgresql.org/docs/", description: "Official docs" },
199+
{ title: "PostgreSQL Wiki", url: "https://wiki.postgresql.org/", description: "Community knowledge" },
200+
{ title: "pgTune", url: "https://pgtune.leopard.in.ua/", description: "Configuration calculator" }
201+
]
202+
},
203+
{
204+
name: "Other Databases",
205+
links: [
206+
{ title: "MySQL Documentation", url: "https://dev.mysql.com/doc/", description: "MySQL docs" },
207+
{ title: "MongoDB Documentation", url: "https://www.mongodb.com/docs/", description: "MongoDB docs" },
208+
{ title: "Redis Documentation", url: "https://redis.io/docs/", description: "Redis docs" },
209+
{ title: "DuckDB Documentation", url: "https://duckdb.org/docs/", description: "Analytical database" }
210+
]
211+
}
212+
]
213+
},
214+
{
215+
id: "learning-resources",
216+
name: "Learning Resources",
217+
subcategories: [
218+
{
219+
name: "Books (Free)",
220+
links: [
221+
{ title: "Site Reliability Engineering", url: "https://sre.google/sre-book/table-of-contents/", description: "Google SRE Book" },
222+
{ title: "The Site Reliability Workbook", url: "https://sre.google/workbook/table-of-contents/", description: "Practical SRE" },
223+
{ title: "Building Secure & Reliable Systems", url: "https://sre.google/books/building-secure-reliable-systems/", description: "Security + SRE" },
224+
{ title: "Software Engineering at Google", url: "https://abseil.io/resources/swe-book", description: "Engineering practices" }
225+
]
226+
},
227+
{
228+
name: "Newsletters",
229+
links: [
230+
{ title: "DevOps Weekly", url: "https://www.devopsweekly.com/", description: "Weekly DevOps news" },
231+
{ title: "SRE Weekly", url: "https://sreweekly.com/", description: "Site reliability news" },
232+
{ title: "Kubernetes Weekly", url: "https://kubeweekly.io/", description: "K8s news" }
233+
]
234+
},
235+
{
236+
name: "Podcasts",
237+
links: [
238+
{ title: "Changelog", url: "https://changelog.com/podcast", description: "Software development" },
239+
{ title: "Ship It", url: "https://changelog.com/shipit", description: "DevOps and infrastructure" },
240+
{ title: "Kubernetes Podcast", url: "https://kubernetespodcast.com/", description: "K8s from Google" }
241+
]
242+
}
243+
]
244+
},
245+
{
246+
id: "daily-tools",
247+
name: "Tools I Use Daily",
248+
subcategories: [
249+
{
250+
name: "Terminal",
251+
links: [
252+
{ title: "Neovim", url: "https://neovim.io/", description: "Text editor" },
253+
{ title: "tmux", url: "https://github.com/tmux/tmux", description: "Terminal multiplexer" },
254+
{ title: "ripgrep", url: "https://github.com/BurntSushi/ripgrep", description: "Fast search" },
255+
{ title: "fd", url: "https://github.com/sharkdp/fd", description: "Fast find alternative" },
256+
{ title: "bat", url: "https://github.com/sharkdp/bat", description: "Better cat" },
257+
{ title: "exa/eza", url: "https://github.com/eza-community/eza", description: "Better ls" }
258+
]
259+
},
260+
{
261+
name: "Git",
262+
links: [
263+
{ title: "lazygit", url: "https://github.com/jesseduffield/lazygit", description: "Terminal Git UI" },
264+
{ title: "delta", url: "https://github.com/dandavison/delta", description: "Better diff viewer" },
265+
{ title: "gh", url: "https://cli.github.com/", description: "GitHub CLI" }
266+
]
267+
}
268+
]
269+
}
270+
]
271+
};

_data/collections/pages.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
export default function(collection) {
2+
return collection.getAll().filter(item => {
3+
return item.data.eleventyNavigation !== undefined;
4+
}).sort((a, b) => {
5+
return (a.data.eleventyNavigation.order || 0) - (b.data.eleventyNavigation.order || 0);
6+
});
7+
}

0 commit comments

Comments
 (0)