PYTHONOMANIA
273 subscribers
195 photos
3 videos
1 file
616 links
Откройте для себя мир Python в PYTHONOMANIA!

Идеально подходит как для начинающих, так и для опытных разработчиков. Присоединяйтесь к нам, чтобы достичь совершенства в Python!

Сайт: https://pythonomania.github.io/
Download Telegram
📱Secure.py.

secure.py — это простой, но мощный способ защитить ваши Python веб-приложения, независимо от используемого фреймворка.

❓Почему стоит использовать secure.py?

🔘Применяйте важные заголовки безопасности: внедряйте такие заголовки, как CSP, HSTS и другие, буквально в пару строк кода.

🔘Единый API для всех фреймворков: единый подход для Django, Flask, FastAPI и других.

🔘Безопасные настройки по умолчанию и гибкость кастомизации: легко начать и адаптировать под свои нужды.

🔘Простая интеграция: совместим с популярными Python фреймворками.

🔘Современный Python-дизайн: использует возможности Python 3.10+ для лаконичного и эффективного кода.

✅Заботьтесь о безопасности вашего веб-приложения с secure.py!

#Python #WebSecurity #securepy #Django #Flask #FastAPI #CSP #HSTS #WebDevelopment #PyPI #py #secure #security

📱Ссылка на репозиторий:
https://github.com/TypeError/secure
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍4🔥3
📱Otter Wiki.

Otter Wiki
— это минималистичное Python-приложение для совместного управления контентом. Все данные хранятся в Git-репозитории, что позволяет отслеживать каждое изменение.

✅Для разметки используется Markdown, а в основе — микрофреймворк Flask. Интерфейс построен с помощью Halfmoon, редактор — CodeMirror, а иконки предоставляет Font Awesome Free.

➕Особенности:

🔘Удобный минималистичный интерфейс с тёмным режимом.

🔘Markdown-редактор с подсветкой и поддержкой таблиц.

🔘Кастомизируемое боковое меню и индекс страниц.

🔘Полная история изменений и журнал.

🔘Аутентификация пользователей.

🔘Прикрепление файлов к страницам.

🔘Расширенный Markdown: таблицы, сноски, красивые блоки, алерты и диаграммы Mermaid.

🔘(Экспериментально) HTTP Git-сервер: клонирование, pull и push данных wiki.

🔘И, конечно, милый логотип выдры от Christy Presler (CC BY 3.0) 🦦.

#OtterWiki #Python #Git #Wiki #Markdown #Flask #Halfmoon #CodeMirror #FontAwesome #OpenSource

📱Ссылка на репозиторий:
https://github.com/redimp/otterwiki
Please open Telegram to view this post
VIEW IN TELEGRAM
2🔥4👍3
📱Hyperflask.

Hyperflask — это full-stack Python-фреймворк для создания веб-сайтов и приложений с минимумом шаблонного кода.

Он объединяет всё лучшее из Flask-экосистемы и современного фронтенда — esbuild, TailwindCSS, HTMX, Alpine.js, React и др.

🔹Особенности:

🔘Основан на Flask с продуманной структурой расширений.

🔘File-based routing с новым форматом .jpy (Python + HTML в одном файле).

🔘ORM на sqlorm (оптимизировано под SQLite).

🔘Ассет-пайплайн на esbuild + TailwindCSS.

🔘HTMX для реактивных интерфейсов без SPA-фреймворков.

🔘Готовая система аутентификации, MFA и соцлогинов.

🔘Поддержка файлов, писем (MJML), фоновых задач, SSE и i18n.

🔘Работает как статический, гибридный или динамический сайт.

🔘Dev-среда с Docker Dev Containers и VSCode-отладкой.

🔻Проще говоря:

Hyperflask = Flask + Tailwind + HTMX + SQLORM + MFA + SSE → всё уже настроено.

⬇️Установка:
pip install hyperflask


#Python #Flask #WebDevelopment #Hyperflask #HTMX #Tailwind #FullStack #WebFramework

📱Ссылка на репозиторий:
https://github.com/hyperflask/hyperflask
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍1
📱Code Spy.

Code Spy — это инструмент для Python-разработчиков, который следит за изменениями в вашем проекте и автоматически запускает нужные проверки и задачи.

Представьте: вы сохраняете файл — а Code Spy сам запускает MyPy, Pylint, Pytest, Black или даже перезапускает dev-сервер. Вам не нужно переключаться в терминал, вручную запускать команды или следить, что что-то забыли проверить. Всё происходит автоматически.

❓Что умеет Code Spy:

🔘MyPy — проверка типов.

🔘Black — автоформатирование.

🔘Pylint — линтинг.

🔘Pytest — тесты.

🔘DevServer — перезапуск приложения (например, Flask).

🔻Дополнительные задачи (при установке соответствующих библиотек):

🔘ISort.

🔘Flake8.

🔘Bandit.

🔘Sphinx.

🔘Custom Tasks.

Вы просто указываете путь к проекту, настраиваете задачи — и Code Spy начинает «шпионить» за файлами, реагируя на любые изменения.

✅Отличный инструмент, если хотите постоянно поддерживать качество кода, не думая о рутине.

#Python #CodeSpy #Automation #DevTools #Pytest #Pylint #MyPy #Black #Flask #CodeQuality

📱Ссылка на репозиторий:
https://github.com/joegasewicz/code-spy
Please open Telegram to view this post
VIEW IN TELEGRAM
1⚡322
📱PyPI Stats.

PyPI Stats —
это лаконичный и удобный аналитический дашборд для отслеживания статистики скачиваний пакетов из репозитория PyPI (Python Package Index).

Если вы разрабатываете библиотеки на Python и хотите точно знать, как часто их скачивают (и в какую сторону движется тренд), этот инструмент на базе Flask и plotly.js наглядно визуализирует всю динамику.

🔹Основные возможности проекта:

🔘Интеграция с GitHub OAuth: Позволяет быстро связать ваш профиль и отслеживать данные по установкам именно тех пакетов, мейнтейнером которых вы являетесь. Вся статистика доступна на кастомной пользовательской странице.

🔘Удобный JSON API: Предоставляет простой программный интерфейс для получения агрегированных данных и полной истории скачиваний во времени. Отлично подходит, если вы хотите вытянуть статистику в свои скрипты или дашборды.

🛠Для разработчиков (локальный запуск):

Проект поставляется с готовой докер-оберткой, так что развернуть его для кастомизации можно буквально в пару команд:

cp .env.example .env
# Отредактируйте .env под вашу конфигурацию

make pypistats


Команда make pypistats автоматически запустит полноценное окружение для разработки с помощью docker-compose.

#Python #PyPI #Flask #Plotly #Dashboard #Analytics #DevTools #OpenSource #Docker

📱Ссылка на репозиторий:
https://github.com/psf/pypistats.org
Please open Telegram to view this post
VIEW IN TELEGRAM
3🔥3⚡2👍1
📱Fstache.

Fstache -
это быстрый движок шаблонизации Mustache для Python 3.12+, созданный без единой сторонней зависимости (dependency-free).

Инструмент разработан специально для серверной веб-разработки в стиле HTML-over-the-wire (в связке с HTMX, Alpine.js и Tailwind CSS). Когда сервер рендерит готовую HTML-разметку фрагментами или целиком, скорость шаблонизатора становится критически важной — особенно на бюджетных VPS. Fstache решает эту задачу за счет глубокой оптимизации и предварительной компиляции компонентов.

❓Почему Fstache.

🔘Высокая скорость: По результатам бенчмарков рендерит страницы в 3.1–3.5 раза быстрее, чем популярные аналоги (Chevron, mstache, Pystache).

🔘Предзагрузка и инлайнинг: Статические фрагменты (partials) загружаются и встраиваются в память заранее, полностью убирая накладные расходы при вызове во время обработки запроса.

🔘Поддержка потоковой отдачи (Streaming): Генерация возвращает чанки (iter_chunks()), что позволяет передавать готовый HTML в браузер частями через StreamingResponse в Starlette, FastAPI или Flask.

🔘Удобная работа с данными: В качестве контекста можно передавать обычные словари Python, объекты, датаклассы, списки и функции (callables).

🚀Быстрый старт:

Установка:

pip install fstache


Использование в коде:

import fstache

# Создаем рендерер для продакшена (шаблоны предзагружаются один раз)
render = fstache.create_prod_renderer("./templates")

# Рендерим страницу
result = render("pages/home.mustache", {"name": "Ада"})

# Получаем результат в виде строки или байтов
print(result.to_string())


Библиотека предоставляет готовые пресеты для разных этапов разработки:

🔘create_dev_renderer() — подхватывает изменения файлов на лету без перезапуска сервера.

🔘create_test_renderer() — строго отлавливает пропущенные переменные и шаблоны во время прогона тестов.

🔘create_prod_renderer() — обеспечивает максимальную скорость и стабильность в продакшене.

#Python #Mustache #HTMX #WebDev #Backend #FastAPI #Flask #Starlette #DevTools #OpenSource

📱Ссылка на репозиторий:
https://github.com/servletcloud/fstache
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍2🔥22
📱Citry.

Citry
- это строго типизированный фронтенд-фреймворк для Python, объединяющий серверные события и Alpine.js для создания реактивных веб-интерфейсов без необходимости вести отдельный frontend-проект на JavaScript.

Архитектура проекта вдохновлена идеями Vue и Laravel Livewire: один Python-компонент инкапсулирует HTML-разметку, стили CSS, логику браузера, серверные обработчики событий и переводы интерфейса.

🔹Главные возможности:

🔘Строгая типизация (Full Typing): Входные параметры компонентов валидируются через аннотации типов Python (Kwargs). Опечатки в свойствах или пропущенные поля отлавливаются на этапе статического анализа, а метод template_data() изолирует контекст, доступный шаблону.

🔘Реактивность без тяжелого JS-стека: Бесшовная связка с Alpine.js и серверными событиями (Server Events) позволяет обновлять части DOM-дерева на лету прямо из Python-кода без сборщиков Webpack/Vite.

🔘HTML-подобная композиция: Компоненты вкладываются друг в друга через наглядные теги <c-ComponentName>, а атрибуты с префиксом c- вычисляют Python-выражения (например, c-messages="user.inbox").

🔘Фреймворк-агностик: Легко монтируется в существующие бэкенды на FastAPI, Django, Flask, Starlette, а также в любые чистые ASGI- и WSGI-приложения.

🔘Развитая экосистема разработки:

✔️Официальное расширение для VS Code с автодополнением, диагностикой и подсветкой синтаксиса шаблонов.

✔️Встроенный CLI-анализатор (citry check --static).

✔️Библиотека готовых доступных UI-компонентов (citry-ui) — диалоги, формы, навигация и таблицы.

💻Пример компонента:
from citry import Component

class Welcome(Component):
class Kwargs:
name: str
messages: list[str]

def template_data(self, kwargs, slots):
return {
"name": kwargs.name,
"messages": kwargs.messages,
}

template = """
<section class="welcome">
<h1>С возвращением, {{ name }}!</h1>
<ul>
<li c-for="message in messages">{{ message }}</li>
<li c-empty>Новых сообщений нет.</li>
</ul>
</section>
"""

css = """
.welcome { border-top: 3px solid #2563eb; }
"""

# Рендеринг компонента в HTML-строку
html = str(Welcome(name="Алексей", messages=["Сборка завершена", "Отчет готов"]))


📦Установка:
pip install citry
# или через uv:
uv add citry


✅Фреймворк поддерживает Python от 3.10 до 3.14 и распространяется под свободной лицензией MIT.

#Citry #Python #Frontend #Fullstack #FastAPI #Django #Flask #AlpineJS #Livewire #WebDev #OpenSource #DevTools

📱Ссылка на репозиторий:
https://github.com/citry-dev/citry
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥1