From 80b74f79dfbfa9afb845172a5ea84110d75f1bc8 Mon Sep 17 00:00:00 2001 From: HsiangNianian Date: Thu, 13 Mar 2025 01:01:20 +0800 Subject: refactor(project)!: first implementation of the Conventional Role Play SDK with core components, renderers, extractors, and example usage. --- docs/source/usage.md | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 docs/source/usage.md (limited to 'docs/source/usage.md') diff --git a/docs/source/usage.md b/docs/source/usage.md new file mode 100644 index 0000000..33481ca --- /dev/null +++ b/docs/source/usage.md @@ -0,0 +1,58 @@ +# Usage Instructions for TRPG Log Processor + +## Overview + +The TRPG Log Processor is a Python SDK designed for structured processing of tabletop role-playing game (TRPG) logs. It provides functionalities for parsing logs, extracting rules, and rendering outputs in multiple formats. + +## Installation + +To install the TRPG Log Processor, you can use pip: + +```bash +pip install conventionalrp +``` + +## Basic Usage + +Here is a simple example of how to use the TRPG Log Processor: + +```python +from conventionalrp.core.parser import Parser +from conventionalrp.core.processor import Processor +from conventionalrp.extractors.rule_extractor import RuleExtractor +from conventionalrp.renderers.html_renderer import HTMLRenderer + +# Step 1: Load rules +rule_extractor = RuleExtractor() +rules = rule_extractor.load_rules('path/to/rules.json') + +# Step 2: Parse the log +parser = Parser(rules) +parsed_log = parser.parse_log('path/to/log.txt') + +# Step 3: Process the parsed tokens +processor = Processor() +output = processor.process_tokens(parsed_log) + +# Step 4: Render the output +renderer = HTMLRenderer() +html_output = renderer.render(output) + +# Save or display the output +with open('output.html', 'w') as f: + f.write(html_output) +``` + +## Features + +- **Rule Extraction**: Easily extract rules from JSON configuration files using the `RuleExtractor`. +- **Multi-format Rendering**: Render outputs in various formats such as HTML, Markdown, and JSON using the respective renderer classes. +- **Extensibility**: Create custom plugins to extend the functionality of the SDK. + +## Custom Plugins + +To create a custom plugin, you can follow the example provided in `examples/custom_plugin.py`. This allows you to add additional processing or rendering capabilities tailored to your needs. + +## Documentation + +For more detailed information on the API and available classes, please refer to the [API documentation](api.md). -- cgit v1.2.3-70-g09d2