Utopia::Project
A simple Ruby project documentation website.
Motivation
I've used many documentation tools. Most are over-complicated and focus on what is possible rather than what is useful. Because I manage many open source projects, at a certain scale it makes sense to build something to suit your needs rather than try to adapt to existing systems. This is one such instance.
My goal is to provide task-centric documentation, and to continually improve the way it's presented. The primary entry point for new developers are the structured usage guides, however having rich cross-referencing into the code is equally important.
With that in mind, this web application provides such a model and will evolve over time to suit my requirements and the needs of my users.
Usage
Please browse the source code index or refer to the guides below.
Getting Started
This guide explains how to use utopia-project to add documentation to your project.
Documentation Guides
This guide explains how to create and maintain documentation for your project using utopia-project.
Mermaid Diagrams
This guide explains how to use Mermaid diagrams in your documentation to visualize complex relationships, flows, and architectures.
GitHub Pages Integration
This guide shows you how to use utopia-project with GitHub Pages to deploy documentation.
Releases
Please browse the releases for more details.
v0.37.3
- Support for
@examplepragmas from thedecodegem, allowing inline code examples to be rendered in API documentation.
v0.37.2
- Fix mermaid diagram text color in dark mode.
v0.36.0
- Introduce
bake utopia:project:updatewhich invokes readme and agent context updates.
v0.34.1
- Fix schema for
index.yamlcontext file.
v0.34.0
- Introduce
bake utopia:project:agent:context:updatecommand to update the agent context from the guides in the project.
v0.33.2
- Fixed handling of segmented code guides when rendered into a
readme.mdfile.
v0.33.0
- Fix presentation of release notes on releases page.
v0.31.0
- Support brief release notes in
releases.mddocument.
v0.30.0
v0.29.0
See Also
Contributing
We welcome contributions to this project.
- Fork it.
- Create your feature branch (
git checkout -b my-new-feature). - Commit your changes (
git commit -am 'Add some feature'). - Push to the branch (
git push origin my-new-feature). - Create new Pull Request.
Developer Certificate of Origin
In order to protect users of this project, we require all contributors to comply with the Developer Certificate of Origin. This ensures that all contributions are properly licensed and attributed.
Community Guidelines
This project is best served by a collaborative and respectful environment. Treat each other professionally, respect differing viewpoints, and engage constructively. Harassment, discrimination, or harmful behavior is not tolerated. Communicate clearly, listen actively, and support one another. If any issues arise, please inform the project maintainers.