PHPackages                             nkkollaw/spark - 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. [Framework](/categories/framework)
4. /
5. nkkollaw/spark

ActiveLibrary[Framework](/categories/framework)

nkkollaw/spark
==============

A fork of Laravel Spark at version 1.0

1023[1 issues](https://github.com/nkkollaw/spark/issues)PHP

Since Aug 20Pushed 8y ago3 watchersCompare

[ Source](https://github.com/nkkollaw/spark)[ Packagist](https://packagist.org/packages/nkkollaw/spark)[ RSS](/packages/nkkollaw-spark/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Spark 1.0 fork
==============

[](#spark-10-fork)

Introduction
------------

[](#introduction)

This is a non-deleted fork of Laravel Spark 1.0, which eventually became a paid product (available at ).

The latest supported Laravel version is currently 5.2 (compatibility with Laravel 5.3 was added in Spark 2.0).

Installation
------------

[](#installation)

Create a new Laravel 5.2 application and give it a name (`project-name` here):

```
composer create-project laravel/laravel project-name 5.2.*

cd project-name

```

Add the Spark installer and install Spark (answer "no" to all questions it will ask you):

```
composer require "nkkollaw/spark-installer=~1.0"

vendor/nkkollaw/spark-installer/spark install

```

Create a database for your app.

Edit `.env` to add your database info and your URL if different than `http://localhost`. You might want to also set the `AUTHY_KEY`, `STRIPE_KEY`, and `STRIPE_SECRET` environment variables or do it later.

Migrate your database:

```
php artisan migrate

```

Install NPM dependencies:

```
npm install

```

Execute Gulp tasks:

```
gulp

```

It should work.

### Post-install

[](#post-install)

You may also wish to review the `SparkServiceProvider` class that was installed in your application. This provider is the central location for customizing your Spark installation.

### Notes

[](#notes)

Installing Spark should be done while crafting your application. Installing Spark after running commands such as `php artisan app:name MyApp` may result in errors when trying to install.

There are many articles and tutorials on the web about Spark 1.0, such as:

-

From now on you're on your own. The rest of this README has not been checked and things may or may not work (although they should).

Defining Subscription Plans
---------------------------

[](#defining-subscription-plans)

Subscription plans may be defined in your `app/Providers/SparkServiceProvider.php` file. This file contains a `customizeSubscriptionPlans` method. Within this method, you may define all of your application's subscription plans. There are a few examples in the method to get you started.

When defining a Spark plan, the `plan` method accepts two arguments: the name of the plan and the Stripe ID of the plan. Be sure that the Stripe ID given to the `plan` method corresponds to a plan ID on your Stripe account:

```
	Spark::plan('Display Name', 'stripe-id')
		->price(10)
		->features([
			//
		]);

```

### Yearly Plans

[](#yearly-plans)

To define a yearly plan, simply call the `yearly` method on the plan definition:

```
	Spark::plan('Basic', 'basic-yearly')
		->price(100)
		->yearly()
		->features(
			//
		);

```

### Coupons

[](#coupons)

To use a coupon, simply create the coupon on Stripe and access the `/register` route with a `coupon` query string variable that matches the ID of the coupon on Stripe.

```
    http://stripe.app/register?coupon=code

```

Site-wide promotions may be run using the `Spark::promotion` method within your `SparkServiceProvider`:

```
	Spark::promotion('coupon-code');

```

Teams
-----

[](#teams)

To enable teams, simply use the `CanJoinTeams` trait on your `User` model. The trait has already been imported in the top of the file, so you only need to add it to the model itself:

```
	class User extends Model implements TwoFactorAuthenticatableContract,
	                                    BillableContract,
	                                    CanResetPasswordContract
	{
	    use Billable, CanJoinTeams, CanResetPassword, TwoFactorAuthenticatable;
	}

```

Once teams are enabled, a team name will be required during registration, and a `Teams` tab will be available in the user settings dashboard.

### Roles

[](#roles)

Team roles may be defined in the `customizeRoles` method of the `SparkServiceProvider`.

Customizing Spark Views
-----------------------

[](#customizing-spark-views)

You may publish Spark's common Blade views by using the `vendor:publish` command:

```
	php artisan vendor:publish --tag=spark-basics

```

All published views will be placed in `resources/views/vendor/spark`.

If you would like to publish every Spark view, you may use the `spark-full` tag:

```
	php artisan vendor:publish --tag=spark-full

```

Customizing Spark JavaScript
----------------------------

[](#customizing-spark-javascript)

The `resources/assets/js/core/components.js` file contains the statements to load some common Spark Vue components. [Vue](http://vuejs.org) is the JavaScript framework used by the Spark registration and settings screens.

You are free to change any of these require statements to load your own Vue component for a given screen. Most likely, you will want to copy the original component as a starting point for your customization.

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance18

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity41

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.

### Community

Maintainers

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

---

Top Contributors

[![iangcarroll](https://avatars.githubusercontent.com/u/1280719?v=4)](https://github.com/iangcarroll "iangcarroll (6 commits)")[![nkkollaw](https://avatars.githubusercontent.com/u/999994?v=4)](https://github.com/nkkollaw "nkkollaw (6 commits)")

---

Tags

laravellaravel-sparkphpphp7saas

### Embed Badge

![Health badge](/badges/nkkollaw-spark/health.svg)

```
[![Health](https://phpackages.com/badges/nkkollaw-spark/health.svg)](https://phpackages.com/packages/nkkollaw-spark)
```

###  Alternatives

[laravel/telescope

An elegant debug assistant for the Laravel framework.

5.2k67.8M190](/packages/laravel-telescope)[spiral/roadrunner

RoadRunner: High-performance PHP application server and process manager written in Go and powered with plugins

8.4k12.2M84](/packages/spiral-roadrunner)[nolimits4web/swiper

Most modern mobile touch slider and framework with hardware accelerated transitions

41.8k177.2k1](/packages/nolimits4web-swiper)[laravel/dusk

Laravel Dusk provides simple end-to-end testing and browser automation.

1.9k36.7M256](/packages/laravel-dusk)[laravel/prompts

Add beautiful and user-friendly forms to your command-line applications.

708181.8M591](/packages/laravel-prompts)[cakephp/chronos

A simple API extension for DateTime.

1.4k47.7M121](/packages/cakephp-chronos)

PHPackages © 2026

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