domd 2.2.40__tar.gz → 2.2.41__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {domd-2.2.40 → domd-2.2.41}/PKG-INFO +98 -28
- {domd-2.2.40 → domd-2.2.41}/README.md +97 -27
- {domd-2.2.40 → domd-2.2.41}/pyproject.toml +1 -1
- {domd-2.2.40 → domd-2.2.41}/setup.cfg +1 -1
- {domd-2.2.40 → domd-2.2.41}/setup.py +1 -1
- {domd-2.2.40 → domd-2.2.41}/src/domd/__init__.py +1 -1
- {domd-2.2.40 → domd-2.2.41}/src/domd.egg-info/PKG-INFO +98 -28
- {domd-2.2.40 → domd-2.2.41}/LICENSE +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/adapters/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/adapters/api/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/adapters/api/command_testing.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/adapters/api/flask_api.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/adapters/cli/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/adapters/cli/command_presenter.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/adapters/formatters/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/adapters/formatters/markdown_formatter.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/adapters/persistence/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/adapters/persistence/in_memory_command_repository.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/adapters/persistence/shell_command_executor.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/api.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/application/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/application/factory.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/cli.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/command_execution/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_detection/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_detection/base_detector.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_detection/docker_tester.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_detection/handlers/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_detection/handlers/command_handler.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_detection/handlers/config_handler.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_detection/models.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_detection/parsers/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_detection/parsers/base_parser.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_detection/parsers/parser_registry.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_detection/project_detector.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_detection/utils/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_detection/utils/file_utils.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_detection/utils/virtualenv.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_execution/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_execution/command_executor.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_execution/command_recorder.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_execution/command_runner.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_execution/environment_detector.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/command_execution/executor.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/commands/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/commands/command.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/commands/executor.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/detector.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/domain/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/domain/command.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsers/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsers/ansible_galaxy.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsers/ansible_inventory.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsers/ansible_playbook.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsers/ansible_role.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsers/ansible_vault.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsers/base.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsers/cargo_toml.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsers/composer_json.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsers/go_mod.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsers/makefile.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsers/package_json.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsers/pyproject_toml.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsers/tox_ini.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsing/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsing/base.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsing/file_processor.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsing/parser_registry.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/parsing/pattern_matcher.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/ports/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/ports/command_executor.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/ports/command_repository.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/ports/report_formatter.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/project_detection/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/project_detection/command_handling.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/project_detection/config_files.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/project_detection/detector.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/project_detection/virtualenv.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/reporters/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/reporters/base.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/reporters/done_md.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/reporters/todo_md.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/reporting/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/reporting/formatters.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/reporting/reporter.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/services/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/services/command_service.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/services/report_service.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/utils/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/utils/command_utils.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/utils/environment.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/utils/file_utils.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/utils/logging_utils.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/core/utils/virtualenv.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/ansible.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/base.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/build_systems.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/ci_cd.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/docker/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/docker/docker_compose.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/docker/dockerfile.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/docker.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/javascript/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/javascript.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/markdown_parser.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/package_json.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/python.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/test_build_systems.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/test_ci_cd.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/test_docker.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/test_javascript.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsers/test_python.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsing/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/parsing/base.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/reporters/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/reporters/console.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/reporters/json_reporter.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/reporters/test_console.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/reporters/test_json_reporter.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/reporters/test_todo_md.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/reporters/todo_md.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/reporting/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/utils/__init__.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/utils/command_runner.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/utils/file_utils.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/utils/path_utils.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/utils/test_command_runner.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd/utils/test_file_utils.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd.egg-info/SOURCES.txt +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd.egg-info/dependency_links.txt +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd.egg-info/entry_points.txt +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd.egg-info/requires.txt +0 -0
- {domd-2.2.40 → domd-2.2.41}/src/domd.egg-info/top_level.txt +0 -0
- {domd-2.2.40 → domd-2.2.41}/tests/test_ansible.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/tests/test_ansible_galaxy.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/tests/test_ansible_inventory.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/tests/test_ansible_playbook.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/tests/test_ansible_roles.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/tests/test_ansible_vault.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/tests/test_cli.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/tests/test_command_handling.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/tests/test_command_testing.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/tests/test_detector.py +0 -0
- {domd-2.2.40 → domd-2.2.41}/tests/test_virtualenv.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: domd
|
|
3
|
-
Version: 2.2.
|
|
3
|
+
Version: 2.2.41
|
|
4
4
|
Summary: DoMD - Do Markdown Docs - automatically detect, run and show working commands in DONE.md and errors in TODO.md markdown files
|
|
5
5
|
Home-page: https://github.com/wronai/domd
|
|
6
6
|
Author: Tom Sapletta
|
|
@@ -58,7 +58,64 @@ Dynamic: requires-python
|
|
|
58
58
|
|
|
59
59
|
**DoMD** (Do Markdown Docs) is a powerful tool that helps you maintain up-to-date project documentation by automatically detecting, running, and documenting commands from your project files. It generates and updates `TODO.md` and `DONE.md` files based on command execution results, making it easier to track what works and what needs attention.
|
|
60
60
|
|
|
61
|
-
##
|
|
61
|
+
## 🌟 Web Interface
|
|
62
|
+
|
|
63
|
+
DoMD comes with a modern web interface that allows you to interact with your project's commands through a user-friendly dashboard.
|
|
64
|
+
|
|
65
|
+
### 🚀 Starting the Web Interface
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
# Start the web interface on default port (3000)
|
|
69
|
+
domd web
|
|
70
|
+
|
|
71
|
+
# Specify a custom port
|
|
72
|
+
domd web --port 8088
|
|
73
|
+
|
|
74
|
+
# Start without automatically opening a browser
|
|
75
|
+
domd web --no-browser
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### 🌈 Features
|
|
79
|
+
|
|
80
|
+
- **Command Management**: View, run, and manage all your project commands from one place
|
|
81
|
+
- **Real-time Output**: See command execution results in real-time
|
|
82
|
+
- **History Tracking**: Keep track of command execution history
|
|
83
|
+
- **Responsive Design**: Works on both desktop and mobile devices
|
|
84
|
+
- **Dark Mode**: Built-in dark theme for comfortable viewing
|
|
85
|
+
|
|
86
|
+
### 🛠️ Requirements
|
|
87
|
+
|
|
88
|
+
- Node.js 16+ and npm 8+
|
|
89
|
+
- Python 3.9+
|
|
90
|
+
- Modern web browser (Chrome, Firefox, Safari, or Edge)
|
|
91
|
+
|
|
92
|
+
### Getting Started
|
|
93
|
+
|
|
94
|
+
1. Start the web interface:
|
|
95
|
+
|
|
96
|
+
```bash
|
|
97
|
+
domd web --port 8088
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
2. Open your browser and navigate to [http://localhost:8088](http://localhost:8088)
|
|
101
|
+
|
|
102
|
+
3. The interface will automatically detect and display your project's commands
|
|
103
|
+
|
|
104
|
+
### Development Mode
|
|
105
|
+
|
|
106
|
+
For development, you can run the frontend and backend separately:
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
# Terminal 1 - Start the backend API
|
|
110
|
+
cd backend
|
|
111
|
+
python -m domd.api
|
|
112
|
+
|
|
113
|
+
# Terminal 2 - Start the frontend development server
|
|
114
|
+
cd frontend
|
|
115
|
+
npm start
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## Core Features
|
|
62
119
|
|
|
63
120
|
- **Automatic Command Detection** - Discovers and extracts commands from various project files
|
|
64
121
|
- **Smart Execution** - Runs commands and captures their output and status
|
|
@@ -71,7 +128,11 @@ Dynamic: requires-python
|
|
|
71
128
|
- **Extensible** - Add support for new command types and tools
|
|
72
129
|
- **REST API** - Full programmatic access to all features
|
|
73
130
|
|
|
74
|
-
##
|
|
131
|
+
## Demo
|
|
132
|
+
|
|
133
|
+
[](https://www.youtube.com/watch?v=YOUR_VIDEO_ID)
|
|
134
|
+
|
|
135
|
+
## Examples
|
|
75
136
|
|
|
76
137
|
Explore our comprehensive collection of examples to get started with DoMD:
|
|
77
138
|
|
|
@@ -81,7 +142,9 @@ Explore our comprehensive collection of examples to get started with DoMD:
|
|
|
81
142
|
- [CI/CD Integration](docs/examples/ci_cd/) - Automate documentation with GitHub Actions and more
|
|
82
143
|
- [Integration Examples](docs/examples/integration/) - Using DoMD with other tools and platforms
|
|
83
144
|
|
|
84
|
-
|
|
145
|
+

|
|
146
|
+
|
|
147
|
+
## Command Testing
|
|
85
148
|
|
|
86
149
|
DoMD includes powerful command testing capabilities that help you validate and test shell commands in isolated Docker containers:
|
|
87
150
|
|
|
@@ -96,7 +159,7 @@ domd test-commands --update-doignore -f commands.txt
|
|
|
96
159
|
domd test-commands --no-docker -f commands.txt
|
|
97
160
|
```
|
|
98
161
|
|
|
99
|
-
###
|
|
162
|
+
### Testing Features
|
|
100
163
|
|
|
101
164
|
- **Command Validation**: Automatically detect valid shell commands vs documentation
|
|
102
165
|
- **Docker Testing**: Test commands in isolated containers
|
|
@@ -105,7 +168,7 @@ domd test-commands --no-docker -f commands.txt
|
|
|
105
168
|
|
|
106
169
|
For more details, see the [Command Testing Documentation](docs/command_testing.md).
|
|
107
170
|
|
|
108
|
-
##
|
|
171
|
+
## Quick Start
|
|
109
172
|
|
|
110
173
|
### Prerequisites
|
|
111
174
|
|
|
@@ -118,31 +181,40 @@ For more details, see the [Command Testing Documentation](docs/command_testing.m
|
|
|
118
181
|
Choose the installation method that works best for you:
|
|
119
182
|
|
|
120
183
|
```bash
|
|
121
|
-
#
|
|
122
|
-
pip install domd
|
|
184
|
+
#1. **Install DoMD** (if not already installed):
|
|
123
185
|
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
```
|
|
186
|
+
```bash
|
|
187
|
+
pip install domd
|
|
188
|
+
```
|
|
127
189
|
|
|
128
|
-
|
|
190
|
+
Or using Docker (no installation required):
|
|
191
|
+
|
|
192
|
+
```bash
|
|
193
|
+
docker run --rm -v $(pwd):/app ghcr.io/wronai/domd domd
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
## Basic Usage
|
|
197
|
+
|
|
198
|
+
1. **Navigate to your project directory**:
|
|
129
199
|
|
|
130
|
-
1. Navigate to your project directory:
|
|
131
200
|
```bash
|
|
132
201
|
cd /path/to/your/project
|
|
133
202
|
```
|
|
134
203
|
|
|
135
|
-
2. Run DoMD
|
|
204
|
+
2. **Run DoMD**:
|
|
136
205
|
|
|
137
206
|
```bash
|
|
138
207
|
# Basic scan
|
|
139
208
|
domd
|
|
209
|
+
```
|
|
140
210
|
|
|
141
|
-
|
|
211
|
+
Or use the web interface:
|
|
212
|
+
|
|
213
|
+
```bash
|
|
142
214
|
domd web
|
|
143
215
|
```
|
|
144
216
|
|
|
145
|
-
##
|
|
217
|
+
## Web Interface
|
|
146
218
|
|
|
147
219
|
DoMD includes a secure web-based interface for a more interactive experience:
|
|
148
220
|
|
|
@@ -176,15 +248,17 @@ npm install
|
|
|
176
248
|
npm start
|
|
177
249
|
```
|
|
178
250
|
|
|
179
|
-
### Authentication
|
|
251
|
+
### Authentication and Login
|
|
180
252
|
|
|
181
253
|
The web interface is protected by authentication. Use the following default credentials:
|
|
182
254
|
|
|
183
|
-
- **URL**: http://localhost:3000 (frontend development server) or http://localhost:3003 (production build)
|
|
255
|
+
- **URL**: [http://localhost:3000](http://localhost:3000) (frontend development server) or [http://localhost:3003](http://localhost:3003) (production build)
|
|
184
256
|
- **Username**: admin
|
|
185
257
|
- **Password**: admin123
|
|
186
258
|
|
|
187
|
-
> **Security Note
|
|
259
|
+
> **Security Note**
|
|
260
|
+
>
|
|
261
|
+
> Change the default password after first login by navigating to User Settings in the web interface.
|
|
188
262
|
|
|
189
263
|
#### First-Time Login
|
|
190
264
|
|
|
@@ -231,7 +305,7 @@ To use the web interface, you'll need:
|
|
|
231
305
|
- Internet connection (for loading external resources)
|
|
232
306
|
- Modern web browser (Chrome, Firefox, Safari, or Edge)
|
|
233
307
|
|
|
234
|
-
##
|
|
308
|
+
## Basic Usage
|
|
235
309
|
|
|
236
310
|
1. Navigate to your project directory:
|
|
237
311
|
|
|
@@ -250,7 +324,7 @@ To use the web interface, you'll need:
|
|
|
250
324
|
|
|
251
325
|
3. Open your browser and navigate to the displayed URL
|
|
252
326
|
|
|
253
|
-
##
|
|
327
|
+
## Command Line Usage
|
|
254
328
|
|
|
255
329
|
For command-line usage, you can run:
|
|
256
330
|
|
|
@@ -322,11 +396,7 @@ DoMD comes with a web-based interface for a more interactive experience. Here's
|
|
|
322
396
|
# yarn start
|
|
323
397
|
```
|
|
324
398
|
|
|
325
|
-
4. Open your browser and visit:
|
|
326
|
-
|
|
327
|
-
```bash
|
|
328
|
-
http://localhost:3003
|
|
329
|
-
```
|
|
399
|
+
4. Open your browser and visit [http://localhost:3003](http://localhost:3003)
|
|
330
400
|
|
|
331
401
|
### Building for Production
|
|
332
402
|
|
|
@@ -520,9 +590,9 @@ poetry run mkdocs build
|
|
|
520
590
|
|
|
521
591
|
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
|
|
522
592
|
|
|
523
|
-
|
|
593
|
+
## Adding New Parsers
|
|
524
594
|
|
|
525
|
-
To add support for a new project type:
|
|
595
|
+
To add support for a new project type, follow these steps:
|
|
526
596
|
|
|
527
597
|
1. Create a parser in `src/domd/parsers/`
|
|
528
598
|
2. Implement the parser interface
|
|
@@ -9,7 +9,64 @@
|
|
|
9
9
|
|
|
10
10
|
**DoMD** (Do Markdown Docs) is a powerful tool that helps you maintain up-to-date project documentation by automatically detecting, running, and documenting commands from your project files. It generates and updates `TODO.md` and `DONE.md` files based on command execution results, making it easier to track what works and what needs attention.
|
|
11
11
|
|
|
12
|
-
##
|
|
12
|
+
## 🌟 Web Interface
|
|
13
|
+
|
|
14
|
+
DoMD comes with a modern web interface that allows you to interact with your project's commands through a user-friendly dashboard.
|
|
15
|
+
|
|
16
|
+
### 🚀 Starting the Web Interface
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
# Start the web interface on default port (3000)
|
|
20
|
+
domd web
|
|
21
|
+
|
|
22
|
+
# Specify a custom port
|
|
23
|
+
domd web --port 8088
|
|
24
|
+
|
|
25
|
+
# Start without automatically opening a browser
|
|
26
|
+
domd web --no-browser
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
### 🌈 Features
|
|
30
|
+
|
|
31
|
+
- **Command Management**: View, run, and manage all your project commands from one place
|
|
32
|
+
- **Real-time Output**: See command execution results in real-time
|
|
33
|
+
- **History Tracking**: Keep track of command execution history
|
|
34
|
+
- **Responsive Design**: Works on both desktop and mobile devices
|
|
35
|
+
- **Dark Mode**: Built-in dark theme for comfortable viewing
|
|
36
|
+
|
|
37
|
+
### 🛠️ Requirements
|
|
38
|
+
|
|
39
|
+
- Node.js 16+ and npm 8+
|
|
40
|
+
- Python 3.9+
|
|
41
|
+
- Modern web browser (Chrome, Firefox, Safari, or Edge)
|
|
42
|
+
|
|
43
|
+
### Getting Started
|
|
44
|
+
|
|
45
|
+
1. Start the web interface:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
domd web --port 8088
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
2. Open your browser and navigate to [http://localhost:8088](http://localhost:8088)
|
|
52
|
+
|
|
53
|
+
3. The interface will automatically detect and display your project's commands
|
|
54
|
+
|
|
55
|
+
### Development Mode
|
|
56
|
+
|
|
57
|
+
For development, you can run the frontend and backend separately:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
# Terminal 1 - Start the backend API
|
|
61
|
+
cd backend
|
|
62
|
+
python -m domd.api
|
|
63
|
+
|
|
64
|
+
# Terminal 2 - Start the frontend development server
|
|
65
|
+
cd frontend
|
|
66
|
+
npm start
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Core Features
|
|
13
70
|
|
|
14
71
|
- **Automatic Command Detection** - Discovers and extracts commands from various project files
|
|
15
72
|
- **Smart Execution** - Runs commands and captures their output and status
|
|
@@ -22,7 +79,11 @@
|
|
|
22
79
|
- **Extensible** - Add support for new command types and tools
|
|
23
80
|
- **REST API** - Full programmatic access to all features
|
|
24
81
|
|
|
25
|
-
##
|
|
82
|
+
## Demo
|
|
83
|
+
|
|
84
|
+
[](https://www.youtube.com/watch?v=YOUR_VIDEO_ID)
|
|
85
|
+
|
|
86
|
+
## Examples
|
|
26
87
|
|
|
27
88
|
Explore our comprehensive collection of examples to get started with DoMD:
|
|
28
89
|
|
|
@@ -32,7 +93,9 @@ Explore our comprehensive collection of examples to get started with DoMD:
|
|
|
32
93
|
- [CI/CD Integration](docs/examples/ci_cd/) - Automate documentation with GitHub Actions and more
|
|
33
94
|
- [Integration Examples](docs/examples/integration/) - Using DoMD with other tools and platforms
|
|
34
95
|
|
|
35
|
-
|
|
96
|
+

|
|
97
|
+
|
|
98
|
+
## Command Testing
|
|
36
99
|
|
|
37
100
|
DoMD includes powerful command testing capabilities that help you validate and test shell commands in isolated Docker containers:
|
|
38
101
|
|
|
@@ -47,7 +110,7 @@ domd test-commands --update-doignore -f commands.txt
|
|
|
47
110
|
domd test-commands --no-docker -f commands.txt
|
|
48
111
|
```
|
|
49
112
|
|
|
50
|
-
###
|
|
113
|
+
### Testing Features
|
|
51
114
|
|
|
52
115
|
- **Command Validation**: Automatically detect valid shell commands vs documentation
|
|
53
116
|
- **Docker Testing**: Test commands in isolated containers
|
|
@@ -56,7 +119,7 @@ domd test-commands --no-docker -f commands.txt
|
|
|
56
119
|
|
|
57
120
|
For more details, see the [Command Testing Documentation](docs/command_testing.md).
|
|
58
121
|
|
|
59
|
-
##
|
|
122
|
+
## Quick Start
|
|
60
123
|
|
|
61
124
|
### Prerequisites
|
|
62
125
|
|
|
@@ -69,31 +132,40 @@ For more details, see the [Command Testing Documentation](docs/command_testing.m
|
|
|
69
132
|
Choose the installation method that works best for you:
|
|
70
133
|
|
|
71
134
|
```bash
|
|
72
|
-
#
|
|
73
|
-
pip install domd
|
|
135
|
+
#1. **Install DoMD** (if not already installed):
|
|
74
136
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
```
|
|
137
|
+
```bash
|
|
138
|
+
pip install domd
|
|
139
|
+
```
|
|
78
140
|
|
|
79
|
-
|
|
141
|
+
Or using Docker (no installation required):
|
|
142
|
+
|
|
143
|
+
```bash
|
|
144
|
+
docker run --rm -v $(pwd):/app ghcr.io/wronai/domd domd
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
## Basic Usage
|
|
148
|
+
|
|
149
|
+
1. **Navigate to your project directory**:
|
|
80
150
|
|
|
81
|
-
1. Navigate to your project directory:
|
|
82
151
|
```bash
|
|
83
152
|
cd /path/to/your/project
|
|
84
153
|
```
|
|
85
154
|
|
|
86
|
-
2. Run DoMD
|
|
155
|
+
2. **Run DoMD**:
|
|
87
156
|
|
|
88
157
|
```bash
|
|
89
158
|
# Basic scan
|
|
90
159
|
domd
|
|
160
|
+
```
|
|
91
161
|
|
|
92
|
-
|
|
162
|
+
Or use the web interface:
|
|
163
|
+
|
|
164
|
+
```bash
|
|
93
165
|
domd web
|
|
94
166
|
```
|
|
95
167
|
|
|
96
|
-
##
|
|
168
|
+
## Web Interface
|
|
97
169
|
|
|
98
170
|
DoMD includes a secure web-based interface for a more interactive experience:
|
|
99
171
|
|
|
@@ -127,15 +199,17 @@ npm install
|
|
|
127
199
|
npm start
|
|
128
200
|
```
|
|
129
201
|
|
|
130
|
-
### Authentication
|
|
202
|
+
### Authentication and Login
|
|
131
203
|
|
|
132
204
|
The web interface is protected by authentication. Use the following default credentials:
|
|
133
205
|
|
|
134
|
-
- **URL**: http://localhost:3000 (frontend development server) or http://localhost:3003 (production build)
|
|
206
|
+
- **URL**: [http://localhost:3000](http://localhost:3000) (frontend development server) or [http://localhost:3003](http://localhost:3003) (production build)
|
|
135
207
|
- **Username**: admin
|
|
136
208
|
- **Password**: admin123
|
|
137
209
|
|
|
138
|
-
> **Security Note
|
|
210
|
+
> **Security Note**
|
|
211
|
+
>
|
|
212
|
+
> Change the default password after first login by navigating to User Settings in the web interface.
|
|
139
213
|
|
|
140
214
|
#### First-Time Login
|
|
141
215
|
|
|
@@ -182,7 +256,7 @@ To use the web interface, you'll need:
|
|
|
182
256
|
- Internet connection (for loading external resources)
|
|
183
257
|
- Modern web browser (Chrome, Firefox, Safari, or Edge)
|
|
184
258
|
|
|
185
|
-
##
|
|
259
|
+
## Basic Usage
|
|
186
260
|
|
|
187
261
|
1. Navigate to your project directory:
|
|
188
262
|
|
|
@@ -201,7 +275,7 @@ To use the web interface, you'll need:
|
|
|
201
275
|
|
|
202
276
|
3. Open your browser and navigate to the displayed URL
|
|
203
277
|
|
|
204
|
-
##
|
|
278
|
+
## Command Line Usage
|
|
205
279
|
|
|
206
280
|
For command-line usage, you can run:
|
|
207
281
|
|
|
@@ -273,11 +347,7 @@ DoMD comes with a web-based interface for a more interactive experience. Here's
|
|
|
273
347
|
# yarn start
|
|
274
348
|
```
|
|
275
349
|
|
|
276
|
-
4. Open your browser and visit:
|
|
277
|
-
|
|
278
|
-
```bash
|
|
279
|
-
http://localhost:3003
|
|
280
|
-
```
|
|
350
|
+
4. Open your browser and visit [http://localhost:3003](http://localhost:3003)
|
|
281
351
|
|
|
282
352
|
### Building for Production
|
|
283
353
|
|
|
@@ -471,9 +541,9 @@ poetry run mkdocs build
|
|
|
471
541
|
|
|
472
542
|
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
|
|
473
543
|
|
|
474
|
-
|
|
544
|
+
## Adding New Parsers
|
|
475
545
|
|
|
476
|
-
To add support for a new project type:
|
|
546
|
+
To add support for a new project type, follow these steps:
|
|
477
547
|
|
|
478
548
|
1. Create a parser in `src/domd/parsers/`
|
|
479
549
|
2. Implement the parser interface
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "domd"
|
|
3
|
-
version = "2.2.
|
|
3
|
+
version = "2.2.41"
|
|
4
4
|
description = " ✓ DoMD - Do Markdown Docs - automatically detect, run and show working commands in DONE.md and errors in TODO.md markdown files"
|
|
5
5
|
authors = ["Tom Sapletta <info@softreck.dev>"]
|
|
6
6
|
maintainers = ["WRONAI Team"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[metadata]
|
|
2
2
|
name = domd
|
|
3
|
-
version = 2.2.
|
|
3
|
+
version = 2.2.41
|
|
4
4
|
description = DoMD - Do Markdown Docs - automatically detect, run and show working commands in DONE.md and errors in TODO.md markdown files
|
|
5
5
|
long_description = file: README.md
|
|
6
6
|
long_description_content_type = text/markdown
|
|
@@ -7,7 +7,7 @@ generates TODO.md for failed commands with detailed error reports.
|
|
|
7
7
|
Supports: Makefile, package.json, pyproject.toml, Docker, CI/CD workflows, and more.
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
|
-
__version__ = "2.2.
|
|
10
|
+
__version__ = "2.2.41"
|
|
11
11
|
__author__ = "Tom Sapletta"
|
|
12
12
|
__email__ = "info@softreck.dev"
|
|
13
13
|
__license__ = "Apache-2.0"
|