A library is a collection of cells that forms a consistent hierarchy. To enforce this consistency, Electric stores an entire library in one disk file that is read or written at one time. It is possible, however, to have multiple libraries in Electric. Only one library is the current one, and this sometimes affects commands that work at the library level. When there are multiple libraries, you can switch between them with the Change Current Library... command (in menu File) or by using the library's context menu in the cell explorer (see Section 4-8). To see which libraries are read in, use the List Libraries command.

To create a new, empty library, use the New Library... command (in menu File). To change the name of the current library, use the Rename Library... command. To delete a library, use the Close Library command. This removes only the memory representation, not the disk file. Note that library changes are too vast to be tracked by the database-change mechanism and so are not undoable.

It is possible to link two libraries by placing an instance of a cell from one library into another (this is done with the Place Cell Instance... command in menu Cell). When this happens, the library with the instance (the main library) is linked to the library with the actual cell (this is the reference library). Because the reference library is needed to complete the main library, it will be read whenever the main library is read.

If referenced libraries are edited independently, it is possible that a reference to a cell in another library will not match the actual cell in that library. When this happens, Electric creates a "placeholder" cell that matches the original specification. Thus, the link to the referenced library is broken because the cell there does not fit where the instance should be. To see a list of all placeholder cells that were created because of such problems, use the General Cell Lists... command (in menu Cell / Cell Info) and select "Only placeholder cells".

When reading and writing libraries, Electric offers a number of ways to choose the directory in the file system. The choices are available in the "Working directory" field of the "General" preferences (in menu File / Preferences..., "General" section, "General" tab):

- "Based on OS" indicates that Electric should choose a directory based on the standard look-and-feel used in your operating system.
- "Use current directory" indicates that Electric should use the current directory (the one that was current when Electric started).
- "Use last used directory" indicates that Electric should remember the last directory that it used (even across sessions).

Electric comes with some built-in libraries. There are two Spice primitive libraries (see Section 9-4-3). A library of examples can be loaded with the Load Library command (in menu Help / Samples). A set of MOSIS CMOS pads can be loaded with the MOSIS CMOS Pads command (in menu Help / Load Built-in Libraries). A set of gates, useful for Logical Effort (see Section 9-9), can be loaded with the Load Logical Effort Libraries (Purple, Red, and Orange) command (in menu Tool / Logical Effort).