Repolode
Kludex

Kludex/starlette

Um framework ASGI leve e um toolkit para criar serviços web assíncronos e APIs em Python.

Estrelas
12,676
Forks
1,383
Issues abertas
46
Último commit
anteontem

O que é?

Starlette é um framework ASGI leve e um toolkit para criar serviços web assíncronos em Python. Ele oferece roteamento, suporte a HTTP e WebSocket, tarefas em segundo plano, eventos de inicialização e encerramento, além de middlewares como CORS, GZip e sessões. Os componentes podem ser usados separadamente ou juntos, como um framework completo.

Starlette exige apenas o anyio como dependência obrigatória; outros recursos, como o cliente de testes, templates Jinja2, análise de formulários e sessões, são instalados como extras opcionais. Ele roda em um servidor ASGI, como o uvicorn, e é compatível com os backends asyncio e trio.

Como seus componentes seguem a interface ASGI, middlewares e aplicações que podem ser montadas podem, em princípio, ser compartilhados com outros frameworks ASGI.

Recursos principais

  • 01Roteamento HTTP leve e tratamento de requisições e respostas.
  • 02Suporte a WebSocket.
  • 03Tarefas em segundo plano no mesmo processo e eventos de inicialização/encerramento.
  • 04Middlewares integrados para CORS, GZip, arquivos estáticos e sessões/cookies.
  • 05Cliente de testes baseado em httpx2.
  • 06Compatível com os backends asyncio e trio.

Casos de uso

  • Criar APIs JSON assíncronas ou serviços web em Python.
  • Adicionar endpoints WebSocket a um backend Python.
  • Usar componentes ASGI individuais, como middlewares ou respostas, em uma stack personalizada.

Início rápido

  1. 1

    Instale o Starlette

    pip install starlette
  2. 2

    Instale um servidor ASGI, como o uvicorn

    pip install uvicorn
  3. 3

    Salve o exemplo como main.py e execute-o com o Uvicorn

    uvicorn main:app

Antes de usar

  • O Starlette é um kit de ferramentas, então você precisa configurar seu próprio servidor e as dependências opcionais necessárias.
  • Alguns recursos precisam de pacotes adicionais, como jinja2 ou python-multipart.

Tópicos

Perguntas frequentes

O que é starlette?
Um framework ASGI leve e um toolkit para criar serviços web assíncronos e APIs em Python. Starlette é um framework ASGI leve e um toolkit para criar serviços web assíncronos em Python. Ele oferece roteamento, suporte a HTTP e WebSocket, tarefas em segundo plano, eventos de inicialização e encerramento, além de middlewares como CORS, GZip e sessões. Os componentes podem ser usados separadamente ou juntos, como um framework completo.
starlette é gratuito? Qual é a licença?
starlette é open source sob a licença BSD-3-Clause. Confira os termos da licença antes de usá-lo em produtos comerciais.
starlette ainda é mantido?
Manutenção ativa. O último commit de starlette foi em 18 de out. de 2026.
Para que posso usar starlette?
Criar APIs JSON assíncronas ou serviços web em Python. Adicionar endpoints WebSocket a um backend Python. Usar componentes ASGI individuais, como middlewares ou respostas, em uma stack personalizada.
Como instalar starlette?
Instale o Starlette: pip install starlette Instale um servidor ASGI, como o uvicorn: pip install uvicorn Salve o exemplo como main.py e execute-o com o Uvicorn: uvicorn main:app
Onde consigo starlette?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/Kludex/starlette

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados