django-metroui5


Namedjango-metroui5 JSON
Version 0.1.1 PyPI version JSON
download
home_pagehttps://github.com/DevCraftClub/django-metroui5
SummaryMetroUI v5 integration for Django 4.1+
upload_time2025-09-01 10:30:59
maintainerNone
docs_urlNone
authorMaxim Harder
requires_python>=3.9
licenseMIT
keywords django metroui ui frontend framework bootstrap-replacement
VCS
bugtrack_url
requirements Django
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Django MetroUI5

[![Python Version](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12%20%7C%203.13-blue.svg)](https://www.python.org/downloads/)
[![Django Version](https://img.shields.io/badge/django-4.1%20%7C%204.2%20%7C%205.0%20%7C%205.1%20%7C%205.2.5-green.svg)](https://www.djangoproject.com/)
[![License](https://img.shields.io/badge/license-MIT-yellow.svg)](LICENSE)
[![Compatibility](https://img.shields.io/badge/compatibility-25%20combinations-brightgreen.svg)](https://github.com/DevCraftClub/django-metroui5/actions)

**Django MetroUI5** - это Django пакет для интеграции MetroUI v5 с Django 4.1+ и Python 3.9+.

**Django MetroUI5** is a Django package for integrating MetroUI v5 with Django 4.1+ and Python 3.9+.

> 🔄 **Compatibility Tested**: Our CI/CD pipeline tests **25 different combinations** of Python and Django versions to ensure metroui5 works across all supported environments.

## 🚀 Особенности / Features

- **Полная интеграция MetroUI v5** с Django / **Full MetroUI v5 integration** with Django
- **Template tags** для всех основных компонентов MetroUI / **Template tags** for all major MetroUI components
- **Автоматическое рендеринг форм** с MetroUI стилизацией / **Automatic form rendering** with MetroUI styling
- **Поддержка MetroUI компонентов**: tiles, cards, buttons, alerts, progress bars / **MetroUI component support**:
  tiles, cards, buttons, alerts, progress bars
- **Responsive дизайн** для всех устройств / **Responsive design** for all devices
- **🔄 Comprehensive Compatibility Testing** - Tested across **25 Python + Django combinations**
- **Django 4.1+ совместимость** / **Django 4.1+ compatibility**
- **Python 3.9+ поддержка** / **Python 3.9+ support**
- **Bilingual documentation** - English and Russian comments and docstrings
- **Full test coverage** - Comprehensive testing for all components
- **Online demo application** - Live demonstration of all features

## 📋 Требования / Requirements

- Python 3.9, 3.10, 3.11, 3.12, or 3.13
- Django 4.1, 4.2, 5.0, 5.1, or 5.2.5
- MetroUI v5 (включен в пакет) / MetroUI v5 (included in package)

## 🛠️ Быстрый старт / Quick Start

### 1. Установка пакета / Package Installation

```bash
# Клонирование репозитория / Clone repository
git clone https://github.com/DevCraftClub/django-metroui5.git
cd django-metroui5

# Установка в режиме разработки / Install in development mode
pip install -e .
```

### 2. Запуск демонстрационного приложения / Running Demo Application

```bash
# Переход в папку с демо / Navigate to demo folder
cd example

# Проверка конфигурации / Check configuration
python3 manage.py check

# Запуск сервера разработки / Start development server
python3 manage.py runserver
```

Демо приложение будет доступно по адресу: **http://127.0.0.1:8000/** / Demo application will be available at: \* \*http://127.0.0.1:8000/**

### 3. Доступные страницы демо / Available Demo Pages

- **Главная** (`/`) - Обзор всех возможностей MetroUI5 / **Main** (`/`) - Overview of all MetroUI5 capabilities
- **Формы** (`/forms/`) - Демонстрация рендеринга Django форм / **Forms** (`/forms/`) - Django form rendering
  demonstration
- **Компоненты** (`/components/`) - Все доступные UI компоненты / **Components** (`/components/`) - All available UI
  components
- **Tiles** (`/tiles/`) - Примеры MetroUI tiles / **Tiles** (`/tiles/`) - MetroUI tiles examples

## 🧪 Тестирование / Testing

### 🧪 Compatibility Testing

Our CI/CD pipeline tests **25 different combinations** of Python and Django versions to ensure metroui5 works across all supported environments:

- **Python**: 3.9, 3.10, 3.11, 3.12, 3.13
- **Django**: 4.1, 4.2, 5.0, 5.1, 5.2.5

### Запуск тестов / Running Tests

```bash
# В корневой папке проекта / In project root folder
pytest

# Тесты с покрытием / Tests with coverage
pytest --cov=metroui5

# Django тесты / Django tests
cd example
python3 manage.py test

# Тестирование совместимости / Compatibility testing
# Tests run automatically on GitHub Actions for all Python + Django combinations
```

## 📚 Документация / Documentation

- **[CHANGELOG.md](CHANGELOG.md)** - История изменений / Change history
- **[CONTRIBUTING.md](CONTRIBUTING.md)** - Руководство по вкладу / Contribution guide
- **Inline Documentation** - Bilingual comments and docstrings throughout the codebase
- **Test Coverage** - Comprehensive test suite with detailed examples

## 🎯 Использование в вашем проекте / Using in Your Project

### 1. Добавьте в INSTALLED_APPS / Add to INSTALLED_APPS

```python
INSTALLED_APPS = [
	# ... другие приложения / ... other applications
	'metroui5',
]
```

### 2. Настройте MetroUI (опционально) / Configure MetroUI (optional)

```python
# settings.py
METROUI5 = {
	'css_url': {
		'url': 'metroui5/css/metro.all.css',
		'integrity': None,
		'crossorigin': None,
	},
	'javascript_url': {
		'url': 'metroui5/js/metro.all.js',
		'integrity': None,
		'crossorigin': None,
	},
	'icons_css_url': {
		'url': 'metroui5/icons/icons.css',
		'integrity': None,
		'crossorigin': None,
	},
	'theme': 'default',
	'set_placeholder': True,
	'required_css_class': 'required',
	'error_css_class': 'error',
	'success_css_class': 'success',
}
```

### 3. Используйте в шаблонах / Use in Templates

```html
{% load metroui5 %}

<!DOCTYPE html>
<html>
	<head>
		<title>{% block title %}My App{% endblock %}</title>
		{% metroui5_css %} {% metroui5_icons_css %}
	</head>
	<body>
		<div class="container">{% block content %}{% endblock %}</div>

		{% metroui5_javascript %}
	</body>
</html>
```

## 🧩 Template Tags

### CSS и JavaScript / CSS and JavaScript

- `{% metroui5_css %}` - Включает CSS файл MetroUI / Includes MetroUI CSS file
- `{% metroui5_javascript %}` - Включает JavaScript файл MetroUI / Includes MetroUI JavaScript file
- `{% metroui5_icons_css %}` - Включает CSS файл иконок MetroUI / Includes MetroUI icons CSS file

### Формы / Forms

- `{% metroui5_form form %}` - Рендерит форму с MetroUI стилизацией / Renders form with MetroUI styling
- `{% metroui5_field field %}` - Рендерит поле формы / Renders form field
- `{% metroui5_form_errors form %}` - Рендерит ошибки формы / Renders form errors
- `{% metroui5_formset formset %}` - Рендерит формсет / Renders formset

### Компоненты / Components

- `{% metroui5_button content %}` - MetroUI кнопка / MetroUI button
- `{% metroui5_tile title %}` - MetroUI tile
- `{% metroui5_card %}` - MetroUI карточка / MetroUI card
- `{% metroui5_progress value %}` - MetroUI progress bar
- `{% metroui5_alert content %}` - MetroUI alert
- `{% metroui5_messages %}` - Django сообщения в MetroUI стиле / Django messages in MetroUI style

## 🎨 Примеры использования / Usage Examples

### Кнопки / Buttons

```html
{% metroui5_button "Submit" button_type="primary" size="lg" %} {%
metroui5_button "Cancel" button_type="secondary" outline=True %}
```

### Tiles

```html
{% metroui5_tile "Settings" size="medium" color="blue" icon="cog" %} {%
metroui5_tile "Users" size="large" color="green" content="1,234 active users" %}
```

### Формы / Forms

```html
<!-- Рендеринг всей формы / Render entire form -->
{% metroui5_form form %}

<!-- Рендеринг отдельных полей / Render individual fields -->
{% metroui5_field form.username %} {% metroui5_field form.email %}
```

### Progress Bars

```html
{% metroui5_progress 75 color="blue" %} {% metroui5_progress 50 color="green"
size="large" %}
```

## 🔧 Разработка / Development

### Установка для разработки / Development Installation

```bash
git clone https://github.com/DevCraftClub/django-metroui5.git
cd django-metroui5
pip install -e .[dev]
```

### Проверка кода / Code Quality

```bash
black --check .
flake8 .
mypy .
```

## 📦 Структура проекта / Project Structure

```
django-metroui5/
├── metroui5/                    # Основной пакет / Main package
│   ├── templatetags/           # Template tags
│   ├── templates/              # Шаблоны MetroUI / MetroUI templates
│   ├── static/                 # Статические файлы MetroUI / MetroUI static files
│   ├── components.py           # UI компоненты / UI components
│   ├── forms.py                # Рендеринг форм / Form rendering
│   ├── renderers.py            # Система рендереров / Renderer system
│   └── ...
├── example/                     # Демонстрационное приложение / Demo application
├── tests/                       # Тесты / Tests
├── docs/                        # Документация / Documentation
└── ...
```

## 🌟 Особенности реализации / Implementation Features

- **Следование принципам DRY** - переиспользование кода между компонентами / **DRY principles** - code reuse between
  components
- **Bilingual documentation** - English and Russian comments and docstrings throughout
- **Generic шаблоны** - базовые шаблоны для переиспользования / **Generic templates** - base templates for reuse
- **Комплексное тестирование** - покрытие всех основных функций / **Comprehensive testing** - coverage of all main
  functions
- **Современная архитектура** - использование Python 3.9+ возможностей / **Modern architecture** - using Python 3.9+ capabilities
  capabilities
- **Full MetroUI v5 integration** - complete component library with Django integration

## 📈 Следующие шаги / Next Steps

### Краткосрочные задачи / Short-term Tasks

1. ✅ Добавить больше MetroUI компонентов / Add more MetroUI components
2. ✅ Расширить систему тестирования / Expand testing system
3. ✅ Улучшить документацию / Improve documentation
4. ✅ Создать онлайн демо / Create online demo

### Среднесрочные задачи / Medium-term Tasks

1. Добавить поддержку тем / Add theme support
2. Создать дополнительные рендереры / Create additional renderers
3. Добавить поддержку Jinja2 / Add Jinja2 support

### Долгосрочные задачи / Long-term Tasks

1. ✅ Создать онлайн демо / Create online demo
2. Добавить поддержку других версий Django / Add support for other Django versions
3. Создать экосистему плагинов / Create plugin ecosystem

## 🤝 Вклад в проект / Contributing

Мы приветствуем вклад в развитие проекта! Пожалуйста, ознакомьтесь с [CONTRIBUTING.md](CONTRIBUTING.md) для получения
дополнительной информации.

We welcome contributions to the project! Please read [CONTRIBUTING.md](CONTRIBUTING.md) for more information.

## 📄 Лицензия / License

Этот проект распространяется под лицензией MIT. См. файл [LICENSE](LICENSE) для получения дополнительной информации.

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more information.

## 🙏 Благодарности / Acknowledgments

- [MetroUI](https://metroui.org.ua/) - за отличный UI фреймворк / for excellent UI framework
- [Django](https://www.djangoproject.com/) - за мощный веб-фреймворк / for powerful web framework
- [django-bootstrap5](https://github.com/zostera/django-bootstrap5) - за вдохновение архитектуры / for architecture
  inspiration

## 📞 Поддержка / Support

Если у вас есть вопросы или проблемы: / If you have questions or issues:

- Создайте [Issue](https://github.com/DevCraftClub/django-metroui5/issues) / Create
  an [Issue](https://github.com/DevCraftClub/django-metroui5/issues)
- Обратитесь к [документации](https://django-metroui5.readthedocs.io/) / Check
  the [documentation](https://django-metroui5.readthedocs.io/)
- Присоединитесь к обсуждениям в [Discussions](https://github.com/DevCraftClub/django-metroui5/discussions) / Join
  discussions in [Discussions](https://github.com/DevCraftClub/django-metroui5/discussions)

---

**Django MetroUI5** - Сделайте ваши Django приложения красивыми с MetroUI v5! 🎨✨

**Django MetroUI5** - Make your Django applications beautiful with MetroUI v5! 🎨✨

## 🎯 Текущий статус проекта / Current Project Status

### ✅ Завершенные задачи / Completed Tasks

- **Bilingual Documentation** - English and Russian comments/docstrings throughout codebase
- **Comprehensive Testing** - Full test coverage for all components and utilities
- **Compatibility Testing Matrix** - 25 Python + Django version combinations tested
- **Online Demo Application** - Live demonstration of all MetroUI5 features
- **MetroUI v5 Integration** - Complete component library with Django integration
- **Form Rendering System** - Automatic MetroUI styling for Django forms
- **Template Tags** - Complete set of MetroUI component template tags
- **Static Files Management** - Proper MetroUI CSS/JS integration

### 🔄 В процессе / In Progress

- **Jinja2 Support** - Template engine compatibility
- **Plugin Ecosystem** - Extensible component system

### 📋 Планируется / Planned

- **Theme System** - Multiple MetroUI themes
- **Additional Renderers** - Specialized form renderers
- **Performance Optimization** - Enhanced rendering speed

## 🚀 Быстрый тест / Quick Test

Хотите быстро протестировать пакет? Запустите демо приложение: / Want to quickly test the package? Run the demo
application:

```bash
# Установка и запуск за 3 команды / Installation and launch in 3 commands
pip install -e .
cd example
python3 manage.py runserver
```

Откройте http://127.0.0.1:8000/ в браузере и наслаждайтесь MetroUI5! 🎉 / Open http://127.0.0.1:8000/ in your browser and
enjoy MetroUI5! 🎉

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/DevCraftClub/django-metroui5",
    "name": "django-metroui5",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": "Maxim Harder <dev@devcraft.club>",
    "keywords": "django, metroui, ui, frontend, framework, bootstrap-replacement",
    "author": "Maxim Harder",
    "author_email": "Maxim Harder <dev@devcraft.club>",
    "download_url": "https://files.pythonhosted.org/packages/f3/a4/c0dd133380ba980a4b60443d147f57a1eb92ea84fb56b313245a8470f1be/django_metroui5-0.1.1.tar.gz",
    "platform": null,
    "description": "# Django MetroUI5\n\n[![Python Version](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12%20%7C%203.13-blue.svg)](https://www.python.org/downloads/)\n[![Django Version](https://img.shields.io/badge/django-4.1%20%7C%204.2%20%7C%205.0%20%7C%205.1%20%7C%205.2.5-green.svg)](https://www.djangoproject.com/)\n[![License](https://img.shields.io/badge/license-MIT-yellow.svg)](LICENSE)\n[![Compatibility](https://img.shields.io/badge/compatibility-25%20combinations-brightgreen.svg)](https://github.com/DevCraftClub/django-metroui5/actions)\n\n**Django MetroUI5** - \u044d\u0442\u043e Django \u043f\u0430\u043a\u0435\u0442 \u0434\u043b\u044f \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 MetroUI v5 \u0441 Django 4.1+ \u0438 Python 3.9+.\n\n**Django MetroUI5** is a Django package for integrating MetroUI v5 with Django 4.1+ and Python 3.9+.\n\n> \ud83d\udd04 **Compatibility Tested**: Our CI/CD pipeline tests **25 different combinations** of Python and Django versions to ensure metroui5 works across all supported environments.\n\n## \ud83d\ude80 \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 / Features\n\n- **\u041f\u043e\u043b\u043d\u0430\u044f \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f MetroUI v5** \u0441 Django / **Full MetroUI v5 integration** with Django\n- **Template tags** \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 MetroUI / **Template tags** for all major MetroUI components\n- **\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433 \u0444\u043e\u0440\u043c** \u0441 MetroUI \u0441\u0442\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 / **Automatic form rendering** with MetroUI styling\n- **\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 MetroUI \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432**: tiles, cards, buttons, alerts, progress bars / **MetroUI component support**:\n  tiles, cards, buttons, alerts, progress bars\n- **Responsive \u0434\u0438\u0437\u0430\u0439\u043d** \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 / **Responsive design** for all devices\n- **\ud83d\udd04 Comprehensive Compatibility Testing** - Tested across **25 Python + Django combinations**\n- **Django 4.1+ \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c** / **Django 4.1+ compatibility**\n- **Python 3.9+ \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430** / **Python 3.9+ support**\n- **Bilingual documentation** - English and Russian comments and docstrings\n- **Full test coverage** - Comprehensive testing for all components\n- **Online demo application** - Live demonstration of all features\n\n## \ud83d\udccb \u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f / Requirements\n\n- Python 3.9, 3.10, 3.11, 3.12, or 3.13\n- Django 4.1, 4.2, 5.0, 5.1, or 5.2.5\n- MetroUI v5 (\u0432\u043a\u043b\u044e\u0447\u0435\u043d \u0432 \u043f\u0430\u043a\u0435\u0442) / MetroUI v5 (included in package)\n\n## \ud83d\udee0\ufe0f \u0411\u044b\u0441\u0442\u0440\u044b\u0439 \u0441\u0442\u0430\u0440\u0442 / Quick Start\n\n### 1. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u0430\u043a\u0435\u0442\u0430 / Package Installation\n\n```bash\n# \u041a\u043b\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f / Clone repository\ngit clone https://github.com/DevCraftClub/django-metroui5.git\ncd django-metroui5\n\n# \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 / Install in development mode\npip install -e .\n```\n\n### 2. \u0417\u0430\u043f\u0443\u0441\u043a \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f / Running Demo Application\n\n```bash\n# \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u0434\u0435\u043c\u043e / Navigate to demo folder\ncd example\n\n# \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 / Check configuration\npython3 manage.py check\n\n# \u0417\u0430\u043f\u0443\u0441\u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 / Start development server\npython3 manage.py runserver\n```\n\n\u0414\u0435\u043c\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443: **http://127.0.0.1:8000/** / Demo application will be available at: \\* \\*http://127.0.0.1:8000/**\n\n### 3. \u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0434\u0435\u043c\u043e / Available Demo Pages\n\n- **\u0413\u043b\u0430\u0432\u043d\u0430\u044f** (`/`) - \u041e\u0431\u0437\u043e\u0440 \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 MetroUI5 / **Main** (`/`) - Overview of all MetroUI5 capabilities\n- **\u0424\u043e\u0440\u043c\u044b** (`/forms/`) - \u0414\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0430 Django \u0444\u043e\u0440\u043c / **Forms** (`/forms/`) - Django form rendering\n  demonstration\n- **\u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b** (`/components/`) - \u0412\u0441\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 UI \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b / **Components** (`/components/`) - All available UI\n  components\n- **Tiles** (`/tiles/`) - \u041f\u0440\u0438\u043c\u0435\u0440\u044b MetroUI tiles / **Tiles** (`/tiles/`) - MetroUI tiles examples\n\n## \ud83e\uddea \u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 / Testing\n\n### \ud83e\uddea Compatibility Testing\n\nOur CI/CD pipeline tests **25 different combinations** of Python and Django versions to ensure metroui5 works across all supported environments:\n\n- **Python**: 3.9, 3.10, 3.11, 3.12, 3.13\n- **Django**: 4.1, 4.2, 5.0, 5.1, 5.2.5\n\n### \u0417\u0430\u043f\u0443\u0441\u043a \u0442\u0435\u0441\u0442\u043e\u0432 / Running Tests\n\n```bash\n# \u0412 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u043f\u0430\u043f\u043a\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 / In project root folder\npytest\n\n# \u0422\u0435\u0441\u0442\u044b \u0441 \u043f\u043e\u043a\u0440\u044b\u0442\u0438\u0435\u043c / Tests with coverage\npytest --cov=metroui5\n\n# Django \u0442\u0435\u0441\u0442\u044b / Django tests\ncd example\npython3 manage.py test\n\n# \u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 / Compatibility testing\n# Tests run automatically on GitHub Actions for all Python + Django combinations\n```\n\n## \ud83d\udcda \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f / Documentation\n\n- **[CHANGELOG.md](CHANGELOG.md)** - \u0418\u0441\u0442\u043e\u0440\u0438\u044f \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 / Change history\n- **[CONTRIBUTING.md](CONTRIBUTING.md)** - \u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e \u0432\u043a\u043b\u0430\u0434\u0443 / Contribution guide\n- **Inline Documentation** - Bilingual comments and docstrings throughout the codebase\n- **Test Coverage** - Comprehensive test suite with detailed examples\n\n## \ud83c\udfaf \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 \u0432\u0430\u0448\u0435\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435 / Using in Your Project\n\n### 1. \u0414\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u0432 INSTALLED_APPS / Add to INSTALLED_APPS\n\n```python\nINSTALLED_APPS = [\n\t# ... \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f / ... other applications\n\t'metroui5',\n]\n```\n\n### 2. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u0442\u0435 MetroUI (\u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e) / Configure MetroUI (optional)\n\n```python\n# settings.py\nMETROUI5 = {\n\t'css_url': {\n\t\t'url': 'metroui5/css/metro.all.css',\n\t\t'integrity': None,\n\t\t'crossorigin': None,\n\t},\n\t'javascript_url': {\n\t\t'url': 'metroui5/js/metro.all.js',\n\t\t'integrity': None,\n\t\t'crossorigin': None,\n\t},\n\t'icons_css_url': {\n\t\t'url': 'metroui5/icons/icons.css',\n\t\t'integrity': None,\n\t\t'crossorigin': None,\n\t},\n\t'theme': 'default',\n\t'set_placeholder': True,\n\t'required_css_class': 'required',\n\t'error_css_class': 'error',\n\t'success_css_class': 'success',\n}\n```\n\n### 3. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0432 \u0448\u0430\u0431\u043b\u043e\u043d\u0430\u0445 / Use in Templates\n\n```html\n{% load metroui5 %}\n\n<!DOCTYPE html>\n<html>\n\t<head>\n\t\t<title>{% block title %}My App{% endblock %}</title>\n\t\t{% metroui5_css %} {% metroui5_icons_css %}\n\t</head>\n\t<body>\n\t\t<div class=\"container\">{% block content %}{% endblock %}</div>\n\n\t\t{% metroui5_javascript %}\n\t</body>\n</html>\n```\n\n## \ud83e\udde9 Template Tags\n\n### CSS \u0438 JavaScript / CSS and JavaScript\n\n- `{% metroui5_css %}` - \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u0442 CSS \u0444\u0430\u0439\u043b MetroUI / Includes MetroUI CSS file\n- `{% metroui5_javascript %}` - \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u0442 JavaScript \u0444\u0430\u0439\u043b MetroUI / Includes MetroUI JavaScript file\n- `{% metroui5_icons_css %}` - \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u0442 CSS \u0444\u0430\u0439\u043b \u0438\u043a\u043e\u043d\u043e\u043a MetroUI / Includes MetroUI icons CSS file\n\n### \u0424\u043e\u0440\u043c\u044b / Forms\n\n- `{% metroui5_form form %}` - \u0420\u0435\u043d\u0434\u0435\u0440\u0438\u0442 \u0444\u043e\u0440\u043c\u0443 \u0441 MetroUI \u0441\u0442\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 / Renders form with MetroUI styling\n- `{% metroui5_field field %}` - \u0420\u0435\u043d\u0434\u0435\u0440\u0438\u0442 \u043f\u043e\u043b\u0435 \u0444\u043e\u0440\u043c\u044b / Renders form field\n- `{% metroui5_form_errors form %}` - \u0420\u0435\u043d\u0434\u0435\u0440\u0438\u0442 \u043e\u0448\u0438\u0431\u043a\u0438 \u0444\u043e\u0440\u043c\u044b / Renders form errors\n- `{% metroui5_formset formset %}` - \u0420\u0435\u043d\u0434\u0435\u0440\u0438\u0442 \u0444\u043e\u0440\u043c\u0441\u0435\u0442 / Renders formset\n\n### \u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b / Components\n\n- `{% metroui5_button content %}` - MetroUI \u043a\u043d\u043e\u043f\u043a\u0430 / MetroUI button\n- `{% metroui5_tile title %}` - MetroUI tile\n- `{% metroui5_card %}` - MetroUI \u043a\u0430\u0440\u0442\u043e\u0447\u043a\u0430 / MetroUI card\n- `{% metroui5_progress value %}` - MetroUI progress bar\n- `{% metroui5_alert content %}` - MetroUI alert\n- `{% metroui5_messages %}` - Django \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0432 MetroUI \u0441\u0442\u0438\u043b\u0435 / Django messages in MetroUI style\n\n## \ud83c\udfa8 \u041f\u0440\u0438\u043c\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f / Usage Examples\n\n### \u041a\u043d\u043e\u043f\u043a\u0438 / Buttons\n\n```html\n{% metroui5_button \"Submit\" button_type=\"primary\" size=\"lg\" %} {%\nmetroui5_button \"Cancel\" button_type=\"secondary\" outline=True %}\n```\n\n### Tiles\n\n```html\n{% metroui5_tile \"Settings\" size=\"medium\" color=\"blue\" icon=\"cog\" %} {%\nmetroui5_tile \"Users\" size=\"large\" color=\"green\" content=\"1,234 active users\" %}\n```\n\n### \u0424\u043e\u0440\u043c\u044b / Forms\n\n```html\n<!-- \u0420\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433 \u0432\u0441\u0435\u0439 \u0444\u043e\u0440\u043c\u044b / Render entire form -->\n{% metroui5_form form %}\n\n<!-- \u0420\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u043b\u0435\u0439 / Render individual fields -->\n{% metroui5_field form.username %} {% metroui5_field form.email %}\n```\n\n### Progress Bars\n\n```html\n{% metroui5_progress 75 color=\"blue\" %} {% metroui5_progress 50 color=\"green\"\nsize=\"large\" %}\n```\n\n## \ud83d\udd27 \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 / Development\n\n### \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 / Development Installation\n\n```bash\ngit clone https://github.com/DevCraftClub/django-metroui5.git\ncd django-metroui5\npip install -e .[dev]\n```\n\n### \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043a\u043e\u0434\u0430 / Code Quality\n\n```bash\nblack --check .\nflake8 .\nmypy .\n```\n\n## \ud83d\udce6 \u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 / Project Structure\n\n```\ndjango-metroui5/\n\u251c\u2500\u2500 metroui5/                    # \u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043f\u0430\u043a\u0435\u0442 / Main package\n\u2502   \u251c\u2500\u2500 templatetags/           # Template tags\n\u2502   \u251c\u2500\u2500 templates/              # \u0428\u0430\u0431\u043b\u043e\u043d\u044b MetroUI / MetroUI templates\n\u2502   \u251c\u2500\u2500 static/                 # \u0421\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0444\u0430\u0439\u043b\u044b MetroUI / MetroUI static files\n\u2502   \u251c\u2500\u2500 components.py           # UI \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b / UI components\n\u2502   \u251c\u2500\u2500 forms.py                # \u0420\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433 \u0444\u043e\u0440\u043c / Form rendering\n\u2502   \u251c\u2500\u2500 renderers.py            # \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u0440\u0435\u043d\u0434\u0435\u0440\u0435\u0440\u043e\u0432 / Renderer system\n\u2502   \u2514\u2500\u2500 ...\n\u251c\u2500\u2500 example/                     # \u0414\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 / Demo application\n\u251c\u2500\u2500 tests/                       # \u0422\u0435\u0441\u0442\u044b / Tests\n\u251c\u2500\u2500 docs/                        # \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f / Documentation\n\u2514\u2500\u2500 ...\n```\n\n## \ud83c\udf1f \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 / Implementation Features\n\n- **\u0421\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0430\u043c DRY** - \u043f\u0435\u0440\u0435\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u043e\u0434\u0430 \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438 / **DRY principles** - code reuse between\n  components\n- **Bilingual documentation** - English and Russian comments and docstrings throughout\n- **Generic \u0448\u0430\u0431\u043b\u043e\u043d\u044b** - \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u044b \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f / **Generic templates** - base templates for reuse\n- **\u041a\u043e\u043c\u043f\u043b\u0435\u043a\u0441\u043d\u043e\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435** - \u043f\u043e\u043a\u0440\u044b\u0442\u0438\u0435 \u0432\u0441\u0435\u0445 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 / **Comprehensive testing** - coverage of all main\n  functions\n- **\u0421\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430** - \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Python 3.9+ \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 / **Modern architecture** - using Python 3.9+ capabilities\n  capabilities\n- **Full MetroUI v5 integration** - complete component library with Django integration\n\n## \ud83d\udcc8 \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0448\u0430\u0433\u0438 / Next Steps\n\n### \u041a\u0440\u0430\u0442\u043a\u043e\u0441\u0440\u043e\u0447\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 / Short-term Tasks\n\n1. \u2705 \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435 MetroUI \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 / Add more MetroUI components\n2. \u2705 \u0420\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f / Expand testing system\n3. \u2705 \u0423\u043b\u0443\u0447\u0448\u0438\u0442\u044c \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044e / Improve documentation\n4. \u2705 \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u043d\u043b\u0430\u0439\u043d \u0434\u0435\u043c\u043e / Create online demo\n\n### \u0421\u0440\u0435\u0434\u043d\u0435\u0441\u0440\u043e\u0447\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 / Medium-term Tasks\n\n1. \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0442\u0435\u043c / Add theme support\n2. \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0440\u0435\u043d\u0434\u0435\u0440\u0435\u0440\u044b / Create additional renderers\n3. \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 Jinja2 / Add Jinja2 support\n\n### \u0414\u043e\u043b\u0433\u043e\u0441\u0440\u043e\u0447\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 / Long-term Tasks\n\n1. \u2705 \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u043d\u043b\u0430\u0439\u043d \u0434\u0435\u043c\u043e / Create online demo\n2. \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0434\u0440\u0443\u0433\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u0439 Django / Add support for other Django versions\n3. \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432 / Create plugin ecosystem\n\n## \ud83e\udd1d \u0412\u043a\u043b\u0430\u0434 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442 / Contributing\n\n\u041c\u044b \u043f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u043c \u0432\u043a\u043b\u0430\u0434 \u0432 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430! \u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u044c\u0442\u0435\u0441\u044c \u0441 [CONTRIBUTING.md](CONTRIBUTING.md) \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f\n\u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438.\n\nWe welcome contributions to the project! Please read [CONTRIBUTING.md](CONTRIBUTING.md) for more information.\n\n## \ud83d\udcc4 \u041b\u0438\u0446\u0435\u043d\u0437\u0438\u044f / License\n\n\u042d\u0442\u043e\u0442 \u043f\u0440\u043e\u0435\u043a\u0442 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 MIT. \u0421\u043c. \u0444\u0430\u0439\u043b [LICENSE](LICENSE) \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438.\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more information.\n\n## \ud83d\ude4f \u0411\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u043d\u043e\u0441\u0442\u0438 / Acknowledgments\n\n- [MetroUI](https://metroui.org.ua/) - \u0437\u0430 \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0439 UI \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a / for excellent UI framework\n- [Django](https://www.djangoproject.com/) - \u0437\u0430 \u043c\u043e\u0449\u043d\u044b\u0439 \u0432\u0435\u0431-\u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a / for powerful web framework\n- [django-bootstrap5](https://github.com/zostera/django-bootstrap5) - \u0437\u0430 \u0432\u0434\u043e\u0445\u043d\u043e\u0432\u0435\u043d\u0438\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b / for architecture\n  inspiration\n\n## \ud83d\udcde \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 / Support\n\n\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u0438\u043b\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b: / If you have questions or issues:\n\n- \u0421\u043e\u0437\u0434\u0430\u0439\u0442\u0435 [Issue](https://github.com/DevCraftClub/django-metroui5/issues) / Create\n  an [Issue](https://github.com/DevCraftClub/django-metroui5/issues)\n- \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044c \u043a [\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438](https://django-metroui5.readthedocs.io/) / Check\n  the [documentation](https://django-metroui5.readthedocs.io/)\n- \u041f\u0440\u0438\u0441\u043e\u0435\u0434\u0438\u043d\u0438\u0442\u0435\u0441\u044c \u043a \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u044f\u043c \u0432 [Discussions](https://github.com/DevCraftClub/django-metroui5/discussions) / Join\n  discussions in [Discussions](https://github.com/DevCraftClub/django-metroui5/discussions)\n\n---\n\n**Django MetroUI5** - \u0421\u0434\u0435\u043b\u0430\u0439\u0442\u0435 \u0432\u0430\u0448\u0438 Django \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043a\u0440\u0430\u0441\u0438\u0432\u044b\u043c\u0438 \u0441 MetroUI v5! \ud83c\udfa8\u2728\n\n**Django MetroUI5** - Make your Django applications beautiful with MetroUI v5! \ud83c\udfa8\u2728\n\n## \ud83c\udfaf \u0422\u0435\u043a\u0443\u0449\u0438\u0439 \u0441\u0442\u0430\u0442\u0443\u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 / Current Project Status\n\n### \u2705 \u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 / Completed Tasks\n\n- **Bilingual Documentation** - English and Russian comments/docstrings throughout codebase\n- **Comprehensive Testing** - Full test coverage for all components and utilities\n- **Compatibility Testing Matrix** - 25 Python + Django version combinations tested\n- **Online Demo Application** - Live demonstration of all MetroUI5 features\n- **MetroUI v5 Integration** - Complete component library with Django integration\n- **Form Rendering System** - Automatic MetroUI styling for Django forms\n- **Template Tags** - Complete set of MetroUI component template tags\n- **Static Files Management** - Proper MetroUI CSS/JS integration\n\n### \ud83d\udd04 \u0412 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 / In Progress\n\n- **Jinja2 Support** - Template engine compatibility\n- **Plugin Ecosystem** - Extensible component system\n\n### \ud83d\udccb \u041f\u043b\u0430\u043d\u0438\u0440\u0443\u0435\u0442\u0441\u044f / Planned\n\n- **Theme System** - Multiple MetroUI themes\n- **Additional Renderers** - Specialized form renderers\n- **Performance Optimization** - Enhanced rendering speed\n\n## \ud83d\ude80 \u0411\u044b\u0441\u0442\u0440\u044b\u0439 \u0442\u0435\u0441\u0442 / Quick Test\n\n\u0425\u043e\u0442\u0438\u0442\u0435 \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442? \u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0435 \u0434\u0435\u043c\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435: / Want to quickly test the package? Run the demo\napplication:\n\n```bash\n# \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u0437\u0430\u043f\u0443\u0441\u043a \u0437\u0430 3 \u043a\u043e\u043c\u0430\u043d\u0434\u044b / Installation and launch in 3 commands\npip install -e .\ncd example\npython3 manage.py runserver\n```\n\n\u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 http://127.0.0.1:8000/ \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435 \u0438 \u043d\u0430\u0441\u043b\u0430\u0436\u0434\u0430\u0439\u0442\u0435\u0441\u044c MetroUI5! \ud83c\udf89 / Open http://127.0.0.1:8000/ in your browser and\nenjoy MetroUI5! \ud83c\udf89\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "MetroUI v5 integration for Django 4.1+",
    "version": "0.1.1",
    "project_urls": {
        "Bug Tracker": "https://github.com/DevCraftClub/django-metroui5/issues",
        "Documentation (English)": "https://github.com/DevCraftClub/django-metroui5/docs/en/",
        "Documentation (Russian)": "https://readme.devcraft.club",
        "Homepage": "https://github.com/DevCraftClub/django-metroui5",
        "Repository": "https://github.com/DevCraftClub/django-metroui5.git"
    },
    "split_keywords": [
        "django",
        " metroui",
        " ui",
        " frontend",
        " framework",
        " bootstrap-replacement"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "fdc0f2838bed940f2dccb2954c2604871f244c425537d95c6f1fa1933945466a",
                "md5": "0b6afe4bb726affaadd99f5871422cab",
                "sha256": "c9984ceabf86e0f2e13b09dbca580aea6d9615328545a1a0dd65eea5fc524d33"
            },
            "downloads": -1,
            "filename": "django_metroui5-0.1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "0b6afe4bb726affaadd99f5871422cab",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 1457384,
            "upload_time": "2025-09-01T10:30:57",
            "upload_time_iso_8601": "2025-09-01T10:30:57.701108Z",
            "url": "https://files.pythonhosted.org/packages/fd/c0/f2838bed940f2dccb2954c2604871f244c425537d95c6f1fa1933945466a/django_metroui5-0.1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "f3a4c0dd133380ba980a4b60443d147f57a1eb92ea84fb56b313245a8470f1be",
                "md5": "acf2997b09f029e92533269443ca67b7",
                "sha256": "9d8804d3821fe2ece31232229f1d6a3871c6bf4984527d7afd598a3f9a3366b0"
            },
            "downloads": -1,
            "filename": "django_metroui5-0.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "acf2997b09f029e92533269443ca67b7",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 1457778,
            "upload_time": "2025-09-01T10:30:59",
            "upload_time_iso_8601": "2025-09-01T10:30:59.182540Z",
            "url": "https://files.pythonhosted.org/packages/f3/a4/c0dd133380ba980a4b60443d147f57a1eb92ea84fb56b313245a8470f1be/django_metroui5-0.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-01 10:30:59",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "DevCraftClub",
    "github_project": "django-metroui5",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "Django",
            "specs": [
                [
                    "<",
                    "5.3"
                ],
                [
                    ">=",
                    "4.2"
                ]
            ]
        }
    ],
    "lcname": "django-metroui5"
}
        
Elapsed time: 1.11194s