mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-04-28 10:26:33 +02:00
feat: enhance SurfSense with new skills, blog section, and improve SEO metadata
Some checks failed
Build and Push Docker Images / tag_release (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Has been cancelled
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Has been cancelled
Some checks failed
Build and Push Docker Images / tag_release (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Has been cancelled
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Has been cancelled
- Added multiple new skills to skills-lock.json from the repository `aaron-he-zhu/seo-geo-claude-skills`. - Introduced `fuzzy-search` dependency in package.json for improved search functionality. - Updated pnpm-lock.yaml to include the new `fuzzy-search` package. - Enhanced SEO metadata across various pages, including canonical links and descriptions for better search visibility. - Improved layout and structure of several components, including the homepage and changelog, to enhance user experience.
This commit is contained in:
parent
61b3f0d7e3
commit
7ea840dbb2
120 changed files with 25729 additions and 352 deletions
|
|
@ -0,0 +1,311 @@
|
|||
# Technical SEO Checker — Output Templates
|
||||
|
||||
Detailed output templates for technical-seo-checker steps 3-9. Referenced from [SKILL.md](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/optimize/technical-seo-checker/SKILL.md).
|
||||
|
||||
---
|
||||
|
||||
## Step 3: Audit Site Speed & Core Web Vitals
|
||||
|
||||
```markdown
|
||||
## Performance Analysis
|
||||
|
||||
### Core Web Vitals
|
||||
|
||||
| Metric | Mobile | Desktop | Target | Status |
|
||||
|--------|--------|---------|--------|--------|
|
||||
| LCP (Largest Contentful Paint) | [X]s | [X]s | <2.5s | ✅/⚠️/❌ |
|
||||
| FID (First Input Delay) | [X]ms | [X]ms | <100ms | ✅/⚠️/❌ |
|
||||
| CLS (Cumulative Layout Shift) | [X] | [X] | <0.1 | ✅/⚠️/❌ |
|
||||
| INP (Interaction to Next Paint) | [X]ms | [X]ms | <200ms | ✅/⚠️/❌ |
|
||||
|
||||
### Additional Performance Metrics
|
||||
|
||||
| Metric | Value | Status |
|
||||
|--------|-------|--------|
|
||||
| Time to First Byte (TTFB) | [X]ms | ✅/⚠️/❌ |
|
||||
| First Contentful Paint (FCP) | [X]s | ✅/⚠️/❌ |
|
||||
| Speed Index | [X] | ✅/⚠️/❌ |
|
||||
| Total Blocking Time | [X]ms | ✅/⚠️/❌ |
|
||||
| Page Size | [X]MB | ✅/⚠️/❌ |
|
||||
| Requests | [X] | ✅/⚠️/❌ |
|
||||
|
||||
### Performance Issues
|
||||
|
||||
**LCP Issues**:
|
||||
- [Issue]: [Impact] - [Solution]
|
||||
- [Issue]: [Impact] - [Solution]
|
||||
|
||||
**CLS Issues**:
|
||||
- [Issue]: [Impact] - [Solution]
|
||||
|
||||
**Resource Loading**:
|
||||
| Resource Type | Count | Size | Issues |
|
||||
|---------------|-------|------|--------|
|
||||
| Images | [X] | [X]MB | [notes] |
|
||||
| JavaScript | [X] | [X]MB | [notes] |
|
||||
| CSS | [X] | [X]KB | [notes] |
|
||||
| Fonts | [X] | [X]KB | [notes] |
|
||||
|
||||
### Optimization Recommendations
|
||||
|
||||
**High Impact**:
|
||||
1. [Recommendation] - Est. improvement: [X]s
|
||||
2. [Recommendation] - Est. improvement: [X]s
|
||||
|
||||
**Medium Impact**:
|
||||
1. [Recommendation]
|
||||
2. [Recommendation]
|
||||
|
||||
**Performance Score**: [X]/10
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 4: Audit Mobile-Friendliness
|
||||
|
||||
```markdown
|
||||
## Mobile Optimization Analysis
|
||||
|
||||
### Mobile-Friendly Test
|
||||
|
||||
| Check | Status | Notes |
|
||||
|-------|--------|-------|
|
||||
| Mobile-friendly overall | ✅/❌ | [notes] |
|
||||
| Viewport configured | ✅/❌ | [viewport tag] |
|
||||
| Text readable | ✅/⚠️/❌ | Font size: [X]px |
|
||||
| Tap targets sized | ✅/⚠️/❌ | [notes] |
|
||||
| Content fits viewport | ✅/❌ | [notes] |
|
||||
| No horizontal scroll | ✅/❌ | [notes] |
|
||||
|
||||
### Responsive Design Check
|
||||
|
||||
| Element | Desktop | Mobile | Issues |
|
||||
|---------|---------|--------|--------|
|
||||
| Navigation | [status] | [status] | [notes] |
|
||||
| Images | [status] | [status] | [notes] |
|
||||
| Forms | [status] | [status] | [notes] |
|
||||
| Tables | [status] | [status] | [notes] |
|
||||
| Videos | [status] | [status] | [notes] |
|
||||
|
||||
### Mobile-First Indexing
|
||||
|
||||
| Check | Status | Notes |
|
||||
|-------|--------|-------|
|
||||
| Mobile version has all content | ✅/⚠️/❌ | [notes] |
|
||||
| Mobile has same structured data | ✅/⚠️/❌ | [notes] |
|
||||
| Mobile has same meta tags | ✅/⚠️/❌ | [notes] |
|
||||
| Mobile images have alt text | ✅/⚠️/❌ | [notes] |
|
||||
|
||||
**Mobile Score**: [X]/10
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 5: Audit Security & HTTPS
|
||||
|
||||
```markdown
|
||||
## Security Analysis
|
||||
|
||||
### HTTPS Status
|
||||
|
||||
| Check | Status | Notes |
|
||||
|-------|--------|-------|
|
||||
| SSL certificate valid | ✅/❌ | Expires: [date] |
|
||||
| HTTPS enforced | ✅/❌ | [redirects properly?] |
|
||||
| Mixed content | ✅/⚠️/❌ | [X] issues |
|
||||
| HSTS enabled | ✅/⚠️ | [notes] |
|
||||
| Certificate chain | ✅/⚠️/❌ | [notes] |
|
||||
|
||||
### Security Headers
|
||||
|
||||
| Header | Present | Value | Recommended |
|
||||
|--------|---------|-------|-------------|
|
||||
| Content-Security-Policy | ✅/❌ | [value] | [recommendation] |
|
||||
| X-Frame-Options | ✅/❌ | [value] | DENY or SAMEORIGIN |
|
||||
| X-Content-Type-Options | ✅/❌ | [value] | nosniff |
|
||||
| X-XSS-Protection | ✅/❌ | [value] | 1; mode=block |
|
||||
| Referrer-Policy | ✅/❌ | [value] | [recommendation] |
|
||||
|
||||
**Security Score**: [X]/10
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 6: Audit URL Structure
|
||||
|
||||
```markdown
|
||||
## URL Structure Analysis
|
||||
|
||||
### URL Pattern Review
|
||||
|
||||
| Check | Status | Notes |
|
||||
|-------|--------|-------|
|
||||
| HTTPS URLs | ✅/⚠️/❌ | [X]% HTTPS |
|
||||
| Lowercase URLs | ✅/⚠️/❌ | [notes] |
|
||||
| No special characters | ✅/⚠️/❌ | [notes] |
|
||||
| Readable/descriptive | ✅/⚠️/❌ | [notes] |
|
||||
| Appropriate length | ✅/⚠️/❌ | Avg: [X] chars |
|
||||
| Keywords in URLs | ✅/⚠️/❌ | [notes] |
|
||||
| Consistent structure | ✅/⚠️/❌ | [notes] |
|
||||
|
||||
### URL Issues Found
|
||||
|
||||
| Issue Type | Count | Examples |
|
||||
|------------|-------|----------|
|
||||
| Dynamic parameters | [X] | [URLs] |
|
||||
| Session IDs in URLs | [X] | [URLs] |
|
||||
| Uppercase characters | [X] | [URLs] |
|
||||
| Special characters | [X] | [URLs] |
|
||||
| Very long URLs (>100) | [X] | [URLs] |
|
||||
|
||||
### Redirect Analysis
|
||||
|
||||
| Check | Status | Notes |
|
||||
|-------|--------|-------|
|
||||
| Redirect chains | [X] found | [max chain length] |
|
||||
| Redirect loops | [X] found | [URLs] |
|
||||
| 302 → 301 needed | [X] found | [URLs] |
|
||||
| Broken redirects | [X] found | [URLs] |
|
||||
|
||||
**URL Score**: [X]/10
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 7: Audit Structured Data
|
||||
|
||||
> **CORE-EEAT alignment**: Schema markup quality maps to O05 (Schema Markup) in the CORE-EEAT benchmark. See [content-quality-auditor](https://github.com/aaron-he-zhu/seo-geo-claude-skills/blob/main/cross-cutting/content-quality-auditor/SKILL.md) for full content quality audit.
|
||||
|
||||
```markdown
|
||||
## Structured Data Analysis
|
||||
|
||||
### Schema Markup Found
|
||||
|
||||
| Schema Type | Pages | Valid | Errors |
|
||||
|-------------|-------|-------|--------|
|
||||
| [Type 1] | [X] | ✅/❌ | [errors] |
|
||||
| [Type 2] | [X] | ✅/❌ | [errors] |
|
||||
|
||||
### Validation Results
|
||||
|
||||
**Errors**:
|
||||
- [Error 1]: [affected pages] - [solution]
|
||||
- [Error 2]: [affected pages] - [solution]
|
||||
|
||||
**Warnings**:
|
||||
- [Warning 1]: [notes]
|
||||
|
||||
### Missing Schema Opportunities
|
||||
|
||||
| Page Type | Current Schema | Recommended |
|
||||
|-----------|----------------|-------------|
|
||||
| Blog posts | [current] | Article + FAQ |
|
||||
| Products | [current] | Product + Review |
|
||||
| Homepage | [current] | Organization |
|
||||
|
||||
**Structured Data Score**: [X]/10
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 8: Audit International SEO (if applicable)
|
||||
|
||||
```markdown
|
||||
## International SEO Analysis
|
||||
|
||||
### Hreflang Implementation
|
||||
|
||||
| Check | Status | Notes |
|
||||
|-------|--------|-------|
|
||||
| Hreflang tags present | ✅/❌ | [notes] |
|
||||
| Self-referencing | ✅/⚠️/❌ | [notes] |
|
||||
| Return tags present | ✅/⚠️/❌ | [notes] |
|
||||
| Valid language codes | ✅/⚠️/❌ | [notes] |
|
||||
| x-default tag | ✅/⚠️ | [notes] |
|
||||
|
||||
### Language/Region Targeting
|
||||
|
||||
| Language | URL | Hreflang | Status |
|
||||
|----------|-----|----------|--------|
|
||||
| [en-US] | [URL] | [tag] | ✅/⚠️/❌ |
|
||||
| [es-ES] | [URL] | [tag] | ✅/⚠️/❌ |
|
||||
|
||||
**International Score**: [X]/10
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 9: Generate Technical Audit Summary
|
||||
|
||||
```markdown
|
||||
# Technical SEO Audit Report
|
||||
|
||||
**Domain**: [domain]
|
||||
**Audit Date**: [date]
|
||||
**Pages Analyzed**: [X]
|
||||
|
||||
## Overall Technical Health: [X]/100
|
||||
|
||||
```
|
||||
Score Breakdown:
|
||||
████████░░ Crawlability: 8/10
|
||||
███████░░░ Indexability: 7/10
|
||||
█████░░░░░ Performance: 5/10
|
||||
████████░░ Mobile: 8/10
|
||||
█████████░ Security: 9/10
|
||||
██████░░░░ URL Structure: 6/10
|
||||
█████░░░░░ Structured Data: 5/10
|
||||
```
|
||||
|
||||
## Critical Issues (Fix Immediately)
|
||||
|
||||
1. **[Issue]**: [Impact]
|
||||
- Affected: [pages/scope]
|
||||
- Solution: [specific fix]
|
||||
- Priority: 🔴 Critical
|
||||
|
||||
2. **[Issue]**: [Impact]
|
||||
- Affected: [pages/scope]
|
||||
- Solution: [specific fix]
|
||||
- Priority: 🔴 Critical
|
||||
|
||||
## High Priority Issues
|
||||
|
||||
1. **[Issue]**: [Solution]
|
||||
2. **[Issue]**: [Solution]
|
||||
|
||||
## Medium Priority Issues
|
||||
|
||||
1. **[Issue]**: [Solution]
|
||||
2. **[Issue]**: [Solution]
|
||||
|
||||
## Quick Wins
|
||||
|
||||
These can be fixed quickly for immediate improvement:
|
||||
|
||||
1. [Quick fix 1]
|
||||
2. [Quick fix 2]
|
||||
3. [Quick fix 3]
|
||||
|
||||
## Implementation Roadmap
|
||||
|
||||
### Week 1: Critical Fixes
|
||||
- [ ] [Task 1]
|
||||
- [ ] [Task 2]
|
||||
|
||||
### Week 2-3: High Priority
|
||||
- [ ] [Task 1]
|
||||
- [ ] [Task 2]
|
||||
|
||||
### Week 4+: Optimization
|
||||
- [ ] [Task 1]
|
||||
- [ ] [Task 2]
|
||||
|
||||
## Monitoring Recommendations
|
||||
|
||||
Set up alerts for:
|
||||
- Core Web Vitals drops
|
||||
- Crawl error spikes
|
||||
- Index coverage changes
|
||||
- Security issues
|
||||
```
|
||||
Loading…
Add table
Add a link
Reference in a new issue