Skip to content

Commit 1e471d9

Browse files
committed
chore: adds documentation site and SEO improvements
Initializes a documentation site for the project, including essential files such as HTML, robots.txt, and sitemap.xml. Implements several SEO enhancements, including meta tags, crawler configurations, and AI reference guides, to improve discoverability across search engines and developer communities.
1 parent 21f2a5d commit 1e471d9

10 files changed

Lines changed: 922 additions & 3 deletions

site/OG-IMAGE-GUIDE.md

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
# Creating Your Social Preview Image (og-image.png)
2+
3+
## Requirements
4+
- **Dimensions**: 1200 x 630 pixels
5+
- **Format**: PNG or JPG
6+
- **File size**: < 5MB (ideally < 300KB)
7+
- **Location**: `site/public/og-image.png`
8+
9+
## Design Recommendations
10+
11+
### Layout
12+
```
13+
???????????????????????????????????????????????????
14+
? ?
15+
? [Logo] FactoryTools ?
16+
? ?
17+
? Lightweight .NET Template Engine ?
18+
? ?
19+
? • Code Generation ?
20+
? • Data Composition ?
21+
? • Zero Dependencies ?
22+
? ?
23+
? ? Simpler than Razor ?
24+
? ? Faster than T4 ?
25+
? ?
26+
? tools.lowlandtech.com ?
27+
? ?
28+
???????????????????????????????????????????????????
29+
```
30+
31+
### Design Elements
32+
1. **Background**: Clean gradient or solid color (#0ea5e9 brand blue)
33+
2. **Logo**: Your wrench.svg icon (large, left side)
34+
3. **Title**: "FactoryTools" in large, bold font
35+
4. **Subtitle**: "Lightweight .NET Template Engine"
36+
5. **Key Points**: 2-3 bullet points or icons
37+
6. **CTA/URL**: "tools.lowlandtech.com" at bottom
38+
7. **Code Snippet** (optional): Small example showing ${...} syntax
39+
40+
### Tools for Creation
41+
- **Canva**: canva.com (easy, templates available)
42+
- **Figma**: figma.com (professional, free tier)
43+
- **Photoshop/GIMP**: For full control
44+
- **Placid.app**: Automated OG image generation
45+
- **Cloudinary**: Dynamic OG images
46+
47+
### Quick Canva Template
48+
1. Go to Canva
49+
2. Search "Facebook Post" (1200x630)
50+
3. Use this design:
51+
- Background: Gradient (#0ea5e9 to #0284c7)
52+
- Add your wrench icon
53+
- Title: "FactoryTools" (72pt, Bold)
54+
- Subtitle: "Lightweight .NET Template Engine" (36pt)
55+
- Bullet points: (24pt)
56+
- "? Simpler than Razor"
57+
- "? Zero Dependencies"
58+
- "?? Built for Code Generation"
59+
- Footer: "tools.lowlandtech.com" (20pt)
60+
61+
### Example Code Snippet (Optional)
62+
```csharp
63+
var template = @"
64+
Hello, ${Name}!
65+
@if (IsAdmin) {
66+
Welcome, admin!
67+
}";
68+
```
69+
70+
### Color Palette
71+
- **Primary Blue**: #0ea5e9 (Cyan 500)
72+
- **Dark Blue**: #0284c7 (Cyan 600)
73+
- **White**: #ffffff
74+
- **Dark Text**: #1e293b (Slate 800)
75+
- **Light Text**: #f1f5f9 (Slate 100)
76+
77+
### Font Recommendations
78+
- **Title**: Inter Bold, Poppins Bold, or Montserrat Bold
79+
- **Body**: Inter Regular, Open Sans, or Roboto
80+
- **Code**: Fira Code, JetBrains Mono, or Consolas
81+
82+
## Testing Your Image
83+
84+
After creating, test it on:
85+
1. **Facebook Debugger**: https://developers.facebook.com/tools/debug/
86+
2. **Twitter Card Validator**: https://cards-dev.twitter.com/validator
87+
3. **LinkedIn Post Inspector**: https://www.linkedin.com/post-inspector/
88+
4. **OpenGraph.xyz**: https://www.opengraph.xyz/
89+
90+
## Alternative: SVG to PNG Conversion
91+
92+
If you want to use your existing `wrench.svg`:
93+
94+
```bash
95+
# Using ImageMagick
96+
convert -background none -density 300 wrench.svg -resize 200x200 wrench.png
97+
98+
# Or use an online tool
99+
# https://cloudconvert.com/svg-to-png
100+
```
101+
102+
Then compose it with text using Canva or Figma.
103+
104+
## Fallback
105+
106+
If you don't create a custom image yet, update `index.html` to remove the og:image tag:
107+
108+
```html
109+
<!-- Remove or comment out these lines temporarily -->
110+
<!-- <meta property="og:image" content="https://tools.lowlandtech.com/og-image.png" /> -->
111+
<!-- <meta property="twitter:image" content="https://tools.lowlandtech.com/og-image.png" /> -->
112+
```
113+
114+
The page will still be shareable, just without a custom preview image.
115+
116+
## Once Created
117+
118+
1. Save as `site/public/og-image.png`
119+
2. Test the URL: `https://tools.lowlandtech.com/og-image.png`
120+
3. Run through validators above
121+
4. Share on social media to test!
122+
123+
---
124+
125+
**Pro Tip**: Create variations for different platforms:
126+
- `og-image.png` (1200x630 - Twitter/Facebook)
127+
- `og-image-square.png` (1200x1200 - Instagram)
128+
- `og-image-story.png` (1080x1920 - Stories)

site/SEO-CHECKLIST.md

Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
# SEO & Discoverability Checklist
2+
3+
## ? Completed
4+
5+
- [x] Enhanced meta tags in index.html (title, description, keywords)
6+
- [x] Open Graph tags for social sharing
7+
- [x] Twitter Card tags
8+
- [x] JSON-LD structured data (SoftwareApplication)
9+
- [x] Canonical URL specification
10+
- [x] robots.txt for crawler control (including AI bots)
11+
- [x] sitemap.xml with main pages
12+
- [x] AI reference guide (ai-reference.md)
13+
- [x] Crawler guide (crawl-guide.md)
14+
- [x] SEO optimization guide created
15+
16+
## ?? High Priority (Do Next)
17+
18+
### GitHub Repository
19+
- [ ] Add repository topics/tags on GitHub
20+
- [ ] Update repository description
21+
- [ ] Create social preview image (1200x630px)
22+
- [ ] Upload social preview to GitHub Settings
23+
- [ ] Enable GitHub Discussions
24+
- [ ] Add shields/badges to README
25+
26+
### NuGet Package
27+
- [ ] Update .csproj with enhanced PackageTags
28+
- [ ] Add comprehensive Description
29+
- [ ] Include PackageReadmeFile
30+
- [ ] Add PackageIcon
31+
- [ ] Verify PackageProjectUrl points to docs site
32+
33+
### Site & SEO Setup
34+
- [ ] Create og-image.png (1200x630) and upload to /public
35+
- [ ] Set up Google Search Console
36+
- [ ] Submit sitemap to Google Search Console
37+
- [ ] Set up analytics (Google Analytics or Plausible)
38+
- [ ] Verify HTTPS is working
39+
40+
## ?? Medium Priority
41+
42+
### Content Creation
43+
- [ ] Create /comparison page (FactoryTools vs Razor vs T4)
44+
- [ ] Create /use-cases page with examples
45+
- [ ] Create /faq page
46+
- [ ] Write first blog post about the project
47+
- [ ] Create migration guides (from Razor, from T4)
48+
49+
### Community & Distribution
50+
- [ ] Submit to awesome-dotnet list
51+
- [ ] Submit to awesome-csharp list
52+
- [ ] Post on r/dotnet subreddit
53+
- [ ] Post on r/csharp subreddit
54+
- [ ] Share on dev.to
55+
- [ ] Share on LinkedIn
56+
- [ ] Tweet about launch
57+
58+
### Documentation Improvements
59+
- [ ] Add breadcrumb navigation
60+
- [ ] Improve internal linking between pages
61+
- [ ] Add search functionality
62+
- [ ] Create "Popular Pages" section
63+
- [ ] Add "Edit on GitHub" links
64+
65+
## ?? Low Priority (Ongoing)
66+
67+
### Content Marketing
68+
- [ ] Create YouTube tutorial video
69+
- [ ] Write comparison blog post (vs Razor)
70+
- [ ] Write use-case blog posts
71+
- [ ] Answer Stack Overflow questions
72+
- [ ] Create Twitter content schedule
73+
- [ ] Guest post on .NET blogs
74+
75+
### Advanced SEO
76+
- [ ] Add BreadcrumbList schema
77+
- [ ] Add FAQPage schema
78+
- [ ] Add HowTo schema for tutorials
79+
- [ ] Create sitemap page for users
80+
- [ ] Optimize images (WebP format)
81+
- [ ] Add alt text to all images
82+
83+
### Community Building
84+
- [ ] Enable GitHub Sponsors
85+
- [ ] Create CONTRIBUTING.md
86+
- [ ] Create CODE_OF_CONDUCT.md
87+
- [ ] Label "good first issues"
88+
- [ ] Create issue templates
89+
- [ ] Set up PR templates
90+
91+
### Alternative Platforms
92+
- [ ] List on AlternativeTo.net
93+
- [ ] List on SourceForge
94+
- [ ] List on Slant.co
95+
- [ ] Submit to .NET Foundation showcase
96+
- [ ] Submit to Microsoft Tech Community
97+
98+
## ?? Metrics to Track
99+
100+
### Weekly
101+
- [ ] NuGet download count
102+
- [ ] GitHub stars/forks
103+
- [ ] Documentation page views
104+
105+
### Monthly
106+
- [ ] Google Search Console impressions/clicks
107+
- [ ] Keyword rankings
108+
- [ ] Backlinks acquired
109+
- [ ] Social media engagement
110+
- [ ] GitHub issues/PRs
111+
112+
## ?? Goals
113+
114+
### 1 Month
115+
- [ ] 100+ GitHub stars
116+
- [ ] 500+ NuGet downloads
117+
- [ ] Listed in 2+ awesome lists
118+
- [ ] 3+ blog posts published
119+
120+
### 3 Months
121+
- [ ] 500+ GitHub stars
122+
- [ ] 2,000+ NuGet downloads
123+
- [ ] Top 10 for "lightweight .NET template engine"
124+
- [ ] 10+ backlinks from quality sites
125+
126+
### 6 Months
127+
- [ ] 1,000+ GitHub stars
128+
- [ ] 10,000+ NuGet downloads
129+
- [ ] Featured on .NET blog or similar
130+
- [ ] Active community (issues, PRs, discussions)
131+
132+
## ?? Notes
133+
134+
- Update sitemap.xml when adding new pages
135+
- Test social sharing after each deploy
136+
- Monitor Google Search Console weekly
137+
- Engage with community feedback promptly
138+
- Keep README and docs in sync
139+
140+
---
141+
142+
Last updated: 2025-01-15

0 commit comments

Comments
 (0)