Skip to content

Commit 14e4453

Browse files
committed
Rebrand to Post Bot + add favicon icons
1 parent 603ef68 commit 14e4453

22 files changed

+125
-72
lines changed

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# LinkedIn Post Bot
1+
# Post Bot
22

3-
> **Transform your GitHub activity into professional LinkedIn content — powered by AI, designed for developers who code more than they post.**
3+
> **Transform your GitHub activity into professional social media content — powered by AI, designed for developers who code more than they post.**
44
55
[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)
66
[![Build Status](https://img.shields.io/github/actions/workflow/status/cliff-de-tech/linkedin-post-bot/ci.yml?branch=main&label=build)](https://github.com/cliff-de-tech/linkedin-post-bot/actions)
@@ -22,6 +22,8 @@ Most developers are active on GitHub but invisible on LinkedIn. Writing engaging
2222

2323
It's built for developers who want to grow their professional presence without spending hours crafting content.
2424

25+
**Currently supports LinkedIn** with GitLab, Bitbucket, Twitter/X, and Threads coming in future updates.
26+
2527
---
2628

2729
## What This App Does ✅
35 KB
Loading
233 KB
Loading

web/public/favicon-16x16.png

656 Bytes
Loading

web/public/favicon-32x32.png

1.71 KB
Loading

web/public/favicon.ico

1.71 KB
Binary file not shown.

web/public/generate-favicon.html

Lines changed: 75 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -3,46 +3,87 @@
33
<head>
44
<meta charset="UTF-8" />
55
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
6-
<title>Generate Favicon</title>
6+
<title>Download Favicons</title>
77
<style>
88
body {
99
display: flex;
1010
flex-direction: column;
1111
align-items: center;
1212
justify-content: center;
1313
min-height: 100vh;
14-
background: #f3f4f6;
14+
background: #1a1a2e;
1515
font-family: system-ui, -apple-system, sans-serif;
16+
color: white;
1617
}
17-
canvas {
18-
border: 2px solid #ddd;
19-
margin: 10px;
20-
background: white;
18+
h1 { color: #9333EA; }
19+
.buttons {
20+
display: flex;
21+
gap: 20px;
22+
margin-top: 30px;
23+
flex-wrap: wrap;
24+
justify-content: center;
25+
}
26+
button {
27+
padding: 15px 30px;
28+
font-size: 16px;
29+
border: none;
30+
border-radius: 8px;
31+
background: linear-gradient(135deg, #2563EB, #9333EA);
32+
color: white;
33+
cursor: pointer;
34+
transition: transform 0.2s, box-shadow 0.2s;
35+
}
36+
button:hover {
37+
transform: scale(1.05);
38+
box-shadow: 0 4px 20px rgba(147, 51, 234, 0.4);
39+
}
40+
.preview {
41+
display: flex;
42+
gap: 20px;
43+
margin: 30px 0;
44+
align-items: center;
2145
}
22-
.info {
23-
margin-top: 20px;
24-
padding: 20px;
25-
background: white;
46+
canvas {
47+
border: 2px solid #333;
2648
border-radius: 8px;
27-
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
2849
}
50+
.label { font-size: 12px; color: #888; text-align: center; }
2951
</style>
3052
</head>
3153
<body>
32-
<h1>Favicon Generator</h1>
33-
<div>
34-
<canvas id="favicon-16" width="16" height="16"></canvas>
35-
<canvas id="favicon-32" width="32" height="32"></canvas>
36-
<canvas id="favicon-180" width="180" height="180"></canvas>
54+
<h1>⚡ PostBot Favicon Generator</h1>
55+
<p>Click a button to download the favicon</p>
56+
57+
<div class="preview">
58+
<div>
59+
<canvas id="favicon-16" width="16" height="16"></canvas>
60+
<div class="label">16x16</div>
61+
</div>
62+
<div>
63+
<canvas id="favicon-32" width="32" height="32"></canvas>
64+
<div class="label">32x32</div>
65+
</div>
66+
<div>
67+
<canvas id="favicon-180" width="180" height="180"></canvas>
68+
<div class="label">180x180</div>
69+
</div>
70+
<div>
71+
<canvas id="favicon-192" width="192" height="192"></canvas>
72+
<div class="label">192x192</div>
73+
</div>
74+
<div>
75+
<canvas id="favicon-512" width="512" height="512"></canvas>
76+
<div class="label">512x512</div>
77+
</div>
3778
</div>
38-
<div class="info">
39-
<p><strong>Instructions:</strong></p>
40-
<ol>
41-
<li>Right-click on each canvas</li>
42-
<li>Select "Save image as..."</li>
43-
<li>Save as: favicon-16x16.png, favicon-32x32.png, apple-touch-icon.png</li>
44-
<li>Place files in the /public folder</li>
45-
</ol>
79+
80+
<div class="buttons">
81+
<button onclick="download('favicon-16', 'favicon-16x16.png')">📥 favicon-16x16.png</button>
82+
<button onclick="download('favicon-32', 'favicon-32x32.png')">📥 favicon-32x32.png</button>
83+
<button onclick="download('favicon-32', 'favicon.ico')">📥 favicon.ico</button>
84+
<button onclick="download('favicon-180', 'apple-touch-icon.png')">📥 apple-touch-icon.png</button>
85+
<button onclick="download('favicon-192', 'android-chrome-192x192.png')">📥 android-chrome-192x192.png</button>
86+
<button onclick="download('favicon-512', 'android-chrome-512x512.png')">📥 android-chrome-512x512.png</button>
4687
</div>
4788

4889
<script>
@@ -89,10 +130,20 @@ <h1>Favicon Generator</h1>
89130
ctx.stroke();
90131
}
91132

133+
function download(canvasId, filename) {
134+
const canvas = document.getElementById(canvasId);
135+
const link = document.createElement('a');
136+
link.download = filename;
137+
link.href = canvas.toDataURL('image/png');
138+
link.click();
139+
}
140+
92141
// Draw all sizes
93142
drawFavicon('favicon-16', 16);
94143
drawFavicon('favicon-32', 32);
95144
drawFavicon('favicon-180', 180);
145+
drawFavicon('favicon-192', 192);
146+
drawFavicon('favicon-512', 512);
96147
</script>
97148
</body>
98149
</html>

web/public/manifest.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
2-
"name": "LinkedIn Post Bot",
2+
"name": "Post Bot",
33
"short_name": "PostBot",
4-
"description": "Transform your GitHub activity into engaging LinkedIn posts automatically",
4+
"description": "Transform your development activity into engaging social media posts automatically",
55
"start_url": "/",
66
"display": "standalone",
77
"background_color": "#1F2937",

web/src/components/SEOHead.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ interface SEOHeadProps {
1010
}
1111

1212
export default function SEOHead({
13-
title = 'LinkedIn Post Bot - AI-Powered Content Creation',
14-
description = 'Transform your GitHub activity into engaging LinkedIn posts automatically. AI-powered content generation with Groq LLM, activity tracking, and automated posting.',
13+
title = 'Post Bot - AI-Powered Content Creation',
14+
description = 'Transform your development activity into engaging social media posts automatically. AI-powered content generation with Groq LLM, activity tracking, and automated posting.',
1515
keywords = 'LinkedIn, automation, AI, content creation, social media, GitHub, posts, marketing, Groq, LLM',
1616
ogImage = '/og-image.png',
1717
ogUrl = 'https://linkedin-post-bot.com',
@@ -21,7 +21,7 @@ export default function SEOHead({
2121
const structuredData = {
2222
'@context': 'https://schema.org',
2323
'@type': 'SoftwareApplication',
24-
name: 'LinkedIn Post Bot',
24+
name: 'Post Bot',
2525
description: description,
2626
applicationCategory: 'SocialNetworkingApplication',
2727
operatingSystem: 'Web',
@@ -43,7 +43,7 @@ export default function SEOHead({
4343
<title>{title}</title>
4444
<meta name="description" content={description} />
4545
<meta name="keywords" content={keywords} />
46-
<meta name="author" content="LinkedIn Post Bot" />
46+
<meta name="author" content="Post Bot" />
4747
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0" />
4848
<meta charSet="UTF-8" />
4949

@@ -56,7 +56,7 @@ export default function SEOHead({
5656
<meta property="og:title" content={title} />
5757
<meta property="og:description" content={description} />
5858
<meta property="og:image" content={ogImage} />
59-
<meta property="og:site_name" content="LinkedIn Post Bot" />
59+
<meta property="og:site_name" content="Post Bot" />
6060
<meta property="og:locale" content="en_US" />
6161

6262
{/* Twitter Card */}
@@ -75,7 +75,7 @@ export default function SEOHead({
7575
<meta name="format-detection" content="telephone=no" />
7676
<meta name="apple-mobile-web-app-capable" content="yes" />
7777
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
78-
<meta name="apple-mobile-web-app-title" content="LinkedIn Bot" />
78+
<meta name="apple-mobile-web-app-title" content="PostBot" />
7979
<meta name="mobile-web-app-capable" content="yes" />
8080

8181
{/* Favicon */}

web/src/components/ui/HomepageEnhancements.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ export const ComparisonTable: React.FC<ComparisonTableProps> = ({ before, after
274274
<svg className="w-5 h-5" fill="none" viewBox="0 0 24 24" stroke="currentColor">
275275
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M6 18L18 6M6 6l12 12" />
276276
</svg>
277-
Without LinkedIn Post Bot
277+
Without Post Bot
278278
</h3>
279279
<ul className="space-y-3">
280280
{before.map((item, idx) => (
@@ -291,7 +291,7 @@ export const ComparisonTable: React.FC<ComparisonTableProps> = ({ before, after
291291
<svg className="w-5 h-5" fill="none" viewBox="0 0 24 24" stroke="currentColor">
292292
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M5 13l4 4L19 7" />
293293
</svg>
294-
With LinkedIn Post Bot
294+
With Post Bot
295295
</h3>
296296
<ul className="space-y-3">
297297
{after.map((item, idx) => (

0 commit comments

Comments
 (0)