Skip to main content

A Python library for automating the submission of manuscripts to academic venues.

Project description

PaperPush: Automated manuscript submission to journals, conferences, and preprint servers

Prepare manuscripts for submission to preprint servers, venues, and conferences with just a few commands. No need to spend hours filling out forms manually. Just provide a manuscript directory and submission venue of interest, and paperpush will fill out the submission portal for you.

Install

pip install paperpush

To install the playwright dependency and the required browsers, run:

playwright install

Use with AI

Prepare my manuscript in /PATH/TO/MANUSCRIPT/DIRECTORY for submission to VENUE with PaperPush.

The Claude skill /paperpush-prepare-submission helps with this.

See docs/example-session.md for a full worked example of this flow.

Quickstart

  1. paperpush subfile VENUE: creates a file VENUE.sub that is a template for the VENUE submission.
  2. fill out VENUE.sub - 3 options:
    • a. fill out manually
    • b. Ask an LLM: Use Claude skill /paperpush-autofill, or any AI agent following AGENTS.md.
    • c. paperpush autofill -d /PATH/TO/MANUSCRIPT/DIRECTORY --engine api VENUE.sub: Use an LLM API. Requires an API key.
  3. paperpush validate VENUE.sub: run the pre-submission checks on the filled VENUE.sub.
  4. paperpush login VENUE: log in to the VENUE submission portal
  5. paperpush submit VENUE.sub: Fill out the VENUE submission portal. Will not actually submit the manuscript. We highly recommend reviewing the submission form in the venue portal before clicking submit.

Run the whole pipeline at once

scripts/paperpush_pipeline.py sequentially runs the commands above — subfile, autofill, validate, login, submit. This allows going from a manuscript directory to a filled submission portal in just one command.

python scripts/paperpush_pipeline.py -d /PATH/TO/MANUSCRIPT/DIRECTORY --engine api VENUE

See python scripts/paperpush_pipeline.py --help for the full list of options, grouped by step.

Supported venues

Preprint servers: arXiv, bioRxiv, medRxiv

Journals: Bioinformatics, BMC Bioinformatics, Cell, Cell Genomics, Cell Systems, Discrete Mathematics, Genome Biology, Nature, Nature Biotechnology, Nature Methods, Nucleic Acids Research, PLOS Computational Biology, Science, Science Advances, Science Immunology, Science Robotics, Science Signaling, Science Translational Medicine

Conferences: none yet

View the list on the command line with paperpush --venues.

For more details, see venues.md

Documentation

paperpush.readthedocs.io

Adding new venues

See CONTRIBUTING.md for instructions on adding new venues. See DEVELOPMENT.md for tips on adding new venues and running unit tests.

For AI agents

If you are an AI agent asked to submit a manuscript on the user's behalf, read AGENTS.md. It describes how to run the full pipeline while doing your own field extraction (reading the manuscript and writing a values.json for the default --engine manual) rather than relying on the API-backed engine. Claude Code should prefer the /paperpush-prepare-submission and /paperpush-autofill skills, which encode the same contract.

License

This project is licensed under the BSD-2 License - see the LICENSE file for details.

Developed by Joe Rich

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

paperpush-0.1.0.tar.gz (532.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

paperpush-0.1.0-py3-none-any.whl (560.5 kB view details)

Uploaded Python 3

File details

Details for the file paperpush-0.1.0.tar.gz.

File metadata

  • Download URL: paperpush-0.1.0.tar.gz
  • Upload date:
  • Size: 532.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.16

File hashes

Hashes for paperpush-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e4c908993457216dfbf920412659e2adb95ca774017d7e8d219982582af34171
MD5 f83f9752a84fbf591078161640fc85ba
BLAKE2b-256 94f5a2a6117125bc5ec27e6c2a60566e721fedfdf780a243e683d7c50ce1fe44

See more details on using hashes here.

File details

Details for the file paperpush-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: paperpush-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 560.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.16

File hashes

Hashes for paperpush-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8a5fe4c59d3576822bb0b86fbd5e23b8b0e1d602c63812f2f53ea3ea0e304bd8
MD5 04b0c0ac372c6532b551b058b18e39ec
BLAKE2b-256 86e3b75a3d1ebf2219a7eaaccfa1febd4e6798ed386619e989f5b581a9e9938a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page