TeqFW Platform Philosophy
Publication date: 2025-03-15Tequila Framework (TeqFW) Philosophy is my personal approach to organizing web application development. I, Alex Gusev, have formed it based on my own experience focused on modular monoliths with a single database. This document describes precisely this context and does not claim universality.
Some ideas may be useful more broadly, but certain principles may be inappropriate or even harmful outside the monolithic architecture framework. This is important to consider when interpreting the material.
The document forms a cognitive context for both people and language models (LLMs). It covers practical aspects of web development and more general architectural topics: reducing excessive complexity, structural integrity, and adaptability to changes.
Tequila Framework (TeqFW) is not a finished product, but an experimental platform built according to the described principles. It demonstrates their practical feasibility, is already used in development, and continues to evolve.
Key TeqFW Principles
- Single development language: JavaScript (ES6+) on both client and server. This reduces duplication and cognitive load.
- Late binding: dynamic dependency management through object containers and ES6 namespaces.
- Evolutionary resilience: designing code with changes in mind without modifying existing components.
- Functional code separation: isolation of DTOs and logic handlers.
- Namespaces: for all entity types: packages, modules, tables, CLI, and configurations.
- Pure JavaScript without compilation: no TypeScript, no transpilation, with JSDoc support.
- LLM adaptation: code and documentation are structured for easy analysis and enhancement by language models.
Detailed Principles
Single Development Language
ES6+ is used everywhere, simplifying team learning and collaboration. JS is the only high-level language in browsers, and with Node.js it became a server standard. This enables isomorphic code and logic reuse.
Late Binding
Dependencies are resolved at runtime rather than through hard imports. This reduces module coupling and simplifies component extension, replacement, and testing.
Evolutionary Resilience
Code is designed with inevitable changes in mind. Key techniques:
- argument destructuring and ignoring unknown fields in DTOs;
- clear interaction contracts separated from implementation;
- using abstractions instead of hard links.
Functional Code Separation
Code is divided into DTOs and handlers. The latter don't store state and can be singletons. Handlers are independent of data structure, with side effects minimized.
Namespaces
Each entity operates in its own namespace: modules, files, tables, API, configurations. This prevents conflicts, establishes hierarchy, and makes the project predictable.
Pure JavaScript Without Compilation
TeqFW uses modern JS without builds. This speeds up debugging, simplifies maintenance, and eases third-party library integration. JSDoc annotations are used for code navigation.
LLM Adaptation
The project is structured for LLM analysis:
- predictable file structure;
- unified patterns and repeatable structure;
- controlled nesting depth;
- JSDoc comments and standardized notations.
Models can analyze, enhance, comment, and generate code according to project standards, reducing routine work and accelerating development.
Conclusion
The described principles form an approach to creating modular monoliths focused on predictability, structure, and flexibility. These ideas don't require complex theoretical foundations and allow focusing on code rather than infrastructure.
Tequila Framework (TeqFW) illustrates them in practice. The platform is evolving and can serve as a foundation both for custom tools and for rethinking classical code organization methods.