Skip to main content

an extensible tool to process legal citations in text

Project description

CiteURL Logo

pytest GitHub issues GitHub license PyPI

CiteURL is an extensible tool that parses legal citations and makes links to websites where you can read the relevant law for free. It can be used to quickly look up a reference, or to insert a hyperlink for every long- or short-form citation found in a longer text.

If you want to quickly try it out, it's available as a web app at citation.link.


Here's a sample of the links CiteURL can make:

Federal law provides that courts should award prevailing civil rights plaintiffs reasonable attorneys fees, 42 USC § 1988(b), and, by discretion, expert fees, id. at (c). This is because the importance of civil rights litigation cannot be measured by a damages judgment. See Riverside v. Rivera, 477 U.S. 561 (1986). But Evans v. Jeff D. upheld a settlement where the plaintiffs got everything they wanted, on condition that they waive attorneys' fees. 475 U.S. 717 (1986). This ruling lets savvy defendants create a wedge between plaintiffs and their attorneys, discouraging civil rights suits and undermining the court's logic in Riverside, 477 U.S. at 574-78.


By default, CiteURL supports Bluebook-style citations to over 130 sources of U.S. law, including:

  • most reported state and federal court opinions
  • the U.S. Code and Code of Federal Regulations
  • the U.S. Constitution and all state constitutions
  • the codified laws for every state and territory except Arkansas, Georgia, Guam, and Puerto Rico.

You can also add more sources of law by writing your own citation templates in YAML format.

Installation

To install just enough to make CiteURL work, run this command:

python3 -m pip install citeurl

Substitute citeurl[full] for citeurl if you want to install the optional dependencies flask and appdirs, necessary for hosting citeurl as a website and reading custom templates from the user's home directory.

Usage

CiteURL provides four command-line tools:

  • citeurl process: Parse a text and insert an HTML hyperlink for every citation it contains, including shortform citations.
  • citeurl lookup: Look up a single citation and display information about it.
  • citeurl host: Host an instance of CiteURL as a web app like citation.link.
  • citeurl makejs: Export an instance of CiteURL's lookup feature as JavaScript or a static web page. More info is available here.

Each command has its own command-line arguments you can view with the -h option. They all share the -t option, which allows you to load a list of custom citation templates in YAML form.

Here are a few common use cases:

# Process a court opinion and output a version where each citation is hyperlinked:
citeurl process -i INPUT_FILE.html -o OUTPUT_FILE.html
# Look up a single citation and open it directly in a browser
citeurl lookup "42 USC 1983" -b
# List the top ten authorities cited in a text, from most citations to least:
cat INPUT_FILE.html | citeurl process -a 10
# Host a lookup tool with custom templates, and serve it on the local network:
citeurl host -t PATH_TO_YOUR_TEMPLATES.YAML -s

CiteURL is also available in a few other forms besides the command-line tool:

Credits

Many thanks to these websites, which CiteURL's default templates frequently link to:

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

citeurl-12.0.3.tar.gz (78.3 kB view details)

Uploaded Source

Built Distribution

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

citeurl-12.0.3-py3-none-any.whl (84.3 kB view details)

Uploaded Python 3

File details

Details for the file citeurl-12.0.3.tar.gz.

File metadata

  • Download URL: citeurl-12.0.3.tar.gz
  • Upload date:
  • Size: 78.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for citeurl-12.0.3.tar.gz
Algorithm Hash digest
SHA256 d221de2b5905a1c681b42f27244469e5a85a332eee4327ec682eec0f2050c939
MD5 f99812643edc6f325ebf0fd8e844c096
BLAKE2b-256 a8ccaa2ed7268cfaac63e13d3495b22db34648220cc899525b0506e41bdd5c3d

See more details on using hashes here.

Provenance

The following attestation bundles were made for citeurl-12.0.3.tar.gz:

Publisher: test-and-publish.yml on raindrum/citeurl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file citeurl-12.0.3-py3-none-any.whl.

File metadata

  • Download URL: citeurl-12.0.3-py3-none-any.whl
  • Upload date:
  • Size: 84.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for citeurl-12.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 210ef36cae0386c12671818041a47755738d2d8006e7ee516fd54889e6cfb15e
MD5 897460193478fa9b90f553e733996a5a
BLAKE2b-256 d7b3e81cff6b359c7cba072b53e95f6b5c07a1d561d6eb3ea1bdba7c25d7465c

See more details on using hashes here.

Provenance

The following attestation bundles were made for citeurl-12.0.3-py3-none-any.whl:

Publisher: test-and-publish.yml on raindrum/citeurl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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