Project Documentation
The Documentation section provides a rich-text space for project-specific documentation such as test strategies, scope definitions, onboarding guides, and reference materials. Each project has its own dedicated documentation page that supports collaborative editing with comprehensive formatting capabilities.
Overview
Project documentation provides:
- Rich Text Editing - Full-featured editor with formatting, media, and AI assistance
- Centralized Knowledge - Single source of truth for project information
- Access Control - Permission-based editing with read-only viewing
- Version History - Track changes through edit and save operations
- Collaborative - Multiple team members can contribute to project documentation
- Default Templates - Start with pre-configured documentation structure
Accessing Documentation
Navigate to Projects → [Your Project] → Documentation from the sidebar.
The documentation page displays:
- Project Header - Shows project icon and name
- Edit Button - Available to users with edit permissions (top-right)
- Rich Text Content - Formatted documentation displayed in a full-height editor
Viewing Documentation
All project members with read access can view documentation:
- Navigate to the Documentation tab for your project
- View the rendered rich-text content
- Scroll through the documentation as needed
- Links, images, and videos are interactive
- Code blocks are syntax-highlighted
Read-Only Mode:
- Editor displays content without modification capability
- All formatting, images, and media are visible
- Links are clickable
- Users without edit permissions see read-only view automatically
Editing Documentation
Starting Edit Mode
To edit project documentation:
- Click the Edit Documentation button in the top-right corner
- The editor becomes active with full toolbar
- Make your changes using the rich-text editor
- Click Save to persist changes or Cancel to discard
Editing documentation requires the Add/Edit permission for the Documentation application area for the specific project. Users without this permission will not see the "Edit Documentation" button and the editor will be read-only.
Editor Features
The TipTap-based editor provides extensive formatting capabilities:
Text Formatting
Basic Formatting:
- Bold - Highlight important text (Ctrl/Cmd + B)
- Italic - Emphasize text (Ctrl/Cmd + I)
- Underline - Underline text (Ctrl/Cmd + U)
- Strikethrough - Cross out text
Text Structure:
- Heading 1 - Top-level section headers
- Heading 2 - Subsection headers
- Heading 3 - Sub-subsection headers
- Paragraph - Normal body text
- Blockquote - Quoted content
- Code - Inline code snippets
- Code Block - Multi-line code with syntax highlighting
Lists:
- Bullet List - Unordered lists
- Numbered List - Ordered lists with automatic numbering
Advanced Features
Links:
- Select text to link
- Click the Link button in the toolbar
- Enter the URL in the popup dialog
- Click to confirm
- Linked text appears with link styling
To Remove Links:
- Select linked text and click the link button again
Images:
- Click the Upload button or drag and drop an image file
- Images are automatically uploaded to project storage
- Resize images by dragging corners (in edit mode)
- Images display inline within the documentation
Supported Image Formats:
- PNG, JPG, JPEG, GIF, WebP
- Automatic resize and optimization
Videos:
- Upload video files using the upload button
- Videos are embedded with playback controls
- Supports common video formats
Emoji:
- Click the Emoji button (smile icon)
- Search or browse GitHub emoji library
- Click to insert emoji into text
- Emojis render as standard Unicode characters
Color:
- Text color customization available
- Choose from color palette
- Applies to selected text
AI Assistance
If your project has LLM integrations configured, AI features become available:
AI-Powered Actions:
- Improve Writing - Enhance clarity and grammar
- Make Shorter - Condense verbose text
- Make Longer - Expand brief content
- Fix Spelling & Grammar - Correct errors
- Change Tone - Adjust formality or style
- Simplify Language - Make content more accessible
- Custom Prompt - Provide specific instructions
Using AI Features:
- Select text you want to improve
- Click the AI (wand) button in the toolbar
- Choose an action from the dropdown
- AI processes the text using configured LLM
- Review the suggestion in the dialog
- Click Apply to accept or Cancel to discard
Requirements for AI:
- Project must have an LLM integration configured
- See LLM Integrations for setup instructions
- Supported providers: OpenAI, Anthropic Claude, Google Gemini, Azure OpenAI, Ollama, Custom LLM
Saving and Canceling
Save Changes:
- Click the Save button at the bottom of the editor
- Documentation is saved to the database as JSON
- Changes are immediately visible to all project members
- You return to read-only view mode
Cancel Editing:
- Click the Cancel button to discard changes
- Original documentation content is restored from the database
- All unsaved edits are lost
- You return to read-only view mode
Navigating away from the page while editing will lose unsaved changes. Always click Save before leaving.
Undo and Redo
- Undo (Ctrl/Cmd + Z) - Revert the last change
- Redo (Ctrl/Cmd + Y / Ctrl/Cmd + Shift + Z) - Reapply undone change
- Edit history is maintained during your editing session
- Undo/redo history is lost when you save or cancel
Default Documentation Content
Initial Content
When a project is created, it may include default documentation content based on system configuration.
Default Template:
- Configured in system settings under
project_docs_default - Administrators can customize the default template
- Provides a starting structure for new projects
- Can include headings, sections, and placeholder text
Example Default Structure:
# Project Overview
[Project description and goals]
# Testing Strategy
[Approach to testing this project]
# Scope
[What's in scope and out of scope]
# Test Environments
[Available test environments]
# Getting Started
[Onboarding information for new team members]
Customizing Defaults
System administrators can update the default template:
- Navigate to Administration → Settings
- Find the
project_docs_defaultconfiguration - Edit the JSON content
- New projects will use the updated template
Best Practices
Documentation Structure
1. Organize with Headings
- Use Heading 1 for main sections
- Use Heading 2 and 3 for subsections
- Create a logical hierarchy
2. Start with Overview
- Begin with project introduction
- Define scope and objectives
- Link to related resources
3. Include Key Sections:
- Test Strategy - Overall approach to testing
- Environments - Available test environments and access
- Test Data - Where to find or how to create test data
- Known Issues - Current limitations or workarounds
- Contacts - Key stakeholders and their roles
- Resources - Links to requirements, designs, APIs
Writing Effective Documentation
1. Be Concise
- Use clear, simple language
- Break up large paragraphs
- Use lists for multiple items
- Avoid unnecessary jargon
2. Keep It Current
- Update documentation when processes change
- Remove outdated information
- Mark temporary notes clearly
- Review periodically
3. Use Visual Elements
- Include diagrams and screenshots
- Use code blocks for technical examples
- Embed videos for complex workflows
- Use emoji sparingly for visual breaks
4. Link to Resources
- Link to external documentation
- Reference test cases and test runs
- Link to issue tracker tickets
- Connect to related projects
Collaboration Guidelines
1. Communicate Changes
- Notify team when making major updates
- Use comments to discuss changes
- Coordinate with other editors
- Avoid simultaneous editing
2. Establish Conventions
- Agree on documentation structure
- Define standard sections
- Use consistent terminology
- Follow style guidelines
3. Ownership and Maintenance
- Assign documentation ownership
- Schedule regular reviews
- Archive obsolete content
- Keep information accurate
Common Use Cases
Test Strategy Documentation
Purpose: Define the overall testing approach
Content to Include:
- Testing objectives and goals
- Types of testing (unit, integration, E2E, performance)
- Test coverage targets
- Entry and exit criteria
- Risk assessment
- Tools and frameworks
- Reporting procedures
Example Structure:
# Test Strategy
## Objectives
- Ensure all critical user flows are tested
- Maintain 80%+ code coverage
- Automate regression tests
## Testing Types
### Unit Testing
- Framework: Jest
- Coverage target: 80%
- Responsible: Developers
### Integration Testing
- Framework: Playwright
- Environment: Staging
- Frequency: Every release
## Risk Assessment
- High Risk: Payment processing
- Medium Risk: User authentication
- Low Risk: UI cosmetics
Onboarding Guide
Purpose: Help new team members get started
Content to Include:
- Project overview and context
- Team structure and contacts
- Development environment setup
- Test environment access
- Coding standards
- Testing standards
- Common workflows
- FAQ
Environment Documentation
Purpose: Document test environments and access
Content to Include:
- Environment names and URLs
- Access credentials (or where to find them)
- Environment-specific configurations
- Data refresh schedules
- Known environment issues
- Deployment procedures
API Reference
Purpose: Document APIs under test
Content to Include:
- Base URLs for different environments
- Authentication methods
- Key endpoints and their purposes
- Request/response examples
- Rate limits
- Error codes
Runbook
Purpose: Operational procedures for testing
Content to Include:
- How to execute test runs
- Smoke test procedures
- Regression test procedures
- Performance test procedures
- Bug reporting process
- Escalation procedures
Troubleshooting
Cannot Edit Documentation
Issue: Edit button is not visible or disabled
Solutions:
- Verify you have the
Add/Editpermission for Documentation - Check your project role and permissions
- Contact project admin to request edit access
- Ensure you're viewing the correct project
Changes Not Saving
Issue: Save button doesn't work or changes are lost
Solutions:
- Check your network connection
- Ensure you clicked Save (not just Cancel)
- Verify you have edit permissions
- Try refreshing and re-editing
- Check browser console for errors
Images Not Uploading
Issue: Image upload fails or images don't display
Solutions:
- Verify image file size is reasonable (< 10MB recommended)
- Check file format is supported (PNG, JPG, GIF, WebP)
- Ensure project has file storage configured
- Check network connectivity during upload
- Try using a smaller image
AI Features Not Available
Issue: AI button is missing or doesn't work
Solutions:
- Verify project has LLM integration configured
- Check that integration is active and properly set up
- Ensure you selected text before clicking AI button
- Verify API keys are valid for the LLM provider
- Check project permissions for LLM features
Content Formatting Lost
Issue: Formatting disappears or looks incorrect
Solutions:
- Avoid pasting from Microsoft Word (use plain text)
- Use the editor's formatting tools rather than copy-paste
- Clear formatting and reapply if needed
- Check for conflicting HTML in pasted content
- Try editing in a different browser
Performance Issues
Issue: Editor is slow or unresponsive
Solutions:
- Break up very long documentation into multiple sections
- Optimize large images before uploading
- Remove unused images and videos
- Clear browser cache
- Try a different browser
- Check system resources
Permissions
Required Permissions
View Documentation:
- Read access to the project
- Default permission for all project members
- Documentation inherits project access control
Edit Documentation:
Add/Editpermission forDocumentationapplication area- Assigned at the project level through roles
- Typically granted to Managers, Admins, and specific Members
Permission Levels
Project Roles with Documentation Editing:
- Admin - Full edit access
- Manager - Full edit access (default)
- Member - Can be granted edit access
- Tester - Typically read-only
- Guest - Read-only
Granting Edit Access:
- Navigate to Projects → [Project] → Settings → Permissions
- Select a role to modify
- Enable
Add/Editfor theDocumentationapplication area - Save changes
- Users with that role can now edit documentation
Technical Details
Storage Format
- Documentation is stored in the
Projects.docsfield - Format: JSON (TipTap document structure)
- Contains content nodes with formatting metadata
- Supports rich media references (images, videos)
Example JSON Structure:
{
"type": "doc",
"content": [
{
"type": "heading",
"attrs": { "level": 1 },
"content": [{ "type": "text", "text": "Project Overview" }]
},
{
"type": "paragraph",
"content": [{ "type": "text", "text": "This project..." }]
}
]
}
File Uploads
- Images and videos are uploaded to project file storage
- S3 or MinIO backend (configurable)
- Files are associated with the project
- URLs are embedded in the documentation JSON
- Deleted documentation doesn't auto-delete uploaded files
Performance
- Documentation loads asynchronously
- Large documents are handled efficiently by TipTap
- Images are lazy-loaded
- Video playback is on-demand
- Editor optimized for documents up to several MB
Browser Compatibility
- Modern browsers: Chrome, Firefox, Safari, Edge
- JavaScript must be enabled
- Drag-and-drop requires modern browser
- Mobile browsers supported (view mode)
- Edit mode best on desktop/laptop
API Reference
Get Project Documentation
GET /api/model/Projects/findFirst?q={
"where": { "id": 123 },
"select": { "docs": true }
}
Update Project Documentation
PUT /api/model/Projects/update
Content-Type: application/json
{
"where": { "id": 123 },
"data": {
"docs": {
"type": "doc",
"content": [...]
}
}
}
Response:
{
"id": 123,
"name": "Project Name",
"docs": { "type": "doc", "content": [...] }
}
Default Template Configuration
GET /api/model/AppConfig/findFirst?q={
"where": { "key": "project_docs_default" }
}
Returns the default documentation template used for new projects.
Related Documentation:
- Projects - Project management overview
- LLM Integrations - Configure AI assistance
- Permissions - Understanding access control