Laravel Spark, the banner product of Laravel PHP framework, exhibits two sides of the same story. On one side it ensures ease of formulation but on the other side discomfort of developing the software parts for a service application.
Spark sets the platform for the subscription application services like billing, invoices, password reset, profile photos, authentication, etc. One may even call it a tool functioned to accelerate the pace at which SaaS application spins. Since most of the SaaSes are equipped with majorly similar components like user accounts, payment plans, stripe-based payments, etc. Sparklets you jump over the hassle of recreating the functionalities with every novel Laravel app created and instead benefit you with a bonus of free SaaS landing pages to boot.
LARAVEL SPARK INSTALLATION
Ease of installation is what Spark boasts of. One just needs to type the command
But before running the command, one needs to ensure that his or her system is equipped with Global Composer Bin. This will ensure that when Spark is run through Command, it gets detected automatically from the folder.
Now, it’s time to for Laravel installation. So,
And finally, Spark installation.
This is followed by all the prompts wherein YES should be your only answer.
These commands can also be prompted manually:
- php artisan migrate
- npm install
- gulp
Finally, go to the .env file and set up the stripe token and Authy key. The author key is a 2FA system (2 Factor Authentication), for ensuring the protection of logins and also one can sign up for free API key.
CHANGES BROUGHT IN BY SPARK
- Changes in the default view. For example: Instead of showing welcome, it now shows spark:: welcome
- Updated user model to billable and 2FA (Factor Authentication)
- Addition of stripe related fields to the user.
- Addition of CashierServiceProvider and StripeServiceProvider
- Changing password reset email to Spark password reset email.
- Up gradation of creating a table to include Cashier, Team, and Two-Factor Auth columns.
- Pulling in of app.js into Elixir and addition of some Spark-specific Sass variables to app.scss.
NEW FILES FROM SPARK
- app/Providers/SparkServiceProvider.php
- $invoiceWith ( for customization of invoices created by Spark)
- customizeRegistration() (to add validation requirements and customize the user creation process)
- customizeRoles()( For role setting)
- customizeSettingsTabs() (For customizing default settings)
- customizeProfileUpdates() (For customizing the user update process)
- customizeSubscriptionPlans() ( For modifying the time plans into yearly, monthly, etc)
- app/Team.php
- database/migrations/DATE_create_teams_table.php
- resources/assets/js/app.js
- resources/assets/js/spark/components.js
- resources/views/home.blade.php
- md ( For terms of service page)
SPARK LOGIN PAGE
SPARK PASSWORD RESET PAGE
SPARK REGISTRATION PAGE
TERMS OF SERVICE PAGE
AUTHENTICATION
Laravel Spark comes built in with an extensive authentication framework that is interspersed in the software application, easily. It supports two-factor authentication (2FA).
PAYMENTS
Add a Stripe. Add a free monthly or yearly plan and finally add them to SparkServiceProvider.
Tejas Patel
Tejas Patel is a Co-Founder of Concetto Labs, I have 12+ years of professional experience in building high quality and scalable web applications using FullStack & PHP with its different frameworks.