zitadel/site/docs/architecture/01-priciples.md
Max Peintner 27be460c07
feat: docs rehaul, fix missing context in console, quickstarts (#1212)
* onboarding components, routing, steps

* onboarding component, toc

* fix onboarding mixin

* header

* refactor docs

* fix layout

* cleanup routing

* docs routing

* fix conventions

* de en routing

* docs, guide contents, nav

* rem i18n support

* fix routing from docs

* rollup onwarn changes, preload

* update svelte plugin, update rollup config

* move docs

* revert img style, remove code table

* rem de completely

* rollup optim, template

* angular quickstart, quickstart overview page, update deps

* fix link

* pack, slug

* prefetch binding, hidden links

* export log

* guards route ch

* fix homepage

* angular docs

* docs

* resolve fsh

* overview

* docs

* docs

* packages fix race condition

* nav, home link

* add vue, aspnet

* doc optimizations

* embed status pal

* angular guide

* angular guide

* dotnet, angular guide

* viewbox

* typo

* block onboarding route for non iam writers

* set links from component data

* fix: fetch org context in guard, more main cnt (#1192)

* change get started guide, fix code blockquotes, typos

* flutter guide

* h2 spacing

* highlight strong

* plus

* rm start sublinks

* add proxy quickstart

* regex

* prevent outside click, fix project grant write

Co-authored-by: Florian Forster <florian@caos.ch>
Co-authored-by: Livio Amstutz <livio.a@gmail.com>
2021-02-16 16:59:18 +01:00

855 B

title
Principles

ZITADEL engineering and design principles

  • Be transparent about your decisions
  • Embrace stateless application design
  • System of records is the event store
  • Everything else needs to be able to be regenerated
  • Try not so solve complex problems outside of the IAM Domain
  • Use a scalable storage for the event store and read models
  • Try to be idempotent whenever possible
  • Reduce necessity of external systems or dependencies as much as possible
  • Embrace automation
  • Design API first
  • Optimize all components for day-two operations
  • Use only open source projects with permissive licenses
  • Don't roll your own crypto algorithm
  • Embrace (industry) standard as much as possible
  • Make use of platform features
  • Be able to run with a CDN and WAF
  • Releases utilized semantic versioning and release whenever feasible