Об этом проекте

Falcon — это минималистичный ASGI/WSGI-фреймворк для создания критически важных REST API и микросервисов, с акцентом на надежность, корректность и производительность в масштабе. Он использует HTTP и REST-архитектуру, избегая ненужных зависимостей и абстракций. Приложения Falcon работают с любым WSGI или ASGI-сервером и запускаются на CPython 3.9+ и PyPy 3.9+. Ключевые особенности включают: - Поддержка ASGI, WSGI и WebSocket - Встроенная поддержка asyncio - Отсутствие зависимости от магических глобальных переменных для маршрутизации и управления состоянием - Стабильные интерфейсы с акцентом на обратную совместимость - Простое моделирование API через централизованную REST-маршрутизацию - Высокооптимизированная, расширяемая кодовая база - Легкий доступ к заголовкам и телам через классы запросов и ответов - DRY-обработка запросов через компоненты промежуточного ПО и хуки - Строгое соблюдение RFC - Идиоматические HTTP-ответы об ошибках - Простая обработка исключений - Быстрое тестирование с помощью WSGI/ASGI-хелперов и моков Falcon разработан так, чтобы быть надежным (без зависимостей вне стандартной библиотеки, 100% покрытие тестами), отлаживаемым (избегает магии, необработанные исключения никогда не маскируются), быстрым (значительно быстрее Django и Flask, может компилироваться с Cython) и гибким (оставляет детали реализации разработчику). README включает инструкции по установке через pip, примеры для WSGI и ASGI-приложений, а также более сложный пример, демонстрирующий заголовки, параметры запроса, обработку ошибок, промежуточное ПО и хуки. Также перечислены организации, использующие Falcon, включая OpenStack, Rackspace и Opera Software, и приведены ссылки на документацию, ресурсы сообщества и варианты поддержки.