- Created README-documentor.md: comprehensive guide for content contributors - Created README-likec4.md: architecture modeling guide (merged from README-ARCHITECTURE.md + LIKEC4-QUICKSTART.md) - Enhanced README-developer.md: - Added Docker/Container Build section (from DOCKER.md) - Expanded Testing section (from TESTING.md) - Added Version Management section (from VERSIONS.md) - Added LikeC4 tasks reference - Updated README.md: modernized with badges and clear structure - Deleted redundant files: - DOCUMENTOR-GUIDE.md (ASCII art, redundant to README-documentor.md) - DOCKER.md (integrated into README-developer.md) - TESTING.md (integrated into README-developer.md) - README-ARCHITECTURE.md (merged into README-likec4.md) - LIKEC4-QUICKSTART.md (merged into README-likec4.md) - VERSIONS.md (integrated into README-developer.md) - Added devbox shell step to local-development.md All hands-on documentation now follows README-* naming convention. RELEASE.md retained as process documentation (not hands-on guide).
4.7 KiB
| title | linkTitle | weight | description |
|---|---|---|---|
| Local Development | Local Development | 20 | Set up your local environment and learn the documentor workflow. |
Prerequisites
Before you start, ensure you have:
- Devbox or the following tools installed:
- Hugo Extended (latest version)
- Node.js (v24+)
- Go (for htmltest)
- Git
Installation
-
Clone the repository:
git clone <repository-url> cd ipceicis-developerframework -
Install dependencies:
task deps:install -
If using Devbox, enter the Devbox shell:
devbox shellThis ensures all tools (Hugo, Node.js, Go) are available in the correct versions.
Local Development Workflow
{{< likec4-view view="localDevelopment" project="documentation-platform" >}}
Starting the Development Server
The easiest way to work locally is to start the Hugo development server:
task serve
This will:
- Generate build information (git commit, version)
- Start Hugo server on
http://localhost:1313 - Enable hot reload - changes appear instantly in the browser
Content Structure
content/
└── en/ # English content
├── _index.md # Homepage
├── blog/ # Blog posts
└── docs/ # Documentation
├── architecture/ # Architecture docs
├── decisions/ # ADRs
└── v1/ # Version-specific docs
Creating Content
-
Add a new documentation page:
# Create a new markdown file vim content/en/docs/your-topic/_index.md -
Add frontmatter:
--- title: "Your Topic" linkTitle: "Your Topic" weight: 10 description: > Brief description of your topic. --- -
Write your content in Markdown
-
Preview changes - they appear immediately if
task serveis running
Creating Architecture Diagrams
Architecture diagrams are created with LikeC4:
-
Navigate to the appropriate LikeC4 project:
resources/edp-likec4/- Platform architectureresources/doc-likec4/- Documentation platform architecture
-
Edit or create
.c4files with your modelExample: Create a simple view in
resources/edp-likec4/views/my-view.c4:specification { element myperson element mysystem } model { customer = myperson 'Customer' { description 'End user of the platform' } mySystem = mysystem 'My System' { description 'Example system component' } customer -> mySystem 'uses' } views { view myCustomView { title "My Custom Architecture View" include customer include mySystem autoLayout TopBottom } } -
Regenerate webcomponents:
task likec4:generate -
Embed diagrams in Markdown:
{{</* likec4-view view="myCustomView" project="architecture" title="My Custom Architecture View" */>}}Finding available view IDs:
- Open the
.c4files in your project directory - Look for
view <viewId> {declarations - The
<viewId>is what you use in theviewparameter - Or use:
grep -r "^view " resources/edp-likec4/ --include="*.c4"
- Open the
Available Tasks
View all available tasks:
task --list
Common Development Tasks
| Task | Description |
|---|---|
task serve |
Start development server with hot reload |
task build |
Build production-ready site |
task build:dev |
Build development version |
task clean |
Remove build artifacts |
task test |
Run all tests |
task test:quick |
Run tests without link checking |
Quick Testing
Before committing, run quick tests:
task test:quick
This validates:
- Hugo build succeeds
- Markdown syntax is correct
For comprehensive testing, including link checking:
task test
Tips for Documentors
- Write in present tense - "The system processes..." not "The system will process..."
- Use code blocks with syntax highlighting
- Include diagrams for complex concepts
- Test locally before pushing
- Keep it concise - readers appreciate brevity
- Update regularly - stale docs are worse than no docs
Troubleshooting
Port 1313 already in use
# Find and kill the process
lsof -ti:1313 | xargs kill -9
Build errors
# Clean and rebuild
task clean
task build:dev
Missing dependencies
# Reinstall all dependencies
task deps:install
Next Steps
Now that you can develop locally, learn about: