You are looking at historical revision 15798 of this page. It may differ significantly from its current revision.


Eggs are CHICKEN-specific extension libraries, conveniently packaged in a source archive. They are stored in a centralized repository and can be downloaded and installed (mostly) automatically.

The egg index is the official list of eggs for the latest chicken major version (4), along with their documentation. If you are looking for eggs for the previous chicken major version (3), they are here.

You can subscribe to the Egg RSS 2.0 feed.

Here you can see the dependencies among eggs.

Installing eggs

To install any of the eggs, run the following command, replacing name for the egg's name:

chicken-install name

This will download the egg and install it. Enter

chicken-install -help

for a list of options or consult the chicken-install(1) manual page.

Loading eggs

To load and import an egg into your program, use:

(require-extension egg-name)      ; load library code, import identifiers

To restrict, rename, or prefix imported identifiers, you can split up the load and import pieces:

([[man/4/Non-standard macros and special forms#require-library|require-library]] gopher)          ; load library code
([[man/4/Modules and macros#import|import]] (prefix gopher gopher:))  ; import identifiers with a prefix


If you want to help document the eggs, please consult the eggs guidelines.

If you want to contribute new eggs, you might want to consult the eggs tutorial and the official, automatically built, list of eggs: egg index.

If you want to know more, look at research paper.