Markdown Converter
Agent skill for markdown-converter
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Sign in to like and favorite skills
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
mqs (My QGIS Stuff) - A collection of reusable QGIS-related utilities, scripts, and tools.
License: MIT
CRITICAL: When creating or modifying functionality, always:
Never implement features without corresponding tests.
Test file location: All test-related files must be stored in the
testing/ directory.
CRITICAL: When creating or modifying code:
__version__ = "0.1.0" for Python)CHANGELOG.md with a description of changes for each version bumpThis repository contains multiple QGIS-related subprojects in two categories:
mqs/ ├── Scripts/ # QGIS Processing Toolbox scripts │ ├── extract_styles_from_projects.py │ ├── vectors2gpkg.py │ ├── batchvectorrename.py │ └── inventory_miner.py ├── Plugins/ # QGIS Plugins │ └── metadata_manager/ │ ├── __init__.py │ ├── MetadataManager.py │ ├── metadata.txt │ ├── resources.qrc │ ├── Makefile │ └── [plugin files] ├── docs/ # Subproject documentation │ ├── [SubprojectName]/ │ │ ├── README.md │ │ ├── REQUIREMENTS.md │ │ ├── CHANGELOG.md │ │ └── testing/ │ └── metadata_manager/ │ ├── README.md │ ├── REQUIREMENTS.md │ ├── CHANGELOG.md │ └── testing/ └── testing/ # Repository-level tests
Each script-based subproject should have:
docs/[SubprojectName]/
README.md - User documentation and usage guideREQUIREMENTS.md - Technical specificationsCHANGELOG.md - Version historytesting/ - Test files and dataScripts/[scriptname].py__version__ = "x.y.z")Each plugin-based subproject should have:
Plugins/[plugin_name]/
metadata.txt - Plugin metadata__init__.py - Plugin entry point with classFactory()MetadataManager.py)resources.qrc, compiled to resources.py)Makefile, pb_tool.cfg)test/ directory within plugindocs/[plugin_name]/
README.md - Installation and usageREQUIREMENTS.md - Technical specificationsCHANGELOG.md - Version historytesting/ - Additional test data if neededExtractStylesfromDirectoriesForStyleManager (v0.2.0)
Scripts/extract_styles_from_projects.pydocs/ExtractStylesfromDirectoriesForStyleManager/vectors2gpkg (v0.8.3)
Scripts/vectors2gpkg.pydocs/vectors2gpkg/batchvectorrename
Scripts/batchvectorrename.pydocs/batchvectorrename/inventory_miner (v0.1.0)
Scripts/inventory_miner.pydocs/inventory_miner/Plugins/metadata_manager/docs/metadata_manager/QgsProcessingAlgorithm__version__ in script headerpyrcc5 -o resources.py resources.qrcmetadata.txt with proper metadataMakefile and/or pb_tool.cfg for buildstest/ directory within pluginclassFactory() in __init__.pyWhen creating a new subproject, follow these steps:
Create directory structure:
mkdir -p docs/[SubprojectName]/testing
Create essential files:
docs/[SubprojectName]/README.md - User documentationdocs/[SubprojectName]/REQUIREMENTS.md - Technical specsdocs/[SubprojectName]/CHANGELOG.md - Version history (start with v0.1.0)Scripts/[scriptname].py - Main script with __version__ = "0.1.0"Update main README.md with new subproject section
Script must:
QgsProcessingAlgorithmUse QGIS Plugin Builder to create initial structure in temp location
Move to repository:
cp -r /temp/plugin_output Plugins/[plugin_name] mkdir -p docs/[plugin_name]/testing
Create documentation files:
docs/[plugin_name]/README.md - Installation and usagedocs/[plugin_name]/REQUIREMENTS.md - Technical specsdocs/[plugin_name]/CHANGELOG.md - Version historyUpdate
metadata.txt:
qgisMinimumVersion=3.40experimental=True for initial releasesUpdate main README.md with new plugin section
Compile resources before first use:
cd Plugins/[plugin_name] make