Skip to content

Commit 7959018

Browse files
shettigarcclaude
andcommitted
feat: add author config, contributor guide, and Devteds footer
- Add .author.json support (name + optional url/email), gitignored - Add .author.example.json template for contributors - Update README with author setup and contributing guidelines - Add clickable author name in guide headers (links to profile) - Add "DevGuides by Devteds" footer to index and guide pages - Update style guide and newguide skill with new patterns Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 9730b18 commit 7959018

File tree

8 files changed

+154
-4
lines changed

8 files changed

+154
-4
lines changed

.author.example.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"name": "Your Name",
3+
"url": "https://linkedin.com/in/yourhandle",
4+
"email": "you@example.com"
5+
}

.claude/docs/STYLE_GUIDE.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -250,6 +250,7 @@ Every guide header follows this pattern:
250250
</div>
251251
<h1><span class="purple">tmux</span> <span class="muted">×</span> <span class="green">Claude</span><br>Cheatsheet</h1>
252252
<p class="byline">// multi-project · multi-session · multi-agent</p>
253+
<p class="author">by <a href="[author url]" target="_blank">[Author Name]</a></p>
253254
</header>
254255
```
255256

@@ -288,6 +289,19 @@ header {
288289
font-family: var(--mono);
289290
}
290291

292+
.author {
293+
font-family: var(--mono);
294+
font-size: 0.72rem;
295+
color: var(--muted);
296+
margin-top: 0.5rem;
297+
letter-spacing: 0.03em;
298+
}
299+
.author a {
300+
color: var(--accent-green);
301+
text-decoration: none;
302+
}
303+
.author a:hover { text-decoration: underline; }
304+
291305
h1 {
292306
font-family: var(--display);
293307
font-size: clamp(1.8rem, 4vw, 3rem);
@@ -392,3 +406,32 @@ Search behavior rules:
392406
- Highlights matched text in results
393407
- Shows "No results" message when nothing matches
394408
- Does not filter across sections that are hidden by tab/filter
409+
410+
---
411+
412+
## Footer Pattern
413+
414+
Every guide must include a footer with the Devteds attribution:
415+
416+
```html
417+
<footer>
418+
<p>DevGuides by <a href="https://devteds.com" target="_blank">Devteds</a></p>
419+
</footer>
420+
```
421+
422+
```css
423+
footer {
424+
text-align: center;
425+
margin-top: 3rem;
426+
padding-top: 2rem;
427+
border-top: 1px solid var(--border);
428+
font-family: var(--mono);
429+
font-size: 0.7rem;
430+
color: var(--muted);
431+
}
432+
footer a {
433+
color: var(--accent-green);
434+
text-decoration: none;
435+
}
436+
footer a:hover { text-decoration: underline; }
437+
```

.claude/skills/newguide/SKILL.md

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,15 @@ HTML rules:
142142
- Must render correctly via file:// and GitHub Pages
143143
- NEVER copy from a previous guide — always generate fresh from the spec
144144

145+
For the author, read `.author.json` from the project root:
146+
```bash
147+
cat .author.json
148+
```
149+
This file contains `name` (required), and optionally `url` and `email`.
150+
- Use `name` for the meta.json `author` field and the HTML author display
151+
- If `url` is present, make the author name a clickable link (opens in new tab)
152+
- If `.author.json` does not exist, fall back to `git config user.name`
153+
145154
Also write `guides/[slug]/meta.json`:
146155
```json
147156
{
@@ -152,7 +161,7 @@ Also write `guides/[slug]/meta.json`:
152161
"category": "string — from defined categories",
153162
"created": "YYYY-MM-DD",
154163
"updated": "YYYY-MM-DD",
155-
"author": "string"
164+
"author": "string — from git config user.name"
156165
}
157166
```
158167

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,6 @@ desktop.ini
1919

2020
# Local/temp
2121
tmp/
22+
23+
# Author config (personal)
24+
.author.json

README.md

Lines changed: 46 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,14 +50,59 @@ DevPages helps you create, preview, and publish beautiful standalone HTML guide
5050

5151
1. Clone this repo
5252
2. Enable GitHub Pages: Settings → Pages → Deploy from branch → `main` / `/ (root)`
53-
3. Open in Claude Code and run `/newguide`
53+
3. Set up your author identity (see below)
54+
4. Open in Claude Code and run `/newguide`
55+
56+
## Author Configuration
57+
58+
Guides are attributed to the author. Create a `.author.json` file in the project root:
59+
60+
```bash
61+
cp .author.example.json .author.json
62+
```
63+
64+
Then edit it with your details:
65+
66+
```json
67+
{
68+
"name": "Your Name",
69+
"url": "https://linkedin.com/in/yourhandle",
70+
"email": "you@example.com"
71+
}
72+
```
73+
74+
- `name`**required** — your display name
75+
- `url` — optional — link attached to your name (LinkedIn, website, etc.)
76+
- `email` — optional — not displayed publicly, stored in meta.json only
77+
78+
If `.author.json` is not present, the author defaults to your `git config user.name`.
79+
80+
> **Note:** `.author.json` is gitignored — each contributor maintains their own.
5481
5582
## Prerequisites
5683

5784
- Node.js >= 16 (for build-index.js)
5885
- Git with push access to this repo
5986
- Claude Code CLI
6087

88+
## Contributing
89+
90+
Contributions are welcome! To get started:
91+
92+
1. Fork this repo
93+
2. Clone your fork and set up your `.author.json` (see above)
94+
3. Create a branch for your guide: `git checkout -b guide/your-topic`
95+
4. Run `/newguide` in Claude Code to create your guide
96+
5. Preview it locally, then open a PR against `main`
97+
98+
### Guidelines
99+
100+
- One guide per PR
101+
- Follow the existing style guide (`.claude/docs/STYLE_GUIDE.md`)
102+
- Keep guides self-contained — no external file dependencies
103+
- Include accurate, up-to-date commands and shortcuts
104+
- Test that the HTML renders correctly via `file://` before submitting
105+
61106
## License
62107

63108
This project is licensed under the [MIT License](LICENSE).

guides/tmux-claude-cli/index.html

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -408,6 +408,36 @@
408408

409409
.section.section-hidden { display: none; }
410410

411+
/* Author */
412+
.author {
413+
font-family: var(--mono);
414+
font-size: 0.72rem;
415+
color: var(--muted);
416+
margin-top: 0.5rem;
417+
letter-spacing: 0.03em;
418+
}
419+
.author a {
420+
color: var(--accent-green);
421+
text-decoration: none;
422+
}
423+
.author a:hover { text-decoration: underline; }
424+
425+
/* Footer */
426+
footer {
427+
text-align: center;
428+
margin-top: 3rem;
429+
padding-top: 2rem;
430+
border-top: 1px solid var(--border);
431+
font-family: var(--mono);
432+
font-size: 0.7rem;
433+
color: var(--muted);
434+
}
435+
footer a {
436+
color: var(--accent-green);
437+
text-decoration: none;
438+
}
439+
footer a:hover { text-decoration: underline; }
440+
411441
/* Responsive */
412442
@media (max-width: 600px) {
413443
.cards { grid-template-columns: 1fr; }
@@ -432,6 +462,7 @@
432462
</div>
433463
<h1><span class="purple">tmux</span> <span class="muted">&times;</span> <span class="green">Claude Code</span><br>Cheatsheet</h1>
434464
<p class="byline">// multi-project &middot; multi-session &middot; multi-agent</p>
465+
<p class="author">by <a href="https://www.linkedin.com/in/shettigarc/" target="_blank">Chandra Shettigar</a></p>
435466
</header>
436467

437468
<!-- Tabs -->
@@ -1000,6 +1031,10 @@ <h1><span class="purple">tmux</span> <span class="muted">&times;</span> <span cl
10001031
</div>
10011032
</div>
10021033

1034+
<footer>
1035+
<p>DevGuides by <a href="https://devteds.com" target="_blank">Devteds</a></p>
1036+
</footer>
1037+
10031038
</div><!-- .wrap -->
10041039

10051040
<script>

index.html

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -238,6 +238,11 @@
238238
font-size: 0.7rem;
239239
color: var(--muted);
240240
}
241+
footer a {
242+
color: var(--accent-green);
243+
text-decoration: none;
244+
}
245+
footer a:hover { text-decoration: underline; }
241246

242247
@media (max-width: 600px) {
243248
.guide-grid { grid-template-columns: 1fr; }
@@ -284,7 +289,7 @@ <h3 class="guide-title">Tmux + Claude Code CLI Cheatsheet</h3>
284289
</div>
285290

286291
<footer>
287-
Generated by Claude Code &middot; 2026-03-27
292+
DevGuides by <a href="https://devteds.com" target="_blank">Devteds</a>
288293
</footer>
289294
</div>
290295

scripts/build-index.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -336,6 +336,11 @@ function generateIndexHtml(guides) {
336336
font-size: 0.7rem;
337337
color: var(--muted);
338338
}
339+
footer a {
340+
color: var(--accent-green);
341+
text-decoration: none;
342+
}
343+
footer a:hover { text-decoration: underline; }
339344
340345
@media (max-width: 600px) {
341346
.guide-grid { grid-template-columns: 1fr; }
@@ -366,7 +371,7 @@ ${guides.length > 0 ? guideCardsHtml : emptyStateHtml}
366371
</div>
367372
368373
<footer>
369-
Generated by Claude Code &middot; ${today}
374+
DevGuides by <a href="https://devteds.com" target="_blank">Devteds</a>
370375
</footer>
371376
</div>
372377

0 commit comments

Comments
 (0)