A collection of nodes and arcs is called a cell, and instances of cells can be placed in other cells. When a cell instance is placed, that instance is also a node, and is treated just like the simpler transistor and contact nodes. Thus, nodes come in two forms: primitive and complex. Primitive nodes are found in the component menu and are pre-defined by the technologies (transistors, contacts, pins). Complex nodes are actually instances of other cells, and are found in libraries.

Electric gives each cell a view and a version and organizes cells into cell groups. A cell's view describes its contents (for example "layout", "schematics", "netlist", etc.) A cell's version defines its design age. The full name of a cell is:

CELLNAME;VERSION{VIEW}
where CELLNAME is the name of the cell, VIEW is the abbreviated name of this cell's view, and VERSION is the version number of this view of the cell. When no version number is specified, it implies that this cell is the most recent version (has the largest number). Thus, the cell "gate;2{lay}" is more recent than "gate;1{lay}" but less recent than "gate{lay}" (which must have a higher version number, probably 3).

In the above example, there is a library with two cell groups. One group has a set of cells called "gate" and the other has a set of cells called "latch". On the right is the explorer view of these cells. See Section 4-5-2 for more on the cell explorer.

Although it is not necessary for cells in a group to all have the same name, the system presumes that common names will be grouped together. Once in a group, you can rename a cell to give it a different name than the others in its group. Use the Rename Cell... command (in menu Cell). You can also use context menus in the cell explorer to rearrange groups.