Documentação
Sumário
- Migration : Como migrar do Temma 1.x para a versão 2
- Installation : Baixe o Temma e instale-o para iniciar seu projeto Web
- Atualização : Mantenha o Temma atualizado em seus projetos Web
- Configuration : Todas as diretivas de configuração do arquivo temma.php
- Bibliotecas externas : Como usar bibliotecas de funções externas
- Roteamento : O sistema de roteamento padrão do Temma, e o roteamento avançado
-
Log :
Uso do sistema de log, gerenciamento por níveis de criticidade
- Gerenciadores de log : Como criar seus próprios log managers
- Syslog : Para enviar seus logs a um servidor Syslog
- Datadog : Para enviar seus logs ao serviço Datadog
- Controladores : Partes essenciais da sua aplicação Web
- Visões : Templates Smarty ou exportações em JSON/CSV/RSS/iCal/INI
- Objetos internos : Os objetos internos do Temma (Config, Request, Response, Session)
- Injeção de dependências : A espinha dorsal do desenvolvimento das suas aplicações
- Sessions : Extensão das sessões de usuário gerenciadas pelo PHP
-
Fontes de dados :
Para gerenciar o acesso a dados de forma unificada
- SQL : Acesso a bancos de dados relacionais
- Memcache : Acesso a servidores Memcached
- Redis : Acesso a servidores Redis
- File : Acesso ao armazenamento de arquivos locais
- S3 : Acesso ao armazenamento Amazon S3
- Socket : Comunicação de rede
- ZeroMQ : Comunicação de rede usando a biblioteca ZeroMQ
- SQS : Acesso às filas de mensagens Amazon SQS
- Beanstalk : Acesso a servidores de fila de mensagens Beanstalkd
- Smsmode : Para enviar mensagens de texto para telefones celulares
- Slack : Para enviar notificações no Slack
- Discord : Para enviar mensagens no Discord
- Google Chat : Para enviar mensagens no Google Chat
- Telegram : Para enviar mensagens no Telegram
- Pushover : Para enviar notificações push para celulares
- SMTP : Para enviar e-mails por meio de um relay SMTP
- AI : Para consultar modelos de linguagem (LLM)
- OpenAI : Para consultar os modelos de linguagem da OpenAI
-
Modelo :
Como usar os DAOs para acessar bancos de dados
- DAO genéricos : Objetos DAO simples, para acessar facilmente uma tabela
- DAO personalizados : Objetos personalizados, para encapsular consultas complexas
- Fluxo de execução : Como gerenciar o fluxo de execução, entre os plugins e o controlador
- Plugins : Como usar plugins, e escrever os seus próprios para modularizar seu código
- Atributos : Como filtrar o acesso a controladores e ações
- Tests : Para escrever testes de integração automatizados.
- Interface de linha de comando : Para criar scripts executáveis na linha de comando, inicializados automaticamente pelo Temma
- Eventos enviados pelo servidor : Para enviar eventos em tempo real do servidor para o cliente
- Processamento assíncrono : Para realizar processamentos separadamente da requisição principal
- Skills de IA : Skills para agentes de codificação com IA
- Segurança : Boas práticas de segurança em uma aplicação Temma
- Autenticação de usuários : Como gerenciar a autenticação de usuários
- Validação de dados : Como validar dados de entrada e saída
-
Helpers :
Objetos oferecidos pelo Temma para ajudá-lo em diversas situações
- Scripts de linha de comando
-
Controlador + plugin
- Auth : Controlador e plugin para gerenciar a autenticação dos usuários
-
Plugins
- Api : Para gerenciar o acesso a uma API
- Cache : Para armazenar em cache as páginas HTML geradas
- Debug : Para facilitar a depuração de projetos Temma
- KebabCaseUrl : Para gerenciar URLs no formato kebab case
- Idioma : Gerenciamento da localização multilíngue
-
Atributos
- Auth : Para restringir o acesso a usuários autenticados
- Check : Para validar dados de entrada (parâmetros GET/POST, payload, arquivos).
- View : Para gerenciar a visão de controladores e ações
- Template : Para definir o caminho do arquivo de template
- Method : Para gerenciar os métodos HTTP autorizados
- Referer : Para filtrar o acesso pelo cabeçalho HTTP REFERER
- Redirect : Para redirecionar requisições automaticamente
-
Plugins Smarty
- dump : Modificador e tag de bloco para exibir dados
- urlize : Modificador que transforma um texto em URL
- filenamize : Modificador que transforma um texto em nome de arquivo
- nbsp : Modificador que transforma espaços em espaços não separáveis
-
Objetos utilitários
- ANSI : Para formatar textos escritos na saída padrão
- BaseConvert : Para fazer conversões de bases numéricas
- DataFilter : Para filtrar e validar dados
- Dumper : Para exibir dados
- Email : Para enviar e-mails
- ExtendedArray : Operações adicionais em arrays
- File : Operações adicionais em arquivos
- HTMLCleaner : Para limpar um fluxo HTML proveniente de um editor WYSIWYG
- Serializer : Para serializar/desserializar dados
- Lock : Para bloquear o acesso a um arquivo, ou a execução do script PHP atual
- Misc : Funcionalidades diversas.
- Registry : Para armazenar corretamente variáveis globais
- Smarty : Para processar templates Smarty fora da visão
- Term : Gerenciamento de terminais (TTY)
- Text : Diversos tratamentos em strings de caracteres
- Timer : Para gerenciar cronômetros
Componentes
Migração
As principais diferenças entre o Temma 1.x e a versão 2
Instalação
A instalação do Temma é muito simples
Configuração
A configuração do Temma se baseia em um arquivo PHP e, opcionalmente, em variáveis de ambiente
Bibliotecas externas
Integre facilmente bibliotecas externas aos seus projetos
Roteamento
O sistema de roteamento do Temma é propositalmente muito simples por padrão, mas pode ser estendido
Log
A escrita nos arquivos de log é feita de forma simples e expressiva, facilitando a depuração
Controladores
Os controladores do Temma são simples de criar e manipular, e podem ser facilmente estendidos
Visões
Templates Smarty por padrão, mas também exportações JSON, CSV, RSS, iCal, INI
Injeção de dependências
Este componente é a espinha dorsal dos seus desenvolvimentos de aplicação
Sessões
Armazene dados de uma sessão de usuário, para passar a um funcionamento com estado
Fontes de dados
Acesso unificado a diferentes fontes de dados (SQL, Redis, Memcache, arquivos, S3, SQS, Beanstalkd…)
Modelo
O acesso aos bancos de dados é feito usando o padrão DAO, com ou sem cache
Fluxo de execução
O Temma usa um sistema de plugins fácil de manipular para gerenciar a execução das requisições
Plugins
Modifique o comportamento da sua aplicação usando plugins pré- ou pós-controlador
Atributos
Proteja ou modifique o acesso aos controladores e às ações usando atributos PHP
Testes
Escreva scripts de teste automatizados
Interface de linha de comando
Execute facilmente scripts em linha de comando, inicializados pelo Temma
Eventos enviados pelo servidor
Para enviar eventos em tempo real do servidor para o cliente
Segurança
As boas práticas para proteger suas aplicações Temma
Autenticação de usuários
Implemente uma autenticação sem senha e um controle de acesso por papéis
Validação de dados
Valide os dados de entrada e saída usando contratos
Inteligência artificial
Consulte modelos de linguagem (LLMs) de diversos provedores através de uma única interface
Helpers
O Temma oferece vários objetos para facilitar diversos processamentos