# Interface: Element

[**lifecycle-kit**](https://jonbogaty.com/lifecycle-kit/api/readme/index.md)

***

[lifecycle-kit](https://jonbogaty.com/lifecycle-kit/api/readme/index.md) / [chem](https://jonbogaty.com/lifecycle-kit/api/chem/readme/index.md) / Element


# Interface: Element {#interface-element}


Defined in: [chem/elements.ts:21](https://github.com/jbcom/lifecycle-kit/blob/074e4e7b8038d3e2de9eb44c4b5b5aee0ef02b48/src/chem/elements.ts#L21)

The elements a creature is made of.

Ported from a sibling simulation game's periodic table — real atomic
masses, valences, electronegativities, cosmic abundances and CPK colours,
validated against the npm `periodic-table` reference.

That table stops at chlorine, which is a limitation we inherit and one that
does not matter here: H, C, N, O, P and S are roughly 99% of biomass by
mass, and the trace metals a real cell needs are not something a 12x9 pixel
creature can express anyway.

Abundance is the important field. It is the cosmic abundance of the
element, and it is what makes a creature's composition a *consequence*
rather than a choice: carbon is common, phosphorus is scarce, and a body
that wants a lot of phosphorus is therefore expensive to build.


## Properties {#properties}



### abundance {#abundance}


> **abundance**: `number`

Defined in: [chem/elements.ts:30](https://github.com/jbcom/lifecycle-kit/blob/074e4e7b8038d3e2de9eb44c4b5b5aee0ef02b48/src/chem/elements.ts#L30)

Fraction of ordinary matter in the universe.

***


### color {#color}


> **color**: `string`

Defined in: [chem/elements.ts:32](https://github.com/jbcom/lifecycle-kit/blob/074e4e7b8038d3e2de9eb44c4b5b5aee0ef02b48/src/chem/elements.ts#L32)

CPK colour, used to tint the pixel that represents this atom.

***


### electronegativity {#electronegativity}


> **electronegativity**: `number`

Defined in: [chem/elements.ts:28](https://github.com/jbcom/lifecycle-kit/blob/074e4e7b8038d3e2de9eb44c4b5b5aee0ef02b48/src/chem/elements.ts#L28)

***


### mass {#mass}


> **mass**: `number`

Defined in: [chem/elements.ts:26](https://github.com/jbcom/lifecycle-kit/blob/074e4e7b8038d3e2de9eb44c4b5b5aee0ef02b48/src/chem/elements.ts#L26)

Atomic mass, u.

***


### metallic {#metallic}


> **metallic**: `number`

Defined in: [chem/elements.ts:34](https://github.com/jbcom/lifecycle-kit/blob/074e4e7b8038d3e2de9eb44c4b5b5aee0ef02b48/src/chem/elements.ts#L34)

0..1. Metals catch light; a magnesium-rich tissue reads bright-edged.

***


### name {#name}


> **name**: `string`

Defined in: [chem/elements.ts:24](https://github.com/jbcom/lifecycle-kit/blob/074e4e7b8038d3e2de9eb44c4b5b5aee0ef02b48/src/chem/elements.ts#L24)

***


### opacity {#opacity}


> **opacity**: `number`

Defined in: [chem/elements.ts:38](https://github.com/jbcom/lifecycle-kit/blob/074e4e7b8038d3e2de9eb44c4b5b5aee0ef02b48/src/chem/elements.ts#L38)

0..1. Below 1 reads translucent — a watery, jelly-ish body.

***


### roughness {#roughness}


> **roughness**: `number`

Defined in: [chem/elements.ts:36](https://github.com/jbcom/lifecycle-kit/blob/074e4e7b8038d3e2de9eb44c4b5b5aee0ef02b48/src/chem/elements.ts#L36)

0..1. Low roughness is glossy, high is matte.

***


### symbol {#symbol}


> **symbol**: `string`

Defined in: [chem/elements.ts:23](https://github.com/jbcom/lifecycle-kit/blob/074e4e7b8038d3e2de9eb44c4b5b5aee0ef02b48/src/chem/elements.ts#L23)

***


### valence {#valence}


> **valence**: `number`

Defined in: [chem/elements.ts:27](https://github.com/jbcom/lifecycle-kit/blob/074e4e7b8038d3e2de9eb44c4b5b5aee0ef02b48/src/chem/elements.ts#L27)

***


### z {#z}


> **z**: `number`

Defined in: [chem/elements.ts:22](https://github.com/jbcom/lifecycle-kit/blob/074e4e7b8038d3e2de9eb44c4b5b5aee0ef02b48/src/chem/elements.ts#L22)
