Upload to the Comprehensive TeX Archive Network
Hey, got a new package or a new version of a package for CTAN? Great! This page allows you to upload it.
If you want to upload a new version of a package to CTAN you can start the upload from the package's page. Then several fields will be pre-filled.
Ready? Then fill in the fields below and upload.
To get ready for uploading please read the points below. You may also find helpful the information at http://tug.org/texlive/pkgcontrib.html.
Please package your contribution as a ZIP archive with extension .zip or a gzip-ed tar archive (with the extension tar.gz or tgz).
The CTAN team has decided that packages on the archive shall remain in a browsing-friendly layout, i.e. the best format is to have all the files inside a directory, as illustrated here.
xxx.zip: xxx/ README.md xxx.dtx xxx.ins xxx.pdf
Here xxx should be the CTAN name of your package.
Very large packages (such as modern font distributions) are improved by a single extra layer of directory:
xxx.zip: xxx/ README.md doc/ xxx-doc.tex xxx-doc.pdf tex/ use-xxx.sty t1xxx.fd ... source/ xxx.sfd xxx-Italic.sfd ... ...
and so on.
In parallel to the main directory tree, CTAN offers the install/ subtree for TDS-structured ZIP files. Such a file will only be accepted as an addition to your upload, not as a replacement. If you want to include such a file in your upload, please check the TDS guidelines. Call this file xxx.tds.zip and include it at the toplevel of your upload (alongside the xxx directory).
xxx.zip: xxx.tds.zip xxx/ README.md ...
Even if what you are sending is a revision of an existing package, please send all of the files, changed or not. We have tools to handle whole uploads so this leads to the fewest errors on our part.
We hold thousands of packages, and many thousand files. Our visitors will be helped, and your work will get the recognition that it deserves, only if people can find your package.
Include in your upload a plain text file with information that would be useful to a CTAN visitor considering using your package. This information includes a brief description and license information, as well as whether your material requires special fonts or only runs on one kind of platform. Name this file README.md, README.txt or simply README because then it will show up on the CTAN portal prominently rendered when that user is browsing your directory. This file should be stored with the encoding UTF-8.
Include in the README.md or README file a statement giving your choice of license. That way people who are browsing can see whether your material is available to them (e.g., if your license choice excludes commercial use). Something like: This material is subject to the LaTeX Project Public License.
Almost all packages should have documentation beyond the README.md or README. It should be in PDF format, since this is what our web visitors can read; in particular, Postscript and DVI formats are not acceptable. Include its source in your upload since free distributions such as TeX Live cannot use the document without source. (For many LaTeX package authors, producing the documentation is a matter of running your
.dtxfile through pdfLaTeX:
Some additional practical tips can be found in the Additional Information for CTAN Uploaders.
In case that you need to reach the CTAN team, send an email message to
- Please take care not to send any HTML mails to these addresses, because HTML mails are held in CTAN's SPAM filter, and it may take some time until a postmaster comes along to set them free.