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

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

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

Rio - это простой в использовании фреймворк для создания сайтов и приложений, полностью основанный на Python.

С Rio вам не потребуется ни одной строки HTML, CSS или JavaScript, чтобы создать красивые и современные приложения.

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

✅Современный декларативный UI-фреймворк.

✅100% Python - никакого HTML, CSS или JavaScript.

✅Более 50 встроенных компонентов для общих элементов интерфейса, таких как rio.Switch, rio.Button, rio.Text и др.

✅Приложения могут работать как локально, так и в Интернете.

✅Встроенные инструменты для разработчиков.

✅Открытый исходный код и бесплатное использование навсегда.

📱Ссылка на репозиторий:
https://github.com/rio-labs/rio

#Python #Разработка #WebDevelopment #Фреймворк #Программирование #RioFramework
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍2⚡1
📱WeasyPrint.

WeasyPrint - это умное решение, помогающее веб-разработчикам создавать PDF-документы. Оно превращает простые HTML-страницы в красивые статистические отчеты, счета, билеты и многое другое.

С технической точки зрения, WeasyPrint - это визуальный рендеринг-движок для HTML и CSS, который может экспортировать документы в формат PDF. Он нацелен на поддержку веб-стандартов для печати.

❗️WeasyPrint - это бесплатное программное обеспечение, доступное по лицензии BSD.

📄WeasyPrint - отличный инструмент для создания профессиональных PDF-документов из HTML!

📱Ссылка на репозиторий:
https://github.com/Kozea/WeasyPrint

#WeasyPrint #Python #PDF #HTML #CSS #WebDevelopment #Программирование #ВебРазработка #OpenSource
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥3
📱Jake — это инструмент, который позволяет легко создать ваш собственный сайт-одностраничник и развернуть его в вашем аккаунте GitHub.

❓Как использовать?

🔜Создание репозитория.
Чтобы начать, выполните следующие шаги для создания нового репозитория, используя этот шаблон:

✅Создайте новый репозиторий.
✅Выберите имя для вашего репозитория. Если вы хотите, чтобы ваш сайт размещался по адресу <yourusername>.github.io, назовите ваш репозиторий <yourusername>.github.io. В качестве альтернативы, вы можете выбрать любое другое имя, например, that-other-name, что приведет к размещению вашего сайта по адресу <yourusername>.github.io/that-other-name/.

🔜Включение GitHub Pages.
После создания репозитория, вам нужно включить GitHub Pages. Следуйте этим шагам:

✅Перейдите на вкладку Settings вашего репозитория.
Перейдите в раздел Pages.
✅Выберите GitHub Actions в качестве источника для ваших GitHub Pages.
✅Нажмите Save для применения изменений.

🔜Добавление данных.
Чтобы настроить ваш сайт, выполните следующие шаги:

✅Откройте ваш репозиторий в предпочитаемом текстовом редакторе.
✅Найдите файл data.toml и обновите его информацией о вас.

✅Это все, что вам нужно сделать. Теперь вы можете расслабиться и наблюдать, как ваш сайт разворачивается.

🔗После завершения развертывания, вы можете получить доступ к вашему новому сайту-одностраничнику по адресу <yourusername>.github.io (если вы выбрали <yourusername>.github.io в качестве имени репозитория) или <yourusername>.github.io/repo-name/.

#GitHub #Jake #OneLinkWebsite #WebDevelopment #GitHubPages #Coding #Programming #TechTips #DevTools #WebsiteCreation

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

FastHTML
- это новый веб-фреймворк следующего поколения для создания быстрых, масштабируемых веб-приложений с минимальным и компактным кодом.

🧩Он разработан, чтобы быть:

🔘Мощным и выразительным, чтобы создавать самые продвинутые, интерактивные веб-приложения, которые вы можете себе представить.

🔘Быстрым и легковесным, чтобы вы могли писать меньше кода и успевать больше.

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

✅Приложения FastHTML - это просто код на Python, поэтому вы можете использовать FastHTML со всей мощью языка Python и его экосистемы.

✅Функциональность FastHTML полностью соответствует HTML и HTTP, но позволяет инкапсулировать их с использованием лучших практик разработки программного обеспечения. Поэтому вам необходимо понять эти основы для полного использования этой библиотеки. Чтобы понять, как и почему это работает, пожалуйста, прочитайте это: about.fastht.ml.

#FastHTML #Python #WebDevelopment #WebFramework #Программирование #РазработкаВебПриложений #ВебРазработка #НовыйФреймворк #ИнтерактивныеПриложения #Масштабируемость

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

httpdbg — это инструмент для разработчиков, который позволяет легко отлаживать HTTP(S) клиентские запросы в программе на Python.

🌐Чтобы использовать его, запустите ваш скрипт с помощью команды pyhttpdbg вместо python, и всё готово. Откройте браузер и перейдите на http://localhost:4909, чтобы просмотреть запросы.

#Python #Debugging #HTTP #PythonDev #httpdbg #WebDevelopment

📱Ссылка на репозиторий:
https://github.com/cle-b/httpdbg
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡44🔥2
📱Djade.

Djade — это инструмент командной строки для форматирования синтаксиса Django шаблонов в соответствии с официальным стилем.

🔹Djade не форматирует HTML или другие языки шаблонов, но переписывает файлы на месте. Просто передайте список файлов шаблонов для форматирования:
$ djade --target-version 5.1 templates/**/*.html


❗️Этот инструмент невероятно быстрый, поскольку написан на Rust: форматирование 377 шаблонов заняло всего 20 мс!

#Django #DjangoTemplates #WebDevelopment #RustLang #CodeFormatting #Backend #ProgrammingTools #WebApps #CommandLineTool

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

OpenFreeMap — это бесплатный сервис для отображения кастомных карт на ваших сайтах и в приложениях.

✅Вы можете либо развернуть его на своем сервере, либо воспользоваться нашим публичным экземпляром. Все полностью open-source.

✅Использование нашего публичного сервера абсолютно бесплатно: никаких ограничений на количество просмотров карт или запросов. Нет регистрации, базы пользователей, API-ключей или файлов cookie. Мы покрываем расходы на поддержание публичного сервера за счет пожертвований.

❗️Также мы предоставляем еженедельные загрузки всей планеты в форматах Btrfs и MBTiles.

#OpenFreeMap #OpenSource #OpenStreetMap #Maps #FreeMaps #WebDevelopment #SelfHost #MBTiles #Btrfs #NoLimits

📱Ссылка на репозиторий:
https://github.com/hyperknot/openfreemap
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍42
📱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
📱Django-removals.

django-removals — это пакет, который помогает разработчикам находить и устранять удалённые/неподдерживаемые функции в Django проектах.

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

🔘Вывод предупреждений системы проверки Django для всех известных удалений функций.

🔘Поддержка проверки через:

✔️Django development server:
python manage.py runserver  


✔️Ручная проверка:
python manage.py check --deploy  


🔘Основной фокус на проверке настроек Django, с возможностью добавления дополнительных проверок в будущем.

#Django #Python #WebDevelopment #DjangoRemovals #DjangoUpgrade

📱Ссылка на репозиторий:
https://github.com/ambient-innovation/django-removals/
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍3🔥1
📱Python Hiccup.

Python Hiccup — это библиотека для представления HTML с использованием простых структур данных Python.

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

🔘Используйте списки и кортежи для представления HTML-элементов.

🔘Определяйте атрибуты с помощью словарей.

🔘Идеально подходит для серверной генерации HTML или работы с PyScript.

🔹Пример использования:

С помощью Python Hiccup можно создавать HTML в программном стиле.
from python_hiccup.html import render  

render(["div", "Hello world!"])


Вывод:
<div>Hello world!</div>  


🔹Более сложный пример:

Создаем HTML-список:
<ul>  
<li>one</li>
<li>two</li>
<li>three</li>
</ul>


Код Python:
def todo(data: list) -> list:  
return [["li", i] for i in data]

data = todo(["one", "two", "three"])
render(["ul", data])


❓Зачем использовать Python Hiccup?

Этот инструмент позволяет писать HTML-код в более гибком, динамическом стиле, интегрируя его в ваш Python-проект.

#Python #HTML #Hiccup #WebDevelopment #PyScript

📱Ссылка на репозиторий:
https://github.com/DavidVujic/python-hiccup
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍3
📱BlackSheep.

BlackSheep
— это асинхронный веб-фреймворк для создания событийных веб-приложений на Python. Он вдохновлён Flask, ASP.NET Core и работами Юрия Селиванова.

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

🔘Асинхронность: Построен на Python async/await для высокой производительности.

🔘Простота и гибкость: Интуитивно понятный синтаксис, вдохновлённый Flask.

🔘CLI для быстрого старта: Инструмент командной строки для быстрого создания новых проектов.

🔻Пример кода:
from datetime import datetime  
from blacksheep import Application, get

app = Application()

@get("/")
async def home():
return f"Hello, World! {datetime.utcnow().isoformat()}"


💻CLI для быстрого старта:

BlackSheep предоставляет CLI для быстрого создания проектов.

#Python #WebDevelopment #Async #BlackSheep #Разработка #ВебФреймворк

📱Ссылка на репозиторий:
https://github.com/Neoteroi/BlackSheep
Please open Telegram to view this post
VIEW IN TELEGRAM
1⚡3👍2
📱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
📱Spoof.

Spoof —
это минималистичный и гибкий HTTP-сервер для Python, разработанный специально для изоляции и тестирования сетевого взаимодействия без боли.

Если вам когда-нибудь требовалось переписать клиентскую библиотеку, проверить её поведение в боевых условиях или полноценно замокать сторонний API на реальных сетевых сокетах (а не просто подменить методы в коде), Spoof станет идеальным решением.

🔹Главные фичи инструмента:

🔘Батарейки в комплекте: Написан на базе стандартного модуля http.server, не имеет внешних зависимостей и работает на Python 3.10–3.14.

🔘Динамическая очередь ответов: В отличие от классических серверов, где роуты прописываются заранее, Spoof принимает любые запросы. Он выдает ответы из настроенной FIFO-очереди (.responses) или возвращает .defaultResponse. По умолчанию, если очередь пуста, он честно отдаст 503 Service Unavailable.

🔘Живой лог запросов: Каждый чих со стороны клиента записывается в историю .requests. После тестов можно легко проверить, какие методы, заголовки, query-параметры или JSON-тела прилетали на сервер.

🔘Постквантовая криптография: Из коробки поддерживает SSL/TLS с самоподписанными сертификатами, а если в системе установлен OpenSSL 3.5+, вы можете тестировать соединения с использованием постквантовых алгоритмов (PQC)!

🔘Проксирование и IPv6: Поддерживает прокси-туннелирование через обработку CONNECT-запросов, а также умеет слушать исключительно IPv6-сокеты через класс spoof.http6.

🔘Интерактивный дебаг: Вы можете передать в качестве ответа функцию-колбэк с обычным breakpoint(). При отправке запроса выполнение встанет на паузу, и вы сможете изучить объект request прямо в консоли через Pdb.

❓Как это выглядит в тестах:

import requests
import spoof

# Поднимаем сервер в контекстном менеджере
with spoof.http() as http:
# Задаем цепочку ответов
http.responses.extend([
[200, [("Content-Type", "application/json")], b'{"id": 1111}'],
[200, [("Content-Type", "application/json")], b'{"id": 2222}'],
])
http.defaultResponse = [404, [], "Not found"]

# Проверяем поведение клиента
assert requests.get(http.url + "/users").json() == {"id": 1111}
assert requests.get(http.url + "/posts").json() == {"id": 2222}
assert requests.get(http.url + "/unknown").status_code == 404

# Проверяем историю логов сервера
assert [r.path for r in http.requests] == ["/users", "/posts", "/unknown"]


🔧Установка:

pip install spoof


#Python #Testing #QA #Backend #Mock #HTTPServer #DevTools #OpenSource #WebDevelopment

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

Mitti
- это экспериментальный Python ASGI-фреймворк, объединяющий конкурентное и параллельное выполнение кода под капотом привычной синхронной модели программирования.

Вместо того чтобы заставлять разработчика разбираться с «цветными функциями», async/await и нюансами asyncio, Mitti оставляет код приложения обычным синхронным Python. Фреймворк сам берет на себя управление рантаймом: он распределяет вызовы конкурентно на стандартных сборках с GIL и запускает их в настоящем многопоточном параллелизме на free-threaded сборках Python (no-GIL / PEP 703).

🔹Ключевые особенности:

🔘Синхронный код без бойлерплейта: Вы пишете стандартные синхронные функции (def), а среда Mitti берет на себя планирование и эффективное исполнение потоков.

🔘Готовность к Python 3.13+ (Free-threaded): Спроектирован с прицелом на отказ от GIL. На no-GIL интерпретаторах код масштабируется по процессорным ядрам без межпроцессного оверхеда, а на стандартном Python работает через пул потоков в режиме обратной совместимости.

🔘Стандарт ASGI 3: Приложение легко разворачивается под современными ASGI-серверами (например, Uvicorn).

🔘Современный стек: Включает роутинг, типизированные path- и query-параметры, внедрение зависимостей (Dependency Injection), базовую валидацию, middleware, обработку событий жизненного цикла (lifespan) и сериализацию в JSON.

💻Пример кода:

from mitti import App

app = App()

# Обычная синхронная функция, готовая к параллельному исполнению
@app.get("/users/{user_id}")
def get_user(user_id: int):
return users.get(user_id)


❗️Статус проекта: Ранняя альфа (Early alpha). Для работы требуется Python 3.13+, в идеале — в сборке без GIL (free-threaded Python).

#Python #ASGI #Mitti #NoGIL #FreeThreaded #Concurrency #Multithreading #Backend #WebDevelopment #OpenSource

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