تخزين حالة التطبيق كسلسلة من التغييرات (الأحداث) بدلاً من الحالة الحالية.
يسمح بإعادة بناء الحالة في أي لحظة زمنية.