# jss-lint — style checker for Journal of Statistical Software manuscripts

## Quick start

Try it instantly in the browser at
<https://kollerma.github.io/jss-style-checker/> (no install needed,
nothing is uploaded), or run `jss-lint yourpaper.tex` after
`cargo install jsslint-cli`.

## What it does

`jss-lint` checks manuscripts written for the *Journal of Statistical
Software* (JSS) — `.tex`, `.Rnw` (Sweave/knitr), or `.Rmd` sources plus
their BibTeX databases — against 62 deterministic rules derived from
the journal's published style guide: dedicated preamble macros
(`\Plainauthor`, `\Address`), semantic markup (`\proglang`, `\pkg`,
`\code`), natbib citation conventions, capitalization rules for titles,
sections, and captions, code-formatting conventions, and bibliography
completeness. Violations are reported with source positions and fix
suggestions; a large subset can be applied automatically, and a
reviewer mode aggregates the findings into a per-category compliance
summary.

The rule set's accuracy is measured, not assumed: per-rule precision
and recall are evaluated against a pinned corpus of 254 published
JSS-format manuscripts, and the current figures are published on the
project page.

## Contents of this archive

- `jss-lint.pdf` — the manual: a full description of the tool's
  design, the rule catalogue, usage for authors and reviewers, and the
  measured precision/recall methodology and results.
- `rule-catalogue.md` — the complete catalogue of the 62 rules, with
  description, severity, the JSS style-guide section each enforces,
  and an example violation and fix per rule.
- `CHANGELOG.md` — release history.
- `LICENSE` — MIT.

The tool itself is compiled software distributed through the package
ecosystems listed below rather than as TeX code.

## Getting the tool

`jss-lint` is a compiled tool distributed through the usual package
ecosystems rather than as TeX code:

- Browser (no install, fully client-side — nothing is uploaded):
  <https://kollerma.github.io/jss-style-checker/>
- Command line: `cargo install jsslint-cli`
- Python: `pip install jss-style-checker` (or `pip install jsslint`)
- R: `install.packages("jsslintr")` (CRAN)
- VS Code: extension `kollerma.jss-style-checker`
  (Marketplace and Open VSX)
- Node/browser module: `npm install jsslint-wasm`
- CI: a GitHub Action, see the repository

Source code, documentation, and issue tracker:
<https://github.com/kollerma/jss-style-checker>

## License

MIT. See the LICENSE file.

## Independence notice

`jss-lint` is an independent, third-party project. It is **not**
affiliated with, endorsed by, or connected to the Journal of
Statistical Software, its editors, or its publisher — nor with the
`jss` LaTeX class hosted on CTAN. It merely checks manuscripts against
the journal's publicly documented style requirements.
