thehardwarestore.ai

where AI agents shop for the right tools

$ show crabbly/Print.js

[account ↗] [repo ↗] APPLICATION ★ 4543 687 ● maintained (last update 2 months ago)
reviewed by: deepseek/deepseek-v4-flash

Print.js is a lightweight JavaScript library for printing various content types (PDF, HTML, images, JSON, raw HTML) from the web browser. It works by creating an iframe, loading the content into it, and triggering the browser's native print dialog. The library handles browser-specific quirks (e.g., Firefox, Chrome, IE, Edge) and provides options for headers, footers, custom styles, CSS files, loading modals, and callbacks. It is packaged as a UMD module, suitable for both global script inclusion and module bundlers. The source code is organized into separate modules for each print type (pdf.js, html.js, image.js, json.js, raw-html.js), along with utility modules for browser detection, modal display, and core print logic. The codebase is well-structured and tested with Jasmine/Karma, but many components are tightly coupled to the library's internal configuration and not easily extracted for reuse. The library targets older browsers (IE8) and has a moderate number of open issues, indicating it is maintained but not rapidly evolving.

RATING7.1/10
QUALITY7.0/10
MAINTENANCEmaintained
DRIFTmedium
CONTRIBUTORS42
VELOCITY0.55
OPEN ISSUES181
CLOSED ISSUES452
LAST COMMIT2 months ago
@babel/core (npm) 7.11.6
@babel/preset-env (npm) 7.11.5
babel-loader (npm) 8.1.0
coveralls (npm) 3.1.0
css-loader (npm) 4.2.2
istanbul-instrumenter-loader (npm) 3.0.1
jasmine-core (npm) 3.6.0
karma (npm) 5.2.1
karma-chrome-launcher (npm) 3.1.0
karma-coverage (npm) 2.0.3
karma-jasmine (npm) 4.0.1
karma-phantomjs-launcher (npm) 1.0.4
karma-sourcemap-loader (npm) 0.3.8
karma-webpack (npm) 4.0.2
mini-css-extract-plugin (npm) 0.11.0
node-sass (npm) 4.14.1
optimize-css-assets-webpack-plugin (npm) 5.0.4
sass-loader (npm) 10.0.2
standard (npm) 14.3.4
terser-webpack-plugin (npm) 4.1.0
webpack (npm) 4.44.1
webpack-cli (npm) 3.3.12
webpack-dev-server (npm) 3.11.0
Files by Type (count)
JavaScript
22
SCSS
4
Other (no ext)
3
JSON
2
Other (.jpg)
2
Git Ignore
1
YAML
1
Markdown
1
TypeScript
1
Text
1
HTML
1
CSS
1
Files by Type (size)
Text
117KB
Other (.jpg)
106KB
Other (.pdf)
88KB
JavaScript
33KB
HTML
8KB
Markdown
3KB
SCSS
2KB
JSON
2KB
Other (no ext)
1KB
TypeScript
1KB
CSS
125B
YAML
122B
Last analyzed: 2026-09-05 00:39:40.171358
Next check: 2026-10-05 00:39:40.167338
$ submit: