Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
63 changes: 63 additions & 0 deletions .archbee.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# Define the root directory containing your documentation
root: ./docs

# Structure configuration
structure:
# Summary file defines the navigation structure in Archbee
summary: summary.md

# Assets folder (relative to root/docs)
assets: assets

# OpenAPI/Swagger configuration options
docTreeOptions:
# Enable "Try it out" feature in API docs
openApiTryIt: true

# Show download button for OpenAPI spec file
showDownloadOpenApiFile: true

# Create separate category for schemas
shouldCreateSchemaCategory: true

# Create introduction page for API docs
shouldCreateIntro: true

# Language examples for API endpoints
openApiLanguageExamples:
- value: javascript
label: JavaScript
- value: python
label: Python
- value: curl
label: cURL
- value: php
label: PHP

# Auto-publish to production after each commit (set to false for manual publishing)
publishSpace: false

# Custom header includes (optional)
headerIncludes: |
<!-- Add any custom scripts or meta tags here -->

# Custom footer template (optional)
footerTemplate: |
<div style="text-align: center; padding: 20px; color: #666;">
<p>© 2026 WriteTech Hub - Task Manager API Documentation</p>
<p>
<a href="https://writetechhub.org" target="_blank">Website</a> |
<a href="https://github.com/WriteTech-Hub/task-tracker-app" target="_blank">GitHub</a>
</p>
</div>

# Custom CSS (optional)
customCSS: |
/* Custom styling for your documentation */
.code-block {
border-radius: 8px;
}

.endpoint-badge {
font-weight: 600;
}
14 changes: 14 additions & 0 deletions .doc-detective/tests/api/test-auth-endpoints.spec.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"tests": [
{
"id": "test-register-endpoint-structure",
"description": "Verify the register endpoint documentation is accurate",
"steps": [
{
"description": "Document that POST /api/auth/register should accept name, email, password",
"checkLink": "https://task-manager-api-documentation.vercel.app/docs/api/authentication#1-register-user"
}
]
}
]
}
23 changes: 23 additions & 0 deletions .doc-detective/tests/beginner/run-all.spec.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"$schema": "https://raw.githubusercontent.com/doc-detective/doc-detective/main/schemas/jsonSchema.json",
"tests": [
{
"id": "master-beginner-test-suite",
"description": "Run all beginner-level tests",
"steps": [
{
"action": "runShell",
"command": "npx doc-detective runTests --input tests/beginner/test-navigation.spec.json"
},
{
"action": "runShell",
"command": "npx doc-detective runTests --input tests/beginner/test-links.spec.json"
},
{
"action": "runShell",
"command": "npx doc-detective runTests --input tests/beginner/test-screenshots.spec.json"
}
]
}
]
}
30 changes: 30 additions & 0 deletions .doc-detective/tests/beginner/test-interactive.spec.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{
"$schema": "https://raw.githubusercontent.com/doc-detective/doc-detective/main/schemas/jsonSchema.json",
"tests": [
{
"id": "test-code-block-copy",
"description": "Verify code block copy functionality works",
"steps": [
{
"action": "goTo",
"url": "http://localhost:3000/docs/api/authentication"
},
{
"action": "find",
"selector": "pre code",
"description": "Find first code block"
},
{
"action": "find",
"selector": "button[class*='copyButton']",
"description": "Verify copy button exists",
"click": true
},
{
"action": "wait",
"duration": 500
}
]
}
]
}
56 changes: 56 additions & 0 deletions .doc-detective/tests/beginner/test-links.spec.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
{
"$schema": "https://raw.githubusercontent.com/doc-detective/doc-detective/main/schemas/jsonSchema.json",
"tests": [
{
"id": "test-api-navigation-links",
"description": "Test that API documentation links navigate correctly",
"steps": [
{
"action": "goTo",
"url": "https://task-manager-api-documentation.vercel.app/docs/intro"
},
{
"action": "find",
"selector": "a[href*='authentication']",
"click": true,
"description": "Click on Authentication API link"
},
{
"action": "checkLink",
"url": "https://task-manager-api-documentation.vercel.app/docs/api/authentication",
"description": "Verify we're on the Authentication page"
},
{
"action": "find",
"selector": "h1",
"matchText": "Authentication API",
"description": "Verify Authentication page heading"
}
]
},
{
"id": "test-tasks-api-link",
"description": "Test Tasks API link works",
"steps": [
{
"action": "goTo",
"url": "https://task-manager-api-documentation.vercel.app/docs/intro"
},
{
"action": "find",
"selector": "a[href*='tasks']",
"click": true
},
{
"action": "checkLink",
"url": "https://task-manager-api-documentation.vercel.app/docs/api/tasks"
},
{
"action": "find",
"selector": "h1",
"matchText": "Tasks API"
}
]
}
]
}
45 changes: 45 additions & 0 deletions .doc-detective/tests/beginner/test-navigation.spec.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
{
"$schema": "https://raw.githubusercontent.com/doc-detective/doc-detective/main/schemas/jsonSchema.json",
"tests": [
{
"id": "test-homepage-navigation",
"description": "Test that the documentation homepage loads successfully",
"steps": [
{
"action": "goTo",
"url": "https://task-manager-api-documentation.vercel.app/"
},
{
"action": "find",
"selector": "h1",
"description": "Verify the main heading exists"
},
{
"action": "find",
"selector": "text/Task Manager API",
"description": "Verify page title contains 'Task Manager API'"
}
]
},
{
"id": "test-intro-page",
"description": "Test that the introduction page loads",
"steps": [
{
"action": "goTo",
"url": "https://task-manager-api-documentation.vercel.app/docs/intro"
},
{
"action": "find",
"selector": "h1",
"matchText": "Welcome to the Task Manager API Documentation"
},
{
"action": "saveScreenshot",
"path": "tests/results/intro-page.png",
"description": "Capture intro page"
}
]
}
]
}
63 changes: 63 additions & 0 deletions .doc-detective/tests/beginner/test-screenshots.spec.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
{
"$schema": "https://raw.githubusercontent.com/doc-detective/doc-detective/main/schemas/jsonSchema.json",
"tests": [
{
"id": "capture-authentication-page",
"description": "Capture screenshot of Authentication API page",
"steps": [
{
"action": "goTo",
"url": "https://task-manager-api-documentation.vercel.app/docs/api/authentication"
},
{
"action": "wait",
"duration": 2000,
"description": "Wait for page to fully render"
},
{
"action": "saveScreenshot",
"path": "tests/results/authentication-api-page.png",
"description": "Save full page screenshot"
}
]
},
{
"id": "capture-tasks-api-table",
"description": "Capture screenshot of Tasks API endpoints table",
"steps": [
{
"action": "goTo",
"url": "https://task-manager-api-documentation.vercel.app/docs/api/tasks"
},
{
"action": "find",
"selector": "table",
"description": "Locate the endpoints table"
},
{
"action": "saveScreenshot",
"path": "tests/results/tasks-endpoints-table.png",
"description": "Capture the table"
}
]
},
{
"id": "capture-users-api",
"description": "Capture Users API page",
"steps": [
{
"action": "goTo",
"url": "https://task-manager-api-documentation.vercel.app/docs/api/users"
},
{
"action": "wait",
"duration": 2000
},
{
"action": "saveScreenshot",
"path": "tests/results/users-api-page.png"
}
]
}
]
}
33 changes: 33 additions & 0 deletions .doc-detective/tests/beginner/test-search.spec.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{
"$schema": "https://raw.githubusercontent.com/doc-detective/doc-detective/main/schemas/jsonSchema.json",
"tests": [
{
"id": "test-search-functionality",
"description": "Test that search bar accepts input",
"steps": [
{
"action": "goTo",
"url": "https://task-manager-api-documentation.vercel.app"
},
{
"action": "find",
"selector": "input[type='search'], input[placeholder*='Search']",
"description": "Locate search input"
},
{
"action": "typeKeys",
"keys": ["authentication"],
"description": "Type 'authentication' into search"
},
{
"action": "wait",
"duration": 1000
},
{
"action": "saveScreenshot",
"path": "tests/results/search-results.png"
}
]
}
]
}
Empty file.
4 changes: 4 additions & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
API_BASE_URL=https://task-manager-api-documentation.vercel.app
TEST_EMAIL=testuser@example.com
TEST_PASSWORD=TestPass123
AUTH_HEADER=Bearer test-token-12345
24 changes: 24 additions & 0 deletions .github/workflows/agent-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Agent Docs Check

on:
push:
branches: [main]
pull_request:
branches: [main]

jobs:
afdocs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '20'

- name: Install dependencies
run: npm install

- name: Run agent-friendliness check
run: npm run check:agents
Loading
Loading