melpa / melpa
git clone https://github.com/melpa/melpa.git
🔥 on GitHub Trending today
Build recipes and server-side machinery that automatically compile upstream Emacs Lisp packages into a package.el-compatible archive.
Why you might care
Gives Emacs users a large, continuously updated archive of packages installable via package.el without manually cloning repos. Contributors add packages by submitting a small recipe file rather than running the build infrastructure themselves.
+1
stars, 24h · #13,859
+3
stars, 7 days · #22,537
+~10
stars, 30 days · #26,813
3.0k
★ total · +0% this week
2.8k
forks · 81 open issues
Star history (as recorded here)
LanguageEmacs Lisp
LicenseGPL-3.0
Created2011-10-05 (15y ago)
Last push3d ago
Watchers79
OwnerOrganization
Seen on GitHub Trending
- 2026-10-23 — #8 daily in emacs-lisp · +1 ★
- 2026-10-23 — #5 weekly in emacs-lisp · +2 ★
- 2026-10-22 — #6 weekly in emacs-lisp · +3 ★
- 2026-10-21 — #9 daily in emacs-lisp
- 2026-10-20 — #9 daily in emacs-lisp
Links
- GitHub: github.com/melpa/melpa
- Homepage: https://melpa.org
- Releases · Issues · Hacker News mentions
README excerpt
# MELPA MELPA is a growing collection of `package.el`-compatible Emacs Lisp packages built automatically on our server from the upstream source code using simple recipes. (Think of it as a server-side version of [`el-get`], or even [Homebrew].) Packages are updated at intervals throughout the day. To browse available packages, check out the [archive index page][MELPA]. Adding packages is as simple as submitting a new recipe as a pull request; read on for details. ## Table of Contents * Usage * Contributing * Recipe Format * Build Scripts * API * Configuration * Mirrors * About ## Usage To use the MELPA repository, you'll need an Emacs with `package.el`, i.e., Emacs 24.1 or greater. To test TLS support you can visit a HTTPS URL, for example with `M-x eww RET https://wikipedia.org RET`. Enable installation of packages from MELPA by adding an entry to `package-archives` after `(require 'package)` and before the call to `package-initialize` in your `init.el` or `.emacs` file: [code] Then just use `M-x package-list-packages` to browse and install packages from MELPA and elsewhere. Note that you'll need to run `M-x package-refresh-contents` or `M-x package-list-packages` to ensure that Emacs has fetched the MELPA package list before you can install packages with `M-x package-install` or similar. ### MELPA Stable Packages in MELPA are built directly from the latest package source code in the upstream repositories, but we also build and publish packages corresponding to the latest tagged code in those repositories, where version tags exist. These packages are published in a separate package archive called [MELPA Stable]. Most users should prefer MELPA over MELPA Stable. Some notes: * If you leave the original MELPA server in your `package-archives` then by default you will get the *development* versions of packages and not the stable ones, because the development versions are higher. * If your Emacs has the variables `package-pinned-packages` (available in 24.4 and later) and/or `package-archive-priorities`, you can customize or modify those variables as needed. * You will probably want to remove all packages and then reinstall them. Any packages you already have installed from MELPA will never get "updated" to the stable version because of the way version numbering is handled. Note that the MELPA maintainers do not use MELPA Stable themselves, and do not particularly recommend its use. ## Contributing See the [CONTRIBUTING.org] document. ## Recipe Format Packages are specified by files in the `recipes` directory. You can contribute a new package by adding a new file under `recipes` using the following form (`[...]` denotes optional or conditional values), [code] * `package-name` a lisp symbol that has the same name as the package being specified. * `:fetcher` specifies the type of repository the package is being maintained in. Melpa supports the Git and Mercurial version control systems and provides generic fetcher types for them: `git` a
Blurb generated by claude-haiku-5-5 today. Star deltas marked ~ are extrapolated from partial history.