Skip to content

Commit 9eb20e5

Browse files
committed
rename blog
1 parent d7de3b8 commit 9eb20e5

7 files changed

Lines changed: 72 additions & 67 deletions

File tree

.github/workflows/build-deploy-site.yaml

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,36 +2,28 @@ name: "Build and Deploy site"
22

33
on:
44
push:
5-
branches: [ main ]
5+
branches: [main]
66
pull_request:
7-
branches: [ main ]
7+
branches: [main]
88

99
jobs:
1010
build-and-deploy:
1111
runs-on: ubuntu-latest
12-
12+
1313
steps:
1414
- name: Checkout repository
1515
uses: actions/checkout@v4
16-
16+
1717
- name: Setup Node.js
1818
uses: actions/setup-node@v4
1919
with:
20-
node-version: '20'
21-
cache: 'npm'
22-
20+
node-version: "20"
21+
cache: "npm"
22+
2323
- name: Install dependencies
2424
run: npm ci
25-
25+
2626
- name: Run build
2727
run: npm run build
2828
env:
2929
NODE_ENV: production
30-
31-
- name: Deploy to GitHub Pages
32-
if: github.ref == 'refs/heads/main' && github.event_name == 'push'
33-
uses: peaceiris/actions-gh-pages@v3
34-
with:
35-
github_token: ${{ secrets.GITHUB_TOKEN }}
36-
publish_dir: ./public
37-
cname: learning-architect.blog

CLAUDE.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
44

55
## Project Overview
66

7-
This is a technical blog called "Learning Architect's Blog" hosted at https://learning-architect.blog. The blog focuses on software architecture, modern development practices, AI/LLM usage in development, DevOps, and technical design patterns.
7+
This is a technical blog called "DevLoop Blog" hosted at https://devloop.blog. The blog focuses on software architecture, modern development practices, AI/LLM usage in development, DevOps, and technical design patterns.
88

99
## Tech Stack
1010

@@ -106,7 +106,7 @@ The site uses GitHub Actions for automated deployment:
106106
- **Workflow**: `.github/workflows/build-deploy-site.yaml`
107107
- **Node.js version**: 20.x LTS
108108
- **Triggers**: Push to main branch, pull requests
109-
- **Deployment**: Automatically deploys to GitHub Pages at learning-architect.blog
109+
- **Deployment**: Automatically deploys to GitHub Pages at devloop.blog
110110
- **Build command**: `npm run build` (production optimized)
111111

112112
### GitHub Pages Setup Required:

gatsby-config.mjs

Lines changed: 25 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
import remarkGfm from 'remark-gfm';
1+
import remarkGfm from "remark-gfm";
22

33
const config = {
44
siteMetadata: {
5-
title: "Learning architect blog",
6-
siteUrl: `https://learning-architect.blog`,
5+
title: "DevLoop blog",
6+
siteUrl: `https://devloop.blog`,
77
},
88
plugins: [
99
{
@@ -20,20 +20,17 @@ const config = {
2020
{
2121
resolve: "gatsby-plugin-sitemap",
2222
options: {
23-
output: '/sitemap'
24-
}
23+
output: "/sitemap",
24+
},
2525
},
2626
"gatsby-transformer-remark",
2727
{
2828
resolve: "gatsby-plugin-mdx",
2929
options: {
3030
extensions: [`.mdx`, `.md`],
3131
mdxOptions: {
32-
remarkPlugins: [
33-
remarkGfm,
34-
],
35-
rehypePlugins: [
36-
],
32+
remarkPlugins: [remarkGfm],
33+
rehypePlugins: [],
3734
},
3835
gatsbyRemarkPlugins: [
3936
{
@@ -44,11 +41,10 @@ const config = {
4441
},
4542
{
4643
resolve: `gatsby-remark-prismjs`,
47-
options: {
48-
},
44+
options: {},
4945
},
5046
],
51-
}
47+
},
5248
},
5349
`gatsby-remark-images`,
5450
"gatsby-plugin-sharp",
@@ -68,7 +64,7 @@ const config = {
6864
},
6965
__key: "pages",
7066
},
71-
'gatsby-plugin-robots-txt',
67+
"gatsby-plugin-robots-txt",
7268
{
7369
resolve: `gatsby-plugin-feed`,
7470
options: {
@@ -87,17 +83,23 @@ const config = {
8783
feeds: [
8884
{
8985
serialize: ({query: {site, allMdx}}) => {
90-
return allMdx.nodes.map(node => {
91-
const slug = node.internal.contentFilePath.replace(/^.*\/src\/pages\//, '').replace(/\.mdx?$/, '')
92-
const title = slug.replace(/-/g, ' ').replace(/\b\w/g, l => l.toUpperCase())
86+
return allMdx.nodes.map((node) => {
87+
const slug = node.internal.contentFilePath
88+
.replace(/^.*\/src\/pages\//, "")
89+
.replace(/\.mdx?$/, "");
90+
const title = slug
91+
.replace(/-/g, " ")
92+
.replace(/\b\w/g, (l) => l.toUpperCase());
9393
return Object.assign({}, node.frontmatter, {
94-
description: node.fields ? node.fields.articleCut : node.excerpt,
94+
description: node.fields
95+
? node.fields.articleCut
96+
: node.excerpt,
9597
date: node.frontmatter.date,
9698
title: title,
9799
url: `${site.siteMetadata.siteUrl}/${slug}/`,
98-
guid: `${site.siteMetadata.siteUrl}/${slug}/`
99-
})
100-
})
100+
guid: `${site.siteMetadata.siteUrl}/${slug}/`,
101+
});
102+
});
101103
},
102104
query: `
103105
{
@@ -123,11 +125,11 @@ const config = {
123125
}
124126
`,
125127
output: "/rss.xml",
126-
title: "Learning Architect blog RSS Feed",
128+
title: "DevLoop blog RSS Feed",
127129
},
128130
],
129131
},
130-
}
132+
},
131133
],
132134
};
133135

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
2-
"name": "learning-architect.blog",
2+
"name": "devloop.blog",
33
"version": "1.0.0",
44
"private": true,
5-
"description": "learning-architect.blog",
5+
"description": "devloop.blog",
66
"author": "Evgeniy Moroz",
77
"keywords": [
88
"gatsby"

src/components/About.tsx

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,8 @@ export function About() {
1818
figuring out what it means and how to deal with it.
1919
<br />
2020
You can write to me here{" "}
21-
<a
22-
className="link-default"
23-
href={"mailto:admin@learning-architect.blog"}
24-
>
25-
admin@learning-architect.blog
21+
<a className="link-default" href={"mailto:admin@devloop.blog"}>
22+
admin@devloop.blog
2623
</a>
2724
</p>
2825
</section>

src/components/Heading.tsx

Lines changed: 32 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,45 @@
1-
import * as React from 'react';
2-
import { Helmet } from 'react-helmet';
1+
import * as React from "react";
2+
import { Helmet } from "react-helmet";
33

4-
export const title = 'From Novice to Architect: My Journey of Learning and Growth';
5-
export const description = 'Everything about software architecture that I am learning both at work and beyond.';
6-
const defaultKeywords = 'architecture,DevOps,software,personal experience'
4+
export const title =
5+
"Devloop: random notes on the development and architecture";
6+
export const description =
7+
"Everything about software architecture that I am learning both at work and beyond.";
8+
const defaultKeywords = "architecture,DevOps,software,personal experience";
79

810
interface Props {
9-
additionalKeywords?: string;
11+
additionalKeywords?: string;
1012
}
1113

1214
export class Heading extends React.Component<Props> {
13-
render() {
14-
return <Helmet htmlAttributes={{ lang: 'en' }}>
15-
<title>{title}</title>
16-
<meta name="title" content={title}/>
17-
<meta name="description" content={description}/>
18-
<meta name="keywords" content={this.props.additionalKeywords ?? defaultKeywords} />
19-
<meta name="google-site-verification" content="YKSqM3OOK7MMMO5Do3-ANPak1kGLqXC_NRowlubq0U0" />
20-
<script async src="https://www.googletagmanager.com/gtag/js?id=G-2K41KFP1B9"></script>
21-
<script>{`
15+
render() {
16+
return (
17+
<Helmet htmlAttributes={{ lang: "en" }}>
18+
<title>{title}</title>
19+
<meta name="title" content={title} />
20+
<meta name="description" content={description} />
21+
<meta
22+
name="keywords"
23+
content={this.props.additionalKeywords ?? defaultKeywords}
24+
/>
25+
<meta
26+
name="google-site-verification"
27+
content="YKSqM3OOK7MMMO5Do3-ANPak1kGLqXC_NRowlubq0U0"
28+
/>
29+
<script
30+
async
31+
src="https://www.googletagmanager.com/gtag/js?id=G-2K41KFP1B9"
32+
></script>
33+
<script>
34+
{`
2235
window.dataLayer = window.dataLayer || [];
2336
function gtag(){dataLayer.push(arguments);}
2437
gtag('js', new Date());
2538
2639
gtag('config', 'G-2K41KFP1B9');
2740
`}
28-
</script>
29-
</Helmet>;
30-
}
41+
</script>
42+
</Helmet>
43+
);
44+
}
3145
}

src/components/WithSidebarLayout.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ export function WithSidebarLayout({
4646
{isMobile && isSidebarCollapsed && (
4747
<div className="mb-4 flex justify-between items-center">
4848
<div className="text-xl font-semibold text-gray-900 dark:text-white">
49-
Learning Architect's Blog
49+
DevLoop Blog
5050
</div>
5151
<button
5252
onClick={toggleSidebar}

0 commit comments

Comments
 (0)