Download the PHP package brunocfalcao/flame without Composer

On this page you can find all versions of the php package brunocfalcao/flame. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package flame

Latest Stable Version License Style CI

About Flame

Flame is a Feature Development-driven framework that will improve the way you structure and develop your Laravel application features.

This free package will allow you to:

Why Flame

I've built Flame because I was starting to have medium size web apps (like Laraning or Laraflash) with a lot of Blade views, Blade Components, etc. It was starting to be difficult to organize my features in a way that I could load data inside those views given for the respective controller action that I was running at a certain moment.

A thought came to me: "What if I have a way to know automatically what actions am I running and then automatically load my graphical layout accordingly to that action, reusing the layout and not just create more and more views?"

That's where Flame started. Flame will automate this behaviour for you. Let's see how.

Installation

You can install this package via composer using this command:

The package will automatically register itself (using auto-discover).

Next step is to publish the flame.php configuration file into your config folder.

All done! :smile:

How it works

The flame.php configuration file already have an entry to put all your features in the App\Flame\Features namespace.

Create a new feature using the following command:

Select the "flame" namespace group, then create a "Manage Cars" feature, and the action "index". At the end, the route example that the command give you will be:

:point_right: Copy+Paste this route example to your web.php file (or other route file you're using with web middleware).
:floppy_disk: A new folder "ManagesCars" is created inside your "app\Flame\Features" folder.

Feature "Manage Cars" file structure

Let's now see what was scaffolded on each of those files. The magic starts :heart: !

Controllers/ManageCarsController.php

:tada: This is where you mapped your route file You just need to return the flame() helper so Flame will load your respective Panel and Twinkles for the "index" action. Meaning, if your Twinkles have the "index" action defined, they will run prior to the Panel content rendering.

In case you don't have a Panel with the same name, then it will fall back to default.blade.php. If you have a Panel with this name, it will be loaded for all of your actions that don't have a specific Panel action. Double sweet!

Panels/welcome.blade.php

The Twinkle works like an "intelligent widget". It will render content defined in your Twinkes/ folder, given the argument passed. In this case, the Twinkle will load the "welcome.blade.php".

BUT! More magic happens :heart: ...

Before rendering the Twinkle, it will try to find its own respective controller (studly case) name. In our case we do have it in the Controllers/WelcomeController.php, so let's check it:

Controllers/WelcomeController.php

Since there is the same action defined for the current route action running, it will use reflection to run the method and pass the data as an array. So you can then use it inside your Twinkle as a Blade variable. Meaning on this case, it will run the "index" method and return the data to the Welcome Twinkle.

The Twinkle methods also work with implicit binding. Meaning if you define your arguments from the route parameters they will be dynamically injected into your method arguments!

Current development status

Getting started

Flame creates a demo route on your /flame url. You can try it and should see:

This means that you have can see the Demo feature located in the Brunocfalcao\Flame\Features\Demo namespace.

Creating your first Feature

Simple as this. Just write the following command:

Contributing

At the moment you don't need to contribute since Flame is still in development.

License

Waygou Flame is open-sourced software licensed under the MIT license.


All versions of flame with dependencies

PHP Build Version
Package Version
Requires php Version ^7.2
illuminate/support Version ^5.8|^6.0|^7.0|^8.0
brunocfalcao/helpers Version ^1.0
laravel/helpers Version ^1.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package brunocfalcao/flame contains the following files

Loading the files please wait ....