18 releases

0.6.6 Feb 28, 2024
0.6.5 Jan 9, 2024
0.6.4 Dec 5, 2023
0.6.3 Nov 2, 2023
0.4.0 Nov 26, 2022

#1042 in Development tools

Download history 48/week @ 2024-02-13 42/week @ 2024-02-20 185/week @ 2024-02-27 18/week @ 2024-03-05 45/week @ 2024-03-12 8/week @ 2024-03-19 6/week @ 2024-03-26 34/week @ 2024-04-02 14/week @ 2024-04-23 276/week @ 2024-04-30

290 downloads per month
Used in 6 crates

GPL-3.0 license

85KB
2K SLoC

Xvc Entity-Component System is the basic storage mechanism behind Xvc. It defines an integer-based entity type ([XvcEntity]), a trait to be implemented by components (structs) and stores to save, load and operate on these components.

It's an alternative to an object-oriented design where the relations between classes should be known beforehand. It allows to implement new components for entities at any point in the evolution of software. These components can have 1-1, 1-N or M-N relationships.

In a sense components are analogous to database tables, and entities are primary keys. [XvcStore] can be considered akin to a table, and [R11Store], [R1NStore] and [RMNStore] can be considered as relations.

Dependencies

~3–12MB
~121K SLoC