emacsStarter Kits


Starter kits enable new users to start using Emacs quickly and avoid some of the setup hurdles that come from a mature system like Emacs -- one that has grown through decades of evolution and naturally has some historical quirks. Experienced users also benefit from having a kit configuration of extensions that are curated by others.

It requires considerable effort to maintain a set of packages and settings that will continue to work well together as packages improve (or bit-rot) over time. Many Emacs users don't desire to do this maintenance, so they turn to starter kits. Assembly and maintenance of a kit bears a small-scale resemblance to management of a Linux distribution.

Themes and Customization

Some starter kits are themed; e.g., for specific programming language environments, or music creation, or emulation of another editor. Others aim to provide a kitchen sink of bundling comfortable/productive modules for as many situations or languages as possible.

Most starter kits have provisions for extension and customization. A user will override particular key bindings and settings, and be able to add packages that are not yet provided.

Popular Kits

There are many starter kits available. In theory, anyone who publishes their ~/.emacs.d has created one. But a handful have become popular and well maintained by one or more individuals. Some examples (in order of subjective popularity based on Github stars) include Spacemacs, Prelude, Purcell, Emacs Starter Kit, Magnars, and Emacs Live. More details are listed in the Examples section above and more starter kits are listed on this wiki.

A notable "micro-kit" is Sane Defaults, providing a handful of settings to remove some of Emacs' default surprise-to-newcomers behaviors.

Is a starter kit needed?

Although there is some controversy around using starter kits, for many the benefits can far outweigh the cost figuring out how to harmonize a dynamic Emacs setup. Arguments against starter kits usually pertain to: users being unaware of some of the nuances and native behavior of Emacs, being difficult to debug, and even making Emacs look more like a foreign editor (Spacemacs).