Uma engine de jogos para Flutter, com loop de jogo, sistema de componentes, detecção de colisões, efeitos e gerenciamento de entrada para jogos 2D.
felangel/bloc
Biblioteca de gerenciamento de estado para Dart que implementa o padrão BLoC para separar a apresentação da lógica de negócios, usada principalmente com Flutter e AngularDart.
- Estrelas
- 12,483
- Forks
- 3,414
- Issues abertas
- 83
- Último commit
- ontem
O que é?
Bloc é uma biblioteca previsível de gerenciamento de estado para Dart que implementa o padrão de projeto BLoC (Business Logic Component). Seu objetivo é separar a apresentação da lógica de negócios, facilitando os testes e o reuso do código.
O repositório é um monorepo com vários pacotes. O pacote principal bloc fornece as classes Bloc e Cubit; flutter_bloc oferece widgets Flutter para conectar blocs à UI; e hydrated_bloc persiste o estado entre reinicializações do app. Outros pacotes adicionam transformers para concorrência de eventos (bloc_concurrency), auxiliares para testes unitários (bloc_test), um conjunto de regras de lint (bloc_lint) e replay_bloc, para históricos no estilo desfazer e refazer. angular_bloc é voltado a apps AngularDart.
O projeto é mantido por Felix Angelov e está documentado em bloclibrary.dev, que inclui tutoriais e um guia de migração.
Recursos principais
- 01Fornece as classes Bloc e Cubit para gerenciar o estado em código Dart.
- 02Inclui widgets do flutter_bloc para conectar o estado à UI do Flutter.
- 03Oferece hydrated_bloc para persistir o estado entre inicializações do app.
- 04Fornece auxiliares do bloc_test para testes unitários de blocs.
- 05Inclui transformers do bloc_concurrency para controlar o processamento de eventos.
Casos de uso
- Estruturar o gerenciamento de estado em um app Flutter para manter os widgets da UI livres da lógica de negócios.
- Escrever testes unitários para a lógica da aplicação, independente da UI.
- Manter o estado do app entre reinicializações com hydrated_bloc.
- Compartilhar a lógica de negócios em Dart entre um app Flutter e um app web AngularDart.
Antes de usar
- Seu uso está vinculado ao ecossistema Dart, principalmente ao Flutter e ao AngularDart.
Tópicos
Perguntas frequentes
- O que é bloc?
- Biblioteca de gerenciamento de estado para Dart que implementa o padrão BLoC para separar a apresentação da lógica de negócios, usada principalmente com Flutter e AngularDart. Bloc é uma biblioteca previsível de gerenciamento de estado para Dart que implementa o padrão de projeto BLoC (Business Logic Component). Seu objetivo é separar a apresentação da lógica de negócios, facilitando os testes e o reuso do código.
- bloc é gratuito? Qual é a licença?
- bloc é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- bloc ainda é mantido?
- Manutenção ativa. O último commit de bloc foi em 20 de out. de 2026.
- Para que posso usar bloc?
- Estruturar o gerenciamento de estado em um app Flutter para manter os widgets da UI livres da lógica de negócios. Escrever testes unitários para a lógica da aplicação, independente da UI. Manter o estado do app entre reinicializações com hydrated_bloc. Compartilhar a lógica de negócios em Dart entre um app Flutter e um app web AngularDart.
- Onde consigo bloc?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/felangel/bloc
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Aplicativo de desktop remoto open source, escrito em Rust e auto-hospedável, como alternativa ao TeamViewer.
App gratuito e de código aberto para enviar arquivos e mensagens a dispositivos próximos pela rede local, sem internet nem servidores de terceiros.
Lista selecionada de bibliotecas, plugins, tutoriais, artigos e apps de exemplo para Flutter, organizada por tópico.
Conjunto de plugins para Flutter que permite usar serviços do Firebase, como Auth, Firestore, Messaging e Analytics, em apps Flutter.
Leitor de e-books multiplataforma feito com Flutter, compatível com EPUB, MOBI, AZW3, FB2, TXT e PDF, com ferramentas de leitura assistidas por IA.