We invest a lot of resources into creating best in class open source packages. You can support us by buying one of our paid products.
We highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using. You'll find our address on our contact page. We publish all received postcards on our virtual postcard wall.
This repo can be used to scaffold a Laravel package. Follow these steps to get started:
- Press the "Use this template" button at the top of this repo to create a new repo with the contents of this skeleton.
- Run "php ./configure.php" to run a script that will replace all placeholders throughout all the files.
- Have fun creating your package.
- If you need help creating a package, consider picking up our Laravel Package Training video course.
This repo contains a skeleton to easily create Nova Tool packages. It contains a few niceties not present in the default Nova Tool scaffolding.
First clone this repo to your development machine and remove the .git
directory. Next run git init
to create another repo. Create a new repo on GitHub (or another source control saas) and point the origin remote of your cloned repo to the one you just created. Here's an example: git remote add origin git@github.com:spatie/newly-created-repo.git
. Commit all files and push to master.
Next replace these variables in all files of your repo:
:author_name
(example: 'Freek Van der Herten'):author_username
(example: 'freekmurze'):author_email
(example: 'freek@spatie.be'):package_name
(example: 'nova-tail-tool'):package_description
(example: 'A tool to tail the log'):vendor
(example: 'spatie'):namespace_vendor
(example: 'Spatie'):namespace_tool_name
(example: 'TailTool')
Next run composer install
, yarn
and yarn production
.
If you don't have a Nova app already head over the nova installation instructions.
To use your customized package in a Nova app, add this line in the require
section of the composer.json
file:
":vendor/:package_name": "*",
In the same composer.json
file add a repositiories
section with the path to your package repo:
"repositories": [
{
"type": "path",
"url": "../:package_name"
},
Now you're ready to develop your package inside a Nova app.
When you are done with the steps above delete everything above!
This is where your description should go. Try and limit it to a paragraph or two.
Add a screenshot of the tool here.
You can install the package in to a Laravel app that uses Nova via composer:
composer require :vendor/:package_name
Next up, you must register the tool with Nova. This is typically done in the tools
method of the NovaServiceProvider
.
// in app/Providers/NovaServiceProvider.php
// ...
public function tools()
{
return [
// ...
new \:namespace_vendor\:namespace_tool_name\Tool(),
];
}
Click on the ":package_name" menu item in your Nova app to see the tool provided by this package.
composer test
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
If you discover any security related issues, please email :author_email instead of using the issue tracker.
You're free to use this package, but if it makes it to your production environment we highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using.
Our address is: Spatie, Kruikstraat 22, 2018 Antwerp, Belgium.
We publish all received postcards on our company website.
The MIT License (MIT). Please see License File for more information.