Por que escolher Total.js para uma aplicação Node.js
O Total.js 5 é um framework de aplicações Node.js completo, distribuído como total5. Um só pacote dá a uma equipa rotas HTTP, validação de entrada, vistas renderizadas no servidor, autenticação, uploads, rotas WebSocket, tarefas agendadas, localização, e-mail e mais, tudo desenhado para funcionar em conjunto. Constrói a aplicação em vez de escolher, ligar e manter uma dúzia de bibliotecas soltas.
O que o seu projeto recebe
| O que o seu projeto precisa | O que o Total.js lhe dá | Veja no Forge |
|---|---|---|
| Uma aplicação de negócio interna com formulários, rotas protegidas e uploads de ficheiros | Esquemas de entrada nativos, hooks de autenticação e tratamento de uploads, prontos a usar | Validação, autenticação, uploads |
| Um painel com atualizações em direto e relatórios periódicos | Rotas WebSocket, tarefas agendadas e e-mail no mesmo framework | Exemplo de WebSocket, tarefas cron, e-mail |
| Uma equipa pequena que quer entregar e manter uma aplicação de servidor | Ficheiros carregados automaticamente e um conjunto partilhado de convenções que tornam cada projeto familiar | Estrutura do projeto, convenções |
| Uma aplicação renderizada no servidor | Vistas, layouts e localização dentro do mesmo framework | Vistas e layouts, localização |
Cada linha liga a um exemplo que o Forge executa. O No frontend, o Total.js tem o jComponent e um catálogo de centenas de componentes prontos, pelo que o mesmo ecossistema cobre também a interface; usá-los é opcional.
Porque as equipas escolhem o Total.js
Um núcleo sem dependências externas. O pacote total5 instalado não declara dependências de terceiros em tempo de execução. Não há uma cadeia de módulos escritos por autores diferentes para manter compatíveis, nem um pacote abandonado que pare a sua build, nem surpresas de uma atualização transitiva. Esta continuidade tem um efeito direto e poderoso na forma como um projeto escala e na facilidade de o manter ao longo dos anos: o que aprende e entrega hoje continua a funcionar, apoiado por um único projeto.
O quadro inclui autenticação, sessões assinadas, verificações CSRF, hashing de senhas escrípticas e validação de entrada de ação. Aplicação de Taskboard Combine-os em uma única aplicação.
Uma curva de aprendizagem rápida. O Total.js é JavaScript, com convenções que se aprendem depressa, pelo que uma equipa que ainda não o conhece não parte em desvantagem. Os repositórios do Total.js reúnem uma grande coleção de scripts, exemplos e aplicações completas com licença MIT que pode ler, reutilizar e de que pode aprender, e o Forge acrescenta receitas executadas para o resto.
Rápido e leve. O Total.js é rápido, e um só pacote sem árvore de dependências mantém-no leve: menos coisas para carregar, atualizar e auditar, o que conta sobretudo em servidores e dispositivos pequenos. O Forge mede-o em condições controladas e publica latência, CPU e memória de cada carga de trabalho, com os dados em bruto, nos benchmarks.
Comece simples: uma rota HTTP direta
Este exemplo executável valida um corpo com um esquema nativo compacto e responde diretamente a partir de um controlador: poucas linhas e nenhuma camada extra. À medida que a aplicação cresce, as ações de domínio acrescentam um contrato reutilizável e validado que pode chamar a partir de rotas, código e ferramentas.
var schema = NEWSCHEMA('ContactsInput', '*name:String');
exports.install = function() {
ROUTE('GET /health/', health);
ROUTE('POST /contacts/', create);
};
function health($) {
$.json({ ok: true });
}
function create($) {
var result = schema.transform($.body);
if (result.error) {
$.response.status = 400;
$.json({ error: 'invalid' });
return;
}
$.response.status = 201;
$.json({ name: result.response.name });
}Fontes
Forge combina suas reivindicações com coisas que você pode executar. As diretrizes Total.js descrevem o estilo de codificação do ecossistema, Total.js AI Context fornece orientação de implementação e o manifesto de fonte registra as revisões revisadas. Se um guia e a estrutura instalada diferirem, a fonte instalada será a referência.