MkArchi Desktop is the official graphical user interface for the mkarchi CLI, designed to make architecture management seamless and visual. It allows developers to design, apply, and extract project structures without needing to memorize command-line arguments.
This application acts as a bridge to the mkarchi core, providing a modern experience with real-time logs, error handling, and visual previews.
- Create Project (Apply Mode)
- Visual editor for architecture trees.
- One-click project generation.
- Real-time progress feedback.
- Extract Structure (Give Mode)
- Turn existing folders into mkarchi definitions.
- Configurable options (ignore patterns, depth limits, file content).
- Export to clipboard or file.
- Auto-Updates: Always stay on the latest version with background updates.
- Modern UI: Dark-themed, developer-centric interface with smooth animations.
The Desktop app relies on the mkarchi CLI to perform core operations. You must have it installed on your system.
Install mkarchi via pip:
pip install mkarchiVerify the installation:
mkarchi --version- Go to the Releases page.
- Download the installer for your operating system:
- Windows:
mkarchi-desktop-setup-x.x.x.exe - macOS:
mkarchi-desktop-x.x.x.dmg - Linux:
mkarchi-desktop-x.x.x.AppImage
- Windows:
- Run the installer to set up the application.
If you want to contribute or modify the source code:
-
Clone the repository:
git clone https://github.com/SoufyanRachdi/mkarchi_desktop.git cd mkarchi_desktop/electron -
Install dependencies:
npm install
-
Run in development mode:
npm start
-
Build for production:
npm run build # Build for current OS npm run build:win # Windows npm run build:mac # macOS npm run build:linux # Linux
Use this mode to scaffold a new project structure from a text definition.
- Open the "Create Project" tab.
- Destination: Click "Browse" to select the folder where you want to generate the files.
- Architecture Tree: Paste your structure in the text area. Example:
my-app/ ├── src/ │ ├── components/ │ │ └── Header.jsx │ └── App.js ├── package.json └── README.md - Click "Generate Project".
- Watch the "Logs" panel for success confirmation.
Use this mode to generate a text definition from an existing folder.
- Open the "Extract Structure" tab.
- Source: Click "Browse" to select the project folder you want to analyze.
- Configure Options:
- Include Content: Toggle to read file contents into the output.
- Max Depth: Limit how deep the tool traverses.
- Ignore Patterns: Exclude specific files (e.g.,
node_modules, .git). - Max Size: Skip files larger than a specific size (KB).
- Click "Extract Structure".
- The result will appear in the text area. Click "Copy" to save it to your clipboard.
MkArchi Desktop includes a built-in auto-updater.
- How it works: Every time you launch the application, it checks GitHub Releases for a newer version.
- Updating: If an update is available, it downloads in the background. You will be notified when it's ready to install (usually on the next restart).
- Manual Check: You can see the current version in the window title or "Help" menu.
- "mkarchi not installed": The app depends on the CLI. Run
pip install mkarchiand restart the app. - Permission Denied: Try running the app as Administrator if you are writing to protected directories.
- Build Errors: Ensure you have Node.js 16+ installed. If building for a different OS, you might need specific system dependencies (e.g.,
winefor Windows on Linux).
- Version: 0.1.0
- License: MIT
- Author: Soufyan Rachdi
For full documentation of the CLI tool syntax, visit the official mkarchi documentation.