Total.js v5 is a full-stack, server-side MVC framework for Node.js, written entirely in pure JavaScript. It is designed to build web, desktop, service, and IoT applications, providing a comprehensive, dependency-free ecosystem (excluding specific database connectors). The current stable version on npm is 0.0.15 (as of late 2025), representing the fifth major iteration of the Total.js platform. Initially released in beta around November 2023, it was declared 'almost stable' by January 2024. Total.js differentiates itself by embracing a 'pure JavaScript' philosophy, explicitly discouraging TypeScript usage, and integrating core functionalities like a web server, robust routing, an embedded NoSQL database (TextDB), WebSockets, and cron job management directly into the framework. It targets Node.js version 19 or higher, aiming for high performance and minimal external tooling.
npm install total5Verified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates how to set up a basic Total.js v5 web server with a 'Hello world' GET route and a simple WebSocket chat endpoint.
Rewrite route handlers to utilize methods and properties available directly on the `$` controller instance. Refer to `$` documentation for updated API.
Migrate session logic to use `AUTH()` for authentication-related sessions or implement a custom session solution as needed.
Replace all instances of `PREF` with `MEMORIZE(name)` to access or store persistent application data.
Update schema definitions to use `schema.action()` for all operations, migrating existing `schema.define()` calls.
Adhere to the pure JavaScript development model, or consider alternative frameworks if TypeScript is a strict requirement for your project.
Ensure your development and production environments are running Node.js v19 or a newer compatible version.
Be prepared to explore examples, join the Total.js Telegram chat, or refer to previous version documentation when current v5 docs are lacking.
Ensure `require('total5');` is at the top of your main application file (e.g., `index.js`) before any `ROUTE` or other global Total.js functions are called. Then run with `node index.js`.Refactor your code to use the new controller API. For example, use `$.body` for POST/PUT body data, `$.query` for query parameters, or specific helper methods provided by the `$` instance.
Update your Node.js environment to version 19 or later. You can use tools like NVM (Node Version Manager) to manage multiple Node.js versions.
No dependency data recorded yet.