Voor de onderhoudbaarheid van OpenAC zijn een aantal stijlregels opgesteld. Waar deze nog niet zijn toegepast is het idee om, zo mogelijk, deze stijlregels toe te passen (in een aparte commit). Er is hier nog geen check voor in een CI/CD pipeline, maar dat is het streven. == OpenACWeb == Voor de frontend zijn de stijlregels vastgelegd in twee bestanden: een EditorConfig (.editorconfig) en ESLint configuratie (.eslintrc.js). Deze regels zijn voorlopig ingesteld als warnings om het ontwikkelen niet te belemmeren (standaard zijn het errors, die compileren niet mogelijk zouden maken). Uiteindelijk worden deze regels errors, als ze ruim voldoende zijn toegepast. === Indentatiebreedte === Voor JavaScript, HTML, en CSS wordt een indentatie van 4 spaties gehanteerd. === Puntkomma's === Gebruik géén puntkomma aan het einde van een statement. NB: Er kunnen, in uiterste gevallen, situaties voorkomen waarbij het weglaten van puntkomma's kan lijden tot onverwachte resultaten. Deze kunnen altijd herschreven worden naar een niet-problematische vorm. Valideer code altijd met een unit test en herschrijf waar nodig. ==== Voorbeelden ==== {{{ import Util from '@/openac_util' const x = 1 const y = 2 return x }}} === Object Shorthand === Gebruik object shorthand voor het toewijzen van variabelen met dezelfde naam als de properties van een object, en bij het definiëren van methods in een object. ==== Voorbeelden ==== {{{ // properties const x = 1 const y = 2 const z = 3 var foo = { x, y, z } // methods var foo = { a() {}, b() {} } }}} === 'object-curly-spacing' === Gebruik 1 spatie aan weerszijden bij object definities. ==== Voorbeelden ==== {{{ const obj = { foo: "bar" } const obj = { foo: { zoo: "bar" } } import { foo } from "bar" export { foo } }}}