PHPackages                             infernobass7/laravel-print-node - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. infernobass7/laravel-print-node

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

infernobass7/laravel-print-node
===============================

Print using PrintNode in Laravel. http://www.printnode.com

v0.1.1(9y ago)98417[1 issues](https://github.com/infernobass7/laravel-print-node/issues)PHP

Since Apr 26Pushed 7y ago3 watchersCompare

[ Source](https://github.com/infernobass7/laravel-print-node)[ Packagist](https://packagist.org/packages/infernobass7/laravel-print-node)[ RSS](/packages/infernobass7-laravel-print-node/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (2)Dependencies (2)Versions (2)Used By (0)

Laravel-PrintNode
=================

[](#laravel-printnode)

Laravel Wrapper for PrintNode API. More about PrintNode can be found here:

Laravel 5
=========

[](#laravel-5)

This package has been written in Laravel 5.4 but should support previous versions of Laravel 5.

Installation
============

[](#installation)

You can pull this package in through Composer.

```
composer require infernobass7/laravel-print-node

```

You will need to add the following lines to `config/app.php`

```
'providers' => [
    ...
    Infernobass7\PrintNode\PrintNodeServiceProvider::class,
    ...
]
```

Next you will want to publish the config file.

```
php artisan vendor:publish --provider="Infernobass7\PrintNode\PrintNodeServiceProvider"

```

\#Configuration The config files comes with two sections out of the box. The first is auth, which is required in order for the package to work. The username is either the API Key or the email address. If you use the API Key you should not provide a password. However, if you use an email address, you must provide the password too. The second section is the configuration options for printing. These will be used as a default should you not specify any while creating a PrintJob.

```
return [
    'auth' => [
        /*
         * Use this to set either API Key or email
         */
        'username' => '',

        /*
         * Do not set this if you are using API Key
         */
        'password' => ''
    ],

    'options' => [
        /*
         *  * = Options only available when installed client is running on a OSX Machine
         */
//      'bin' => , // String
//      'collate' => , // Boolean
//      'copies' => , // Integer
//      'dpi' => , // String
//      'duplex' => , // String - "long-edge" or "short-edge"
//      'fit_to_page' => , // * Boolean
//      'media' => , //String
//      'nup' => , // * String - Print Multiple Pages on One Sheet
//      'pages' => , // String - Specific Set of pages from the PDF. Format explained here https://printnode.com/docs/api/curl/#parameters
//      'paper' => , // String - Named paper size
//      'rotate' => // Integer - Rotate Page specified degrees ( accepted values: 90, 180, or 270 )
    ]
];
```

\#Usage

\##Printer This class handles retrieving list of Printers from PrintNode.

```
/*
 * Will return a collection of Printer Objects
 */
Printer::all();

/*
 * Will return the specific printer Object based on the ID.
 * The ID can retrieved from PrintNode's service.
 */
$printer = Printer::get($printer_id);

/*
 * Retrieve a list of all PrintJobs previously printed on the Printer
 */
$previousJobs = $printer->getPrintJobs();

/*
 * Retrieve a specific print job previousl printed on the Printer
 */
$previousJob = $printer->getPrintJob($id);
```

\##Print Job This class handles retrieving and creating new PrintJobs.

```
/*
 * Create a new PrintJob
 */
$job = new PrintJob($attributes = []);

/*
 * Sends the print job to the specified Printer
 */
$job->print(Printer $printer);
// Alternatively
$printer->print(PrintJob $job);

/*
 * Fluent Setters to create PrintJob
 */

/*
 * Grabs file based on the path of the storage disk defined in Storage Configuration
 * Set contentType to either 'raw_base64' or 'pdf_base64'
 */
$job->setFile($path, $disk = 'local', $raw = false);

/*
 * Sets the content to the URI provided
 * Sets Credentials for basic Authentication type
 */
$job->setUri($uri, $credentials = null, $raw = false);
// Alternatively
$job->setUri($uri)->setAuthentication($credentials, $basic = true);

/*
 *
 */
$job->setOptions($options = []);

/*
 * Please note the next two methods are not the same.
 */

/*
 * Sets the number of times that the PrintJob is going to be sent to the Printer
 */
$job->setQuantity(int $qauntity);

/*
 * Sets the number of copies that are printed per PrintJob
 */
$job->setCopies(int $quantity);

/*
 * Sets the source name to display on PrintNode
 */
$job->setSource($name);

/*
 * Sets how long in seconds the PrintJob will sit in the queue waiting to be printed
 * Afterwards it will be deleted
 */
$job->setExpireAfter(int $seconds);
```

###  Health Score

29

—

LowBetter than 57% of packages

Maintenance18

Infrequent updates — may be unmaintained

Popularity23

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 50% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

3350d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/ddccecc930817a7f630787564f8548352a279ec282e901b632312e95e6f18c5c?d=identicon)[infernobass7](/maintainers/infernobass7)

---

Top Contributors

[![DuckThom](https://avatars.githubusercontent.com/u/6512901?v=4)](https://github.com/DuckThom "DuckThom (1 commits)")[![likeadeckofcards](https://avatars.githubusercontent.com/u/6399755?v=4)](https://github.com/likeadeckofcards "likeadeckofcards (1 commits)")

### Embed Badge

![Health badge](/badges/infernobass7-laravel-print-node/health.svg)

```
[![Health](https://phpackages.com/badges/infernobass7-laravel-print-node/health.svg)](https://phpackages.com/packages/infernobass7-laravel-print-node)
```

###  Alternatives

[neuron-core/neuron-ai

The PHP Agentic Framework.

2.0k496.1k33](/packages/neuron-core-neuron-ai)[tencentcloud/tencentcloud-sdk-php

TencentCloudApi php sdk

3661.2M46](/packages/tencentcloud-tencentcloud-sdk-php)[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

751284.3k37](/packages/civicrm-civicrm-core)[roundcube/roundcubemail

The Roundcube Webmail suite

7.0k1.4k3](/packages/roundcube-roundcubemail)[spatie/laravel-export

Create a static site bundle from a Laravel app

672139.5k6](/packages/spatie-laravel-export)[nfse-nacional/nfse-php

This is my package nfse

1523.1k](/packages/nfse-nacional-nfse-php)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
