https://github.com/gigorgu/2w
графический редактор для визуальной работы с JSON-структурами
https://github.com/gigorgu/2w
gui json pyqt5 python python3
Last synced: 6 months ago
JSON representation
графический редактор для визуальной работы с JSON-структурами
- Host: GitHub
- URL: https://github.com/gigorgu/2w
- Owner: Gigorgu
- License: mit
- Created: 2024-09-12T19:04:19.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-12T23:39:22.000Z (almost 2 years ago)
- Last Synced: 2025-03-25T22:21:43.145Z (over 1 year ago)
- Topics: gui, json, pyqt5, python, python3
- Language: HTML
- Homepage:
- Size: 33.7 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
### Molybdenum: JSON Tree Editor
---
**Molybdenum** — это мощный и удобный графический редактор для визуальной работы с JSON-структурами. Программа позволяет интерактивно редактировать древовидные структуры данных, добавлять новые элементы, сохранять и загружать JSON-файлы, а также управлять различными типами данных (текст, число, массивы, объекты и пр.).
Проект написан на Python с использованием фреймворка **PyQt5**, который обеспечивает полноценный графический интерфейс. Также проект легко собирается в автономный исполняемый файл с помощью **PyInstaller**, что делает его удобным для использования на разных платформах.
---
## Основные функции
- **Интерактивное редактирование JSON**: Добавляйте, редактируйте и удаляйте элементы JSON с простым интерфейсом.
- **Поддержка разных типов данных**: Строки, числа, булевые значения, объекты и массивы.
- **Контекстное меню** для быстрого доступа к основным операциям.
- **Сохранение и загрузка JSON файлов**: Легко сохраняйте и открывайте файлы в JSON формате.
- **Автономный режим**: Приложение может быть собрано в один исполняемый файл для Windows, что позволяет использовать его без установки Python и зависимостей.
---
## Технологии
- **Python 3.9+**
- **PyQt5** — для создания графического интерфейса пользователя.
- **PyInstaller** — для сборки проекта в автономный исполняемый файл.
- **JSON** — для работы с древовидными структурами данных.
---
## Как собрать проект (Open Source Build Instructions)
1. **Клонируйте репозиторий**:
```bash
git clone https://github.com/Gigorgu/2w.git
cd molybdenum
```
2. **Установите зависимости**:
Виртуальное окружение (опционально, но рекомендуется):
```bash
python -m venv .venv
source .venv/bin/activate # Linux/Mac
.venv\Scripts\activate # Windows
```
Установка зависимостей:
```bash
pip install -r requirements.txt
```
Зависимости включают:
- `PyQt5` — основной фреймворк для создания GUI.
- `PyInstaller` — для сборки проекта в исполняемый файл.
3. **Запуск проекта (в режиме разработки)**:
После установки всех зависимостей, вы можете запустить редактор напрямую:
```bash
python molybdenum.py
```
4. **Сборка исполняемого файла**:
Для создания standalone `.exe` файла (или соответствующего файла для другой платформы), выполните следующие шаги:
1. Убедитесь, что у вас установлен **PyInstaller**:
```bash
pip install pyinstaller
```
2. Создайте исполняемый файл:
```bash
pyinstaller --onefile --noconsole --icon=molybdenum/molybdenum.ico molybdenum.spec
```
Это создаст исполняемый файл в папке `dist/`, который можно запускать без установки Python и зависимостей.
5. **Подключение встроенных ресурсов**:
В проект встроены такие ресурсы, как иконки и изображения. Если эти файлы отсутствуют в папке рядом с исполняемым файлом, они будут загружены из встроенного архива благодаря механизму PyInstaller. Это обеспечивает гибкость и независимость программы.
---
## Структура проекта
```
molybdenum/
│
├── molybdenum.py # Основной код приложения
├── README.md # Текущее руководство
├── requirements.txt # Список зависимостей
├── molybdenum/ # Папка с ресурсами
│ ├── molybdenum.ico # Иконка приложения
│ └── molybdenum.png # Изображение для GUI
```
---
## Вклад и развитие
Проект **Molybdenum** открыт для вкладов! Если у вас есть идеи по улучшению функционала или вы нашли баги, не стесняйтесь создавать **pull requests** или **issues**.
### Как внести вклад:
1. Форкните репозиторий.
2. Создайте ветку для новой функциональности или исправления:
```bash
git checkout -b new-feature
```
3. Сделайте коммит с вашими изменениями:
```bash
git commit -m "Добавил новую фичу"
```
4. Пушьте изменения в свою ветку:
```bash
git push origin new-feature
```
5. Откройте **pull request** и опишите ваши изменения.
---
## Лицензия
Проект распространяется под лицензией MIT, что означает, что вы можете свободно использовать, изменять и распространять его с соблюдением условий лицензии.
---