Mokuji ontwikkeling

Versimpelde structuur van Mokuji.

Mokuji is in de basis een framework waarop het Mokuji CMS is gebouwd. Dit framework zorgt ervoor dat Mokuji heel flexibel is en voor vele doeleinden gebruikt kan worden.

Er zijn een aantal aspecten aan ontwikkelen voor Mokuji:

  • Thema's en templates ontwikkelen
  • Componenten ontwikkelen
  • Plugins ontwikkelen
  • De core en base-componenten ontwikkeling

Thema's en templates

Deze vormen samen het uiterlijk en de samenstelling van je website.

Een template verzorgt de structuur die een pagina volgt, zoals een 2-koloms of 3-koloms website.

Een thema verzorgt de opmaak, zoals kleuren schema's, lettergrotes en javascript interacties.

Componenten

Deze bieden functionaliteit voor een website. Standaard zijn een aantal componenten meegeleverd met Mokuji. Bijvoorbeeld het cms component en het account component.

De functies die zij kunnen bieden zijn heel divers:

  • Een nieuw type pagina aanbieden om op de website te plaatsen.
  • Nieuwe configuratie opties of beheerders functies toevoegen.
  • Modules aanbieden die in een template kan worden geplaats.
  • Programmeurs functies bieden om andere componenten sneller/veiliger/gemakkelijker te schrijven.
  • Geavanceerde operaties uitvoeren (zoals een systeem update).
  • Een begin-punt (entrypoint) zijn in de functionaliteit van de website voor de frontend, backend en/of het installatie script.

Plugins

Voornaamste functie van plugins is het kunnen verwerken van externe code in het CMS. Denk daarbij aan PHP libraries als PHPMailer, maar ook CKEditor en Bootstrap vallen hier onder.

Aan plugins worden de minste structuur eisen gesteld zodat practisch alle libraries die behulpzaam zijn voor het CMS kunnen worden aangemaakt.

Core en base-componenten

De core (ofwel het framework van Mokuji) en de base-componenten vormen samen de basisinstallatie van Mokuji. Uiteraard is het bij vrije software mogelijk om aanpassingen hierin te maken of zelfs een volledig eigen variant aan te houden, maar dit zorgt er voor dat toekomstige updates ofwel niet meer werken, of je gemaakte wijzigingen weer overschijven.

Dit zou zonde zijn, vandaar dat er gebruik wordt gemaakt van GitHub. Hierdoor is het mogelijk om je gemaakte wijzigingen terug te sturen naar ons als een pull-request. Let op dat je de wijzigingen maakt in de huidige Beta versie, zodat het door ons getest kan worden voor het naar een stable release gaat. Het sturen van een pull-request werkt vergelijkbaar met het aanmaken van een feature-branch. Zie hiervoor de release-cyle op de versioning pagina.