2024-06-02 19:21:50 +00:00
|
|
|
# DocMachine Cli
|
2024-05-31 14:28:36 +00:00
|
|
|
|
2024-06-02 19:21:50 +00:00
|
|
|
DocMachine Cli is a tool designed to simplify the process of creating technical
|
|
|
|
documentation and presentations.
|
2024-05-31 14:28:36 +00:00
|
|
|
|
|
|
|
## Motivation
|
|
|
|
|
|
|
|
This project aims to address the following challenges:
|
|
|
|
|
2024-06-02 19:21:50 +00:00
|
|
|
* **Automation:** Automate the generation of high-quality technical content,
|
|
|
|
including documentation and presentation slides.
|
|
|
|
* **Consistency:** Ensure a consistent and polished look and feel across all
|
|
|
|
content pieces.
|
|
|
|
* **Efficiency:** Reduce the time and effort required to produce content by
|
|
|
|
leveraging AI tools.
|
2024-05-31 14:28:36 +00:00
|
|
|
|
|
|
|
## Features
|
|
|
|
|
|
|
|
DocMachine offers a range of features to streamline the content creation process:
|
|
|
|
|
2024-06-02 19:21:50 +00:00
|
|
|
* **Scaffolding:** Generate a well-structured project directory with all the
|
|
|
|
necessary files.
|
|
|
|
* **Building:** Compile and publish your content as HTML and PDF documents
|
|
|
|
using Dockerized build processes.
|
2024-05-31 14:28:36 +00:00
|
|
|
|
|
|
|
We are actively developing the following features for future releases:
|
|
|
|
|
2024-06-02 19:21:50 +00:00
|
|
|
* **Planning:** Leverage LLMs (Large Language Models) to generate content
|
|
|
|
outlines tailored to your specific needs and requirements.
|
|
|
|
* **Writing:** Utilize LLMs to draft content for each section and subsection,
|
|
|
|
saving you valuable time and effort.
|
2024-05-31 14:28:36 +00:00
|
|
|
|
|
|
|
## Prerequisites
|
|
|
|
|
2024-06-02 19:21:50 +00:00
|
|
|
You'll need a recent version of Crystal (>= 1.11.0) to use this project.
|
|
|
|
|
|
|
|
You'll also need to install a few dependencies:
|
|
|
|
|
|
|
|
* libreadline-dev
|
|
|
|
* libncurses-dev
|
2024-05-31 14:28:36 +00:00
|
|
|
|
|
|
|
## Getting Started
|
|
|
|
|
2024-06-02 19:21:50 +00:00
|
|
|
Follow these steps to start using DocMachine Cli:
|
2024-05-31 14:28:36 +00:00
|
|
|
|
|
|
|
### Installation
|
|
|
|
|
|
|
|
```bash
|
2024-06-02 19:21:50 +00:00
|
|
|
git clone https://code.apps.glenux.net/glenux/docmachine-cli.git docmachine-cli
|
|
|
|
cd docmachine-cli
|
2024-05-31 14:28:36 +00:00
|
|
|
make build
|
|
|
|
make install
|
|
|
|
```
|
|
|
|
|
|
|
|
### Create a New Project
|
|
|
|
|
|
|
|
```bash
|
2024-06-02 19:21:50 +00:00
|
|
|
docmachine scaffold my-documentation-project
|
2024-05-31 14:28:36 +00:00
|
|
|
```
|
|
|
|
|
2024-06-02 19:21:50 +00:00
|
|
|
This command will create a new directory named `my-documentation-project` with
|
|
|
|
the following structure:
|
2024-05-31 14:28:36 +00:00
|
|
|
|
|
|
|
```
|
2024-06-02 19:21:50 +00:00
|
|
|
my-documentation-project
|
2024-05-31 14:28:36 +00:00
|
|
|
├── _build
|
|
|
|
├── docs
|
|
|
|
│ └── images # link to ../images
|
|
|
|
├── slides
|
|
|
|
│ └── images # link to ../images
|
|
|
|
└── images
|
|
|
|
```
|
|
|
|
|
|
|
|
### Start Writing Content
|
|
|
|
|
|
|
|
* **Documentation:** Place your Markdown files inside the `docs` directory.
|
2024-06-02 19:21:50 +00:00
|
|
|
* **Presentations:** Place your Markdown files (using Marp syntax) inside the
|
|
|
|
`slides` directory.
|
2024-05-31 14:28:36 +00:00
|
|
|
* **Images:** Store your images in the respective `images` directories.
|
|
|
|
|
|
|
|
### Live-reload during writing
|
|
|
|
|
|
|
|
```bash
|
|
|
|
docmachine build -a watch
|
|
|
|
```
|
|
|
|
|
|
|
|
This command will start a Docker container and build your documentation and presentations:
|
2024-06-02 19:21:50 +00:00
|
|
|
|
2024-05-31 14:28:36 +00:00
|
|
|
* **Documentation:** Built using MkDocs and served on `http://localhost:5100`.
|
|
|
|
* **Presentations:** Built using Marp and served on `http://localhost:5200`.
|
|
|
|
|
|
|
|
### Building content for publishing or presentation
|
|
|
|
|
|
|
|
```bash
|
|
|
|
docmachine build -a build-slides-pdf
|
|
|
|
```
|
|
|
|
|
|
|
|
```bash
|
|
|
|
docmachine build -a build-docs-pdf
|
|
|
|
```
|
|
|
|
|
|
|
|
```bash
|
|
|
|
docmachine build -a build-docs-html
|
|
|
|
```
|
|
|
|
|
|
|
|
This command will generate the HTML and PDF versions of your content.
|
|
|
|
|
|
|
|
## Contributing
|
|
|
|
|
|
|
|
We welcome contributions to DocMachine! To contribute:
|
|
|
|
|
|
|
|
1. Fork the repository.
|
|
|
|
2. Create a new branch for your feature or bug fix.
|
|
|
|
3. Make your changes and commit them.
|
|
|
|
4. Submit a pull request.
|
|
|
|
|
|
|
|
## License
|
|
|
|
|
2024-06-02 19:21:50 +00:00
|
|
|
DocMachine Cli is licensed under the GPL-3.0-or-later license. See the
|
|
|
|
`LICENSE` file for details.
|
2024-05-31 14:28:36 +00:00
|
|
|
|