# Štýl kódu Total.js: názvy, súbory, CSS, SQL a komponenty

> Konvencie komunity Total.js pre JavaScript, názvy, schémy, require(), CSS, pluginy a komponenty jComponent, skripty SQL a priečinky, aby sa všetky projekty čítali rovnako a tím alebo AI asistent v nich mohol pokračovať.

Framework: total5
Product: Total.js 5 (total5@0.0.19)
Language: sk
Content-SHA256: 9a9fa367b1217df18310395232525570c24d3f9496d9be953d41107e4f221304
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: total5-installed@total5@0.0.19
Review: not-recorded

Projekty Total.js majú spoločný štýl a to je ich sila: otvoríte ktorýkoľvek a viete, kde čo je a ako je napísané. Táto stránka zhromažďuje na jednom mieste konvencie z [Total.js guidelines](https://github.com/totaljs-es/guidelines) (preskúmaná revízia je zaznamenaná v [ai-sources.json](/ai-sources.json)). Najprv sa riaďte štýlom projektu, v ktorom pracujete; toto sú predvolené pravidlá pre nový kód. Pre stránku frameworku si prečítajte [konvencie Total.js 5 pre asistentov pri kódovaní](/en/docs/totaljs-agent-conventions/).

## JavaScript

- **Súbory:** malé písmená, s pomlčkami namiesto podčiarkovníkov (`user-profile.js`).
- **Formát:** tabulátory (šírka 4), žiadne zbytočné medzery a bodkočiarka na konci každého príkazu.
- **Reťazce:** jednoduché úvodzovky pre krátke reťazce.
- **Premenné:** v metódach používajte `var` alebo `let` a `const` si nechajte pre vrch modulu.
- **Cykly:** ak sa hodí, uprednostňuje sa klasický cyklus `for` pred `forEach()`.
- **Závislosti:** držte ich na minime a riaďte sa kódom, ktorý tam už je.

## Názvy, ktoré putujú medzi projektmi

Používajte všade rovnaký názov pre tú istú vec, aby sa kód dal presúvať medzi projektmi a čítať na prvý pohľad:

| Názov | Použitie |
|---|---|
| `id`, `name`, `value`, `email` | obvyklý identifikátor, meno, hodnota a e-mail |
| `items` or `arr`, `item` | zoznam a jeden jeho prvok |
| `tmp` | dočasná hodnota |
| `dtcreated`, `dtupdated` | dátumy vytvorenia a aktualizácie |

**Schémy** majú názov v množnom čísle začínajúci veľkým písmenom (`Contacts`) a identifikátory sa vytvárajú cez `UID()`.

## Použitie require()

Na vrchu modulu použite `const` a názov premennej začnite veľkým písmenom: `const Fs = require('fs');`.

## CSS

- Názvy súborov malými písmenami s pomlčkami.
- Každé pravidlo štýlu píšte na jeden riadok.
- Predpony prehliadačov nepíšte ručne: pridajte komentár `/*auto*/` a Total.js predpony doplní za vás.
- Jednoduché úvodzovky a obyčajné CSS namiesto LESS alebo SASS.

## Pluginy a komponenty (jComponent)

- Malé písmená pre názvy pluginov, komponentov a položiek `FUNC.`, `MAIN.` a `REPO.` aj pre premenné.
- Podčiarkovníkom sa vyhýbajte, kde sa dá, a vnáranie držte na dvoch či troch úrovniach.
- Plugin sa píše cez `exports.`; komponent používa `self`, `config` a `cls`.
- Navrhujte na opätovné použitie.

## Skripty SQL

- Názvy tabuliek a polí malými písmenami, tabulátory na odsadenie a bodkočiarka na konci každého príkazu.
- Odstráňte zbytočné pretypovania, skript naformátujte a tabuľky, pohľady, procedúry alebo funkcie a indexy držte v samostatných skriptoch.

| Predpona | Pre |
|---|---|
| `tbl_` | tabuľky, s názvom v jednotnom čísle |
| `cl_` | číselníky |
| `view_` | pohľady |
| `sp_` | uložené procedúry |
| `fn_` | funkcie |

V poliach `dt` začína dátum, `is` začína logickú hodnotu, kľúče majú tvar `id` alebo `userid` a namiesto `varchar` sa používa `text`. Kde sa hodia, použite `id`, `name` a `dtcreated` a stĺpce zoraďte ako identifikátory, hlavné polia, čísla, logické hodnoty a dátumy, s obmedzeniami cudzích kľúčov na konci.

## Priečinky

Obrázky dávajte do `/img/`, skripty do `/js/`, štýly do `/css/`, písma do `/fonts/` a videá do `/videos/` a súbory pomenúvajte s pomlčkami.

## Prečo to pomáha

Spoločný štýl uľahčuje odovzdanie, kontrolu a rozširovanie projektu a dáva AI asistentovi jasný vzor. Dajte svojmu asistentovi túto stránku spolu s [konvencie Total.js 5 pre asistentov pri kódovaní](/en/docs/totaljs-agent-conventions/) a jeho kód bude zapadať do zvyšku vašej aplikácie.
