From 5c4a60dbd9be16d54e6a9d456d06ea7a03c9ca94 Mon Sep 17 00:00:00 2001 From: Nafies Luthfi Date: Sat, 30 Jan 2021 22:10:16 +0800 Subject: [PATCH] Update the docs page --- 404.html | 2 +- docs/about/index.html | 104 ++++++++++++++++ docs/available-commands/index.html | 114 ++++++++++++++++++ docs/config-file/index.html | 130 ++++++++++++++++++++ docs/for-api/index.html | 122 +++++++++++++++++++ docs/generated-testing-suite/index.html | 122 +++++++++++++++++++ docs/how-to-install/index.html | 122 +++++++++++++++++++ docs/how-to-use/index.html | 190 ++++++++++++++++++++++++++++++ docs/index.html | 22 +--- docs/index.xml | 17 ++- docs/license/index.html | 104 ++++++++++++++++ docs/model-attributes/index.html | 104 ++++++++++++++++ docs/publishing-the-stub-files/index.html | 106 +++++++++++++++++ docs/screenshots/index.html | 104 ++++++++++++++++ docs/views/index.html | 104 ++++++++++++++++ images/simple-crud-generator-01.jpg | Bin 0 -> 105035 bytes images/simple-crud-generator-02.jpg | Bin 0 -> 81418 bytes index.html | 2 +- index.json | 2 +- index.xml | 29 +++-- sitemap.xml | 2 +- 21 files changed, 1468 insertions(+), 34 deletions(-) create mode 100644 docs/about/index.html create mode 100644 docs/available-commands/index.html create mode 100644 docs/config-file/index.html create mode 100644 docs/for-api/index.html create mode 100644 docs/generated-testing-suite/index.html create mode 100644 docs/how-to-install/index.html create mode 100644 docs/how-to-use/index.html create mode 100644 docs/license/index.html create mode 100644 docs/model-attributes/index.html create mode 100644 docs/publishing-the-stub-files/index.html create mode 100644 docs/screenshots/index.html create mode 100644 docs/views/index.html create mode 100644 images/simple-crud-generator-01.jpg create mode 100644 images/simple-crud-generator-02.jpg diff --git a/404.html b/404.html index d94cffa..ad7bc38 100644 --- a/404.html +++ b/404.html @@ -82,6 +82,6 @@ var dropdownItems=searchResultsContainer.querySelectorAll('.dd-item');dropdownIt menuTitle?menuTitle.forEach(function(elem){elem.onclick=function(){closeDrawer();localStorage.setItem('isDrawerOpen','false');}}):null;
Page not found
\ No newline at end of file diff --git a/docs/about/index.html b/docs/about/index.html new file mode 100644 index 0000000..363fb9f --- /dev/null +++ b/docs/about/index.html @@ -0,0 +1,104 @@ +About this package – Simple CRUD Generator for Laravel

About this package

About this package

This package contains artisan make:crud commands to create a simple CRUD feature with test classes on our Laravel 5.5 (and later) application. This package is fairly simple, to boost test-driven development method on our laravel application.

With this package installed on local environment, we can use (e.g.) php artisan make:crud Vehicle command to generate some files :

  • App\Models\Vehicle.php eloquent model
  • xxx_create_vehicles_table.php migration file
  • VehicleController.php
  • index.blade.php and forms.blade.php view file in resources/views/vehicles directory
  • resources/lang/vehicle.php lang file
  • VehicleFactory.php model factory file
  • VehiclePolicy.php model policy file in app/Policies directory
  • ManageVehiclesTest.php feature test class in tests/Feature directory
  • VehicleTest.php unit test class in tests/Unit/Models directory
  • VehiclePolicyTest.php unit test class in tests/Unit/Policies directory

It will update some file :

  • Update routes/web.php to add vehicles resource route
  • Update app/providers/AuthServiceProvider.php to add Vehicle model Policy class in $policies property

It will also create this file if it not exists :

  • resources/lang/app.php lang file if it not exists
  • tests/BrowserKitTest.php base Feature TestCase class if it not exists

Main purpose

The main purpose of this package is for faster Test-driven Development, it generates model CRUD scaffolds complete with Testing Classes which will use Laravel Browserkit Testing package and PHPUnit.

What's on this Page
\ No newline at end of file diff --git a/docs/available-commands/index.html b/docs/available-commands/index.html new file mode 100644 index 0000000..5b27eef --- /dev/null +++ b/docs/available-commands/index.html @@ -0,0 +1,114 @@ +Available Commands – Simple CRUD Generator for Laravel

Available Commands

Available Commands

Bootstrap 4 Views

Full CRUD feature with tests

1
+
$ php artisan make:crud ModelName
+

Simple CRUD feature with tests

1
+
$ php artisan make:crud-simple ModelName
+

Bootstrap 3 views

Full CRUD feature with tests

1
+
$ php artisan make:crud ModelName --bs3
+

Simple CRUD feature with tests

1
+
$ php artisan make:crud-simple ModelName --bs3
+

API CRUD feature with tests

1
+
$ php artisan make:crud-api ModelName
+
\ No newline at end of file diff --git a/docs/config-file/index.html b/docs/config-file/index.html new file mode 100644 index 0000000..e0ae5ae --- /dev/null +++ b/docs/config-file/index.html @@ -0,0 +1,130 @@ +Config File – Simple CRUD Generator for Laravel

Config File

You can configure your own by publishing the config file:

1
+
$ php artisan vendor:publish --provider="Luthfi\CrudGenerator\ServiceProvider" --tag=config
+

That will generate config/simple-crud.php file.

By default, this package have some configuration:

 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+
<?php
+
+return [
+    // The master view layout that generated views will extends
+    'default_layout_view' => 'layouts.app',
+
+    // The base test case class path for generated testing classes
+    'base_test_path' => 'tests/BrowserKitTest.php',
+
+    // The base test class full name
+    'base_test_class' => 'Tests\BrowserKitTest',
+];
+
What's on this Page
\ No newline at end of file diff --git a/docs/for-api/index.html b/docs/for-api/index.html new file mode 100644 index 0000000..62b0f88 --- /dev/null +++ b/docs/for-api/index.html @@ -0,0 +1,122 @@ +For API – Simple CRUD Generator for Laravel

For API

If we want to generate API Controller with feature tests, we use following command :

1
+
$ php artisan make:crud-api Vehicle
+

By default, we use Laravel Token Based Authentication, so we need to update our user model.

  1. Add api_token column on our users_table_migration.
  2. Add api_token as fillable property on User model.
  3. Add api_token field on our UserFactory.

API Usage

The generated API is a REST API, using GET and POST verbs, with a URI of /api/modelname.

Example code for calling the generated API, using Guzzle:

// Read data a specific Vehicle record...
+$uri = 'http://your-domain.com/api/vehicles/'.$vehicleID;
+$headers = ['Authorization' => 'Bearer '.$apiToken];
+
+$client = new \GuzzleHttp\Client();
+$res = $client->request('GET', $uri, ['headers' => $headers]);
+

// Create a new Vehicle record...
+$uri = 'http://your-domain.com/api/vehicles';
+$headers = ['Authorization' => 'Bearer '.$apiToken];
+$payload = json_encode([
+    'title' => 'Vehicle Name 1',
+    'description' => 'Vehicle Description 1',
+]);
+
+$client = new \GuzzleHttp\Client();
+$res = $client->request('POST', $uri, ['body' => $payload, 'headers' => $headers]);
+

The generated functional tests will give you examples of how to adapt this code for other call types.

What's on this Page
\ No newline at end of file diff --git a/docs/generated-testing-suite/index.html b/docs/generated-testing-suite/index.html new file mode 100644 index 0000000..4e42f67 --- /dev/null +++ b/docs/generated-testing-suite/index.html @@ -0,0 +1,122 @@ +Generated Testing Suite – Simple CRUD Generator for Laravel

Generated Testing Suite

Generated Testing Suite

Next, let us try the generated testing suite. To use the generated testing classes, we can set the database environment using in-memory database SQLite. Open phpunit.xml. Add two lines below on the env :

1
+2
+3
+4
+5
+6
+7
+8
+
<phpunit>
+    <!-- ..... -->
+    <php>
+        <!-- ..... -->
+        <server name="DB_CONNECTION" value="sqlite"/>
+        <server name="DB_DATABASE" value=":memory:"/>
+    </php>
+</phpunit>
+

Then run PHPUnit

1
+
$ vendor/bin/phpunit
+

All tests should be passed.

Generated Testing Suite on Simple CRUD Generator

What's on this Page
\ No newline at end of file diff --git a/docs/how-to-install/index.html b/docs/how-to-install/index.html new file mode 100644 index 0000000..eadd7ff --- /dev/null +++ b/docs/how-to-install/index.html @@ -0,0 +1,122 @@ +How to install – Simple CRUD Generator for Laravel

How to install

For Laravel 8.x

1
+2
+
# Get the package
+$ composer require luthfi/simple-crud-generator:^2.0
+

For Laravel 5.6 to 7.x

1
+2
+
# Get the package
+$ composer require luthfi/simple-crud-generator:^1.0
+

For Laravel 5.5

To use this package on laravel 5.5, we need to add the package (with browserkit) within require-dev in composer.json file, like so :

1
+2
+3
+4
+5
+
# Install required package for laravel/browser-kit-testing
+$ composer require symfony/css-selector:^3.0
+
+# Get the package
+$ composer require luthfi/simple-crud-generator 1.2.* --dev
+
\ No newline at end of file diff --git a/docs/how-to-use/index.html b/docs/how-to-use/index.html new file mode 100644 index 0000000..fe708e6 --- /dev/null +++ b/docs/how-to-use/index.html @@ -0,0 +1,190 @@ +How to use – Simple CRUD Generator for Laravel

How to use

Just type in terminal $ php artisan make:crud ModelName command, it will create simple Laravel CRUD files of given model name completed with tests.

For example we want to create CRUD for ‘App\Models\Vehicle’ model.

 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+
$ php artisan make:crud-simple Vehicle
+
+Vehicle resource route generated on routes/web.php.
+Vehicle model generated.
+Vehicle table migration generated.
+VehicleController generated.
+Vehicle index view file generated.
+Vehicle form view file generated.
+lang/app.php generated.
+vehicle lang files generated.
+Vehicle model factory generated.
+Vehicle model policy generated.
+AuthServiceProvider class has been updated.
+BrowserKitTest generated.
+ManageVehiclesTest generated.
+VehicleTest (model) generated.
+VehiclePolicyTest (model policy) generated.
+CRUD files generated successfully!
+

Make sure we have set database credential on .env file, then :

1
+2
+
$ php artisan migrate
+$ php artisan serve
+

Then visit our application url: http://localhost:8000/vehicles.


Usage on Fresh Install Laravel 8.x

In this example, we are using the laravel installer package to install new laravel project.

 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+
# This is example commands for Ubuntu users.
+$ laravel new project-directory
+$ cd project-directory
+$ composer require laravel/ui
+$ php artisan ui bootstrap --auth
+$ npm install && npm run dev # Might need to run twice, minimum requirement: NodeJS v12.x
+$ vim .env # Edit your .env file to update database configuration
+
+# Install the package
+$ composer require luthfi/simple-crud-generator:^2.0
+
+# I really suggest "git commit" your project right before you run the make:crud command
+$ php artisan make:crud Vehicle # Model name in singular
+
+$ php artisan migrate
+$ php artisan serve
+# Visit your route http://127.0.0.1:8000
+# Register as a new user
+# Visit your route http://127.0.0.1:8000/vehicles
+
+# Run the unit tests
+$ vim phpunit.xml # Remove comments on the DB_CONNECTION and DB_DATABASE lines
+$ vendor/bin/phpunit
+
\ No newline at end of file diff --git a/docs/index.html b/docs/index.html index 4cf2fe9..d3b6bda 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,4 +1,4 @@ -Docs – Simple CRUD Generator for Laravel

Simple CRUD Generator

Laravel Simple CRUD Generator

Need faster TDD in Laravel project? This is a simple CRUD generator complete with automated testing suite.

About this package
This package contains artisan make:crud commands to create a simple CRUD feature with test classes on our Laravel application.
How to install
Install the package with composer.
How to use
How ot use the package.
Available Commands
Available commands and options.
Model Attribute/Column
Model attributes or column generated by the package.
Views
The generated views are using bootstrap frontend framework.
For API
Generates API endpoints for model CRUD.
Config File
Configure the package with config file.
Publishing the stub files
Use your own stub files.
Screenshots
Some screenshots of the generated CRUD feature.
Generated Testing Suite
Some screenshots of the generated CRUD feature.
License
Some screenshots of the generated CRUD feature.
\ No newline at end of file diff --git a/docs/model-attributes/index.html b/docs/model-attributes/index.html new file mode 100644 index 0000000..b79a805 --- /dev/null +++ b/docs/model-attributes/index.html @@ -0,0 +1,104 @@ +Model Attribute/Column – Simple CRUD Generator for Laravel

Model Attribute/Column

Model Attribute/Column

The Model and table will only have 2 pre-definded attributes or columns : title and description on each generated model and database table. You can continue working on other column on the table.

What's on this Page
\ No newline at end of file diff --git a/docs/publishing-the-stub-files/index.html b/docs/publishing-the-stub-files/index.html new file mode 100644 index 0000000..d59e28a --- /dev/null +++ b/docs/publishing-the-stub-files/index.html @@ -0,0 +1,106 @@ +Publishing the stub files – Simple CRUD Generator for Laravel

Publishing the stub files

Publishing the stub files

Stub files is the templates which we use to generate the code for each model classes and files. We can customize the stub files as we needed by publishing them to our project directory.

1
+
$ php artisan vendor:publish --provider="Luthfi\CrudGenerator\ServiceProvider" --tag=stubs
+

That will generate stub files on stubs/simple-crud directory. Now we can change some stub files based on our project needs.

What's on this Page
\ No newline at end of file diff --git a/docs/screenshots/index.html b/docs/screenshots/index.html new file mode 100644 index 0000000..a7ffb4b --- /dev/null +++ b/docs/screenshots/index.html @@ -0,0 +1,104 @@ +Screenshots – Simple CRUD Generator for Laravel
\ No newline at end of file diff --git a/docs/views/index.html b/docs/views/index.html new file mode 100644 index 0000000..944aa2a --- /dev/null +++ b/docs/views/index.html @@ -0,0 +1,104 @@ +Views – Simple CRUD Generator for Laravel

Views

Bootstrap 4 Views

The generated view files use Bootstrap 4 by default (for Laravel 5.6 and later).

Bootstrap 3 Views

We can also generates views that use Bootstrap 3 with --bs3 command option, eg for Laravel version 5.5.

The Default Layout View

You need a resources/views/layouts/app.blade.php view file, simply create one with php artisan make:auth command. You can change this configuration via the config/simple-crud.php file.

\ No newline at end of file diff --git a/images/simple-crud-generator-01.jpg b/images/simple-crud-generator-01.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f609c3162f9abf602e1c9e9a744acdfe0ebabffe GIT binary patch literal 105035 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 I{B8EX0Ntb##sB~S literal 0 HcmV?d00001 diff --git a/images/simple-crud-generator-02.jpg b/images/simple-crud-generator-02.jpg new file mode 100644 index 0000000000000000000000000000000000000000..728addd40ceabb499f8ac388ace6deadb85bded8 GIT binary patch literal 81418 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 z
Site Landing Page image
Simple CRUD Generator
A Laravel CRUD generator package, complete with automated testing suite.
diff --git a/index.json b/index.json index 1fa8c00..c2bcfe0 100644 --- a/index.json +++ b/index.json @@ -1 +1 @@ -[{"content":"Markdown here\n","description":"test post","id":0,"section":"updates","tags":null,"title":"May 2019","uri":"https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_may/"},{"content":"Markdown here\n","description":"test post","id":1,"section":"docs","tags":null,"title":"Basic Usage","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/basicusage/"},{"content":"Markdown here\n","description":"test post","id":2,"section":"updates","tags":null,"title":"April 2019","uri":"https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_april/"},{"content":"Markdown here\n","description":"test post","id":3,"section":"docs","tags":null,"title":"Configuration","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/configuration/"},{"content":"Markdown here\n","description":"test post","id":4,"section":"updates","tags":null,"title":"March 2019","uri":"https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_march/"},{"content":"Markdown here\n","description":"test post","id":5,"section":"docs","tags":null,"title":"Installation","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/installation/"},{"content":"Markdown here\n","description":"test post","id":6,"section":"updates","tags":null,"title":"February 2019","uri":"https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_february/"},{"content":"Markdown here\n","description":"test post","id":7,"section":"docs","tags":null,"title":"Quick Start","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/quickstart/"},{"content":"Markdown here\n","description":"test post","id":8,"section":"updates","tags":null,"title":"January 2019","uri":"https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_january/"},{"content":"Markdown here\n","description":"test post","id":13,"section":"docs","tags":null,"title":"Related content","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/relatedcontent/"},{"content":"Markdown here\n","description":"test post","id":14,"section":"docs","tags":null,"title":"Page Resources","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/pageresources/"},{"content":"Markdown here\n","description":"test post","id":15,"section":"docs","tags":null,"title":"Page Bundles","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/pagebundles/"},{"content":"Markdown here\n","description":"test post","id":16,"section":"docs","tags":null,"title":"Content Formats","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/contentfortmats/"},{"content":"Markdown here\n","description":"test post","id":17,"section":"docs","tags":null,"title":"Image Processing","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/imageprocessing/"},{"content":"Markdown here\n","description":"test post","id":18,"section":"docs","tags":null,"title":"Shortcodes","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/contentmanagement/shortcodes/"},{"content":"Markdown here\n","description":"test post","id":19,"section":"docs","tags":null,"title":"Frontmatter","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/contentmanagement/frontmatter/"},{"content":"Lorem est tota propiore conpellat pectoribus de\npectora summo. Redit teque digerit hominumque toris verebor lumina non cervice\nsubde tollit usus habet Arctonque, furores quas nec ferunt. Quoque montibus nunc\ncaluere tempus\nThis article offers a sample of basic Markdown syntax that can be used in Hugo content files, also it shows whether basic HTML elements are decorated with CSS in a Hugo theme.\n Headings The following HTML \u0026lt;h1\u0026gt;—\u0026lt;h6\u0026gt; elements represent six levels of section headings. \u0026lt;h1\u0026gt; is the highest section level while \u0026lt;h6\u0026gt; is the lowest.\nH1 H2 H3 H4 H5 H6 Paragraph Xerum, quo qui aut unt expliquam qui dolut labo. Aque venitatiusda cum, voluptionse latur sitiae dolessi aut parist aut dollo enim qui voluptate ma dolestendit peritin re plis aut quas inctum laceat est volestemque commosa as cus endigna tectur, offic to cor sequas etum rerum idem sintibus eiur? Quianimin porecus evelectur, cum que nis nust voloribus ratem aut omnimi, sitatur? Quiatem. Nam, omnis sum am facea corem alique molestrunt et eos evelece arcillit ut aut eos eos nus, sin conecerem erum fuga. Ri oditatquam, ad quibus unda veliamenimin cusam et facea ipsamus es exerum sitate dolores editium rerore eost, temped molorro ratiae volorro te reribus dolorer sperchicium faceata tiustia prat.\nItatur? Quiatae cullecum rem ent aut odis in re eossequodi nonsequ idebis ne sapicia is sinveli squiatum, core et que aut hariosam ex eat.\nBlockquotes The blockquote element represents content that is quoted from another source, optionally with a citation which must be within a footer or cite element, and optionally with in-line changes such as annotations and abbreviations.\nBlockquote without attribution Tiam, ad mint andaepu dandae nostion secatur sequo quae.\nNote that you can use Markdown syntax within a blockquote.\n Blockquote with attribution Don\u0026rsquo;t communicate by sharing memory, share memory by communicating.\n— Rob Pike1\n Tables Tables aren\u0026rsquo;t part of the core Markdown spec, but Hugo supports supports them out-of-the-box.\n Name Age Bob 27 Alice 23 Inline Markdown within tables Inline  Markdown  In  Table italics bold strikethrough  code Code Blocks Code block with backticks html \u0026lt;!DOCTYPE html\u0026gt; \u0026lt;html lang=\u0026quot;en\u0026quot;\u0026gt; \u0026lt;head\u0026gt; \u0026lt;meta charset=\u0026quot;UTF-8\u0026quot;\u0026gt; \u0026lt;title\u0026gt;Example HTML5 Document\u0026lt;/title\u0026gt; \u0026lt;/head\u0026gt; \u0026lt;body\u0026gt; \u0026lt;p\u0026gt;Test\u0026lt;/p\u0026gt; \u0026lt;/body\u0026gt; \u0026lt;/html\u0026gt; Code block indented with four spaces \u0026lt;!DOCTYPE html\u0026gt; \u0026lt;html lang=\u0026quot;en\u0026quot;\u0026gt; \u0026lt;head\u0026gt; \u0026lt;meta charset=\u0026quot;UTF-8\u0026quot;\u0026gt; \u0026lt;title\u0026gt;Example HTML5 Document\u0026lt;/title\u0026gt; \u0026lt;/head\u0026gt; \u0026lt;body\u0026gt; \u0026lt;p\u0026gt;Test\u0026lt;/p\u0026gt; \u0026lt;/body\u0026gt; \u0026lt;/html\u0026gt; Code block with Hugo\u0026rsquo;s internal highlight shortcode 1 2 3 4 5 6 7 8 9 10 \u0026lt;!DOCTYPE html\u0026gt; \u0026lt;html lang=\u0026#34;en\u0026#34;\u0026gt; \u0026lt;head\u0026gt; \u0026lt;meta charset=\u0026#34;UTF-8\u0026#34;\u0026gt; \u0026lt;title\u0026gt;Example HTML5 Document\u0026lt;/title\u0026gt; \u0026lt;/head\u0026gt; \u0026lt;body\u0026gt; \u0026lt;p\u0026gt;Test\u0026lt;/p\u0026gt; \u0026lt;/body\u0026gt; \u0026lt;/html\u0026gt; List Types Ordered List First item Second item Third item Unordered List List item Another item And another item Nested list Item First Sub-item Second Sub-item Other Elements — abbr, sub, sup, kbd, mark GIF is a bitmap image format.\nH2O\nXn + Yn = Zn\nPress CTRL+ALT+Delete to end the session.\nMost salamanders are nocturnal, and hunt for insects, worms, and other small creatures.\n The above quote is excerpted from Rob Pike\u0026rsquo;s talk during Gopherfest, November 18, 2015. \u0026#x21a9;\u0026#xfe0e;\n ","description":"","id":20,"section":"blog","tags":["markdown","css","html","themes"],"title":"Markdown Syntax Guide","uri":"https://nafiesl.github.io/SimpleCrudGenerator/blog/markdown-syntax/"},{"content":"This article offers a sample of basic Markdown syntax that can be used in Hugo content files, also it shows whether basic HTML elements are decorated with CSS in a Hugo theme.\nHeadings The following HTML \u0026lt;h1\u0026gt;—\u0026lt;h6\u0026gt; elements represent six levels of section headings. \u0026lt;h1\u0026gt; is the highest section level while \u0026lt;h6\u0026gt; is the lowest.\nH1 H2 H3 H4 H5 H6 Paragraph Xerum, quo qui aut unt expliquam qui dolut labo. Aque venitatiusda cum, voluptionse latur sitiae dolessi aut parist aut dollo enim qui voluptate ma dolestendit peritin re plis aut quas inctum laceat est volestemque commosa as cus endigna tectur, offic to cor sequas etum rerum idem sintibus eiur? Quianimin porecus evelectur, cum que nis nust voloribus ratem aut omnimi, sitatur? Quiatem. Nam, omnis sum am facea corem alique molestrunt et eos evelece arcillit ut aut eos eos nus, sin conecerem erum fuga. Ri oditatquam, ad quibus unda veliamenimin cusam et facea ipsamus es exerum sitate dolores editium rerore eost, temped molorro ratiae volorro te reribus dolorer sperchicium faceata tiustia prat.\nItatur? Quiatae cullecum rem ent aut odis in re eossequodi nonsequ idebis ne sapicia is sinveli squiatum, core et que aut hariosam ex eat.\nBlockquotes The blockquote element represents content that is quoted from another source, optionally with a citation which must be within a footer or cite element, and optionally with in-line changes such as annotations and abbreviations.\nBlockquote without attribution Tiam, ad mint andaepu dandae nostion secatur sequo quae.\nNote that you can use Markdown syntax within a blockquote.\n Blockquote with attribution Don\u0026rsquo;t communicate by sharing memory, share memory by communicating.\n— Rob Pike1\n Tables Tables aren\u0026rsquo;t part of the core Markdown spec, but Hugo supports supports them out-of-the-box.\n Name Age Bob 27 Alice 23 Inline Markdown within tables Inline  Markdown  In  Table italics bold strikethrough  code Code Blocks Code block with backticks html \u0026lt;!DOCTYPE html\u0026gt; \u0026lt;html lang=\u0026quot;en\u0026quot;\u0026gt; \u0026lt;head\u0026gt; \u0026lt;meta charset=\u0026quot;UTF-8\u0026quot;\u0026gt; \u0026lt;title\u0026gt;Example HTML5 Document\u0026lt;/title\u0026gt; \u0026lt;/head\u0026gt; \u0026lt;body\u0026gt; \u0026lt;p\u0026gt;Test\u0026lt;/p\u0026gt; \u0026lt;/body\u0026gt; \u0026lt;/html\u0026gt; Code block indented with four spaces \u0026lt;!DOCTYPE html\u0026gt; \u0026lt;html lang=\u0026quot;en\u0026quot;\u0026gt; \u0026lt;head\u0026gt; \u0026lt;meta charset=\u0026quot;UTF-8\u0026quot;\u0026gt; \u0026lt;title\u0026gt;Example HTML5 Document\u0026lt;/title\u0026gt; \u0026lt;/head\u0026gt; \u0026lt;body\u0026gt; \u0026lt;p\u0026gt;Test\u0026lt;/p\u0026gt; \u0026lt;/body\u0026gt; \u0026lt;/html\u0026gt; Code block with Hugo\u0026rsquo;s internal highlight shortcode 1 2 3 4 5 6 7 8 9 10 \u0026lt;!DOCTYPE html\u0026gt; \u0026lt;html lang=\u0026#34;en\u0026#34;\u0026gt; \u0026lt;head\u0026gt; \u0026lt;meta charset=\u0026#34;UTF-8\u0026#34;\u0026gt; \u0026lt;title\u0026gt;Example HTML5 Document\u0026lt;/title\u0026gt; \u0026lt;/head\u0026gt; \u0026lt;body\u0026gt; \u0026lt;p\u0026gt;Test\u0026lt;/p\u0026gt; \u0026lt;/body\u0026gt; \u0026lt;/html\u0026gt; List Types Ordered List First item Second item Third item Unordered List List item Another item And another item Nested list Item First Sub-item Second Sub-item Other Elements — abbr, sub, sup, kbd, mark GIF is a bitmap image format.\nH2O\nXn + Yn = Zn\nPress CTRL+ALT+Delete to end the session.\nMost salamanders are nocturnal, and hunt for insects, worms, and other small creatures.\n The above quote is excerpted from Rob Pike\u0026rsquo;s talk during Gopherfest, November 18, 2015. \u0026#x21a9;\u0026#xfe0e;\n ","description":"Sample article showcasing basic Markdown syntax and formatting for HTML elements.","id":21,"section":"docs","tags":["markdown","css","html","themes"],"title":"Section","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/contentmanagement/sections/"},{"content":"Lorem est tota propiore conpellat pectoribus de\npectora summo. Redit teque digerit hominumque toris verebor lumina non cervice\nsubde tollit usus habet Arctonque, furores quas nec ferunt. Quoque montibus nunc\ncaluere tempus\nHugo ships with several Built-in Shortcodes for rich content, along with a Privacy Config and a set of Simple Shortcodes that enable static and no-JS versions of various social media embeds.\n YouTube Privacy Enhanced Shortcode Twitter Simple Shortcode .twitter-tweet { font: 14px/1.45 -apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Oxygen-Sans,Ubuntu,Cantarell,\"Helvetica Neue\",sans-serif; border-left: 4px solid #2b7bb9; padding-left: 1.5em; color: #555; } .twitter-tweet a { color: #2b7bb9; text-decoration: none; } blockquote.twitter-tweet a:hover, blockquote.twitter-tweet a:focus { text-decoration: underline; } “In addition to being more logical, asymmetry has the advantage that its complete appearance is far more optically effective than symmetry.”\n— Jan Tschichold pic.twitter.com/gcv7SrhvJb\n\u0026mdash; Graphic Design History (@DesignReviewed) January 17, 2019 Vimeo Simple Shortcode .__h_video { position: relative; padding-bottom: 56.23%; height: 0; overflow: hidden; width: 100%; background: #000; } .__h_video img { width: 100%; height: auto; color: #000; } .__h_video .play { height: 72px; width: 72px; left: 50%; top: 50%; margin-left: -36px; margin-top: -36px; position: absolute; cursor: pointer; } ","description":"","id":22,"section":"blog","tags":["shortcodes","privacy"],"title":"Rich Content","uri":"https://nafiesl.github.io/SimpleCrudGenerator/blog/rich-content/"},{"content":"Lorem est tota propiore conpellat pectoribus de\npectora summo. Redit teque digerit hominumque toris verebor lumina non cervice\nsubde tollit usus habet Arctonque, furores quas nec ferunt. Quoque montibus nunc\ncaluere tempus\ninhospita parcite confusaque translucet patri vestro qui optatis\nlumine cognoscere flos nubis! Fronde ipsamque patulos Dryopen deorum.\n Exierant elisi ambit vivere dedere Duce pollice Eris modo Spargitque ferrea quos palude Rursus nulli murmur; hastile inridet ut ab gravi sententia! Nomine potitus\nsilentia flumen, sustinet placuit petis in dilapsa erat sunt. Atria\ntractus malis.\n Comas hunc haec pietate fetum procerum dixit Post torum vates letum Tiresia Flumen querellas Arcanaque montibus omnes Quidem et Vagus elidunt \nThe Van de Graaf Canon\nMane refeci capiebant unda mulcebat Victa caducifer, malo vulnere contra\ndicere aurato, ludit regale, voca! Retorsit colit est profanae esse virescere\nfurit nec; iaculi matertera et visa est, viribus. Divesque creatis, tecta novat collumque vulnus est, parvas. Faces illo pepulere tempus adest. Tendit flamma, ab opes virum sustinet, sidus sequendo urbis.\nIubar proles corpore raptos vero auctor imperium; sed et huic: manus caeli\nLelegas tu lux. Verbis obstitit intus oblectamina fixis linguisque ausus sperare\nEchionides cornuaque tenent clausit possit. Omnia putatur. Praeteritae refert\nausus; ferebant e primus lora nutat, vici quae mea ipse. Et iter nil spectatae\nvulnus haerentia iuste et exercebat, sui et.\nEurytus Hector, materna ipsumque ut Politen, nec, nate, ignari, vernum cohaesit sequitur. Vel mitis temploque vocatus, inque alis, oculos nomen non silvis corpore coniunx ne displicet illa. Crescunt non unus, vidit visa quantum inmiti flumina mortis facto sic: undique a alios vincula sunt iactata abdita! Suspenderat ego fuit tendit: luna, ante urbem\nPropoetides parte.\n","description":"","id":23,"section":"blog","tags":["markdown","text"],"title":"Placeholder Text","uri":"https://nafiesl.github.io/SimpleCrudGenerator/blog/placeholder-text/"},{"content":"Lorem est tota propiore conpellat pectoribus de\npectora summo. Redit teque digerit hominumque toris verebor lumina non cervice\nsubde tollit usus habet Arctonque, furores quas nec ferunt. Quoque montibus nunc\ncaluere tempus\nEmoji can be enabled in a Hugo project in a number of ways.\n The emojify function can be called directly in templates or Inline Shortcodes.\nTo enable emoji globally, set enableEmoji to true in your site’s configuration and then you can type emoji shorthand codes directly in content files; e.g.\n🙈 🙈 🙉 🙉 🙊 🙊\nThe Emoji cheat sheet is a useful reference for emoji shorthand codes.\nN.B. The above steps enable Unicode Standard emoji characters and sequences in Hugo, however the rendering of these glyphs depends on the browser and the platform. To style the emoji you can either use a third party emoji font or a font stack; e.g.\n1 2 3 .emoji { font-family: Apple Color Emoji,Segoe UI Emoji,NotoColorEmoji,Segoe UI Symbol,Android Emoji,EmojiSymbols; } ","description":"","id":24,"section":"blog","tags":["emoji"],"title":"Emoji Support","uri":"https://nafiesl.github.io/SimpleCrudGenerator/blog/emoji-support/"}] \ No newline at end of file +[{"content":"About this package This package contains artisan make:crud commands to create a simple CRUD feature with test classes on our Laravel 5.5 (and later) application. This package is fairly simple, to boost test-driven development method on our laravel application.\nWith this package installed on local environment, we can use (e.g.) php artisan make:crud Vehicle command to generate some files :\n App\\Models\\Vehicle.php eloquent model xxx_create_vehicles_table.php migration file VehicleController.php index.blade.php and forms.blade.php view file in resources/views/vehicles directory resources/lang/vehicle.php lang file VehicleFactory.php model factory file VehiclePolicy.php model policy file in app/Policies directory ManageVehiclesTest.php feature test class in tests/Feature directory VehicleTest.php unit test class in tests/Unit/Models directory VehiclePolicyTest.php unit test class in tests/Unit/Policies directory It will update some file :\n Update routes/web.php to add vehicles resource route Update app/providers/AuthServiceProvider.php to add Vehicle model Policy class in $policies property It will also create this file if it not exists :\n resources/lang/app.php lang file if it not exists tests/BrowserKitTest.php base Feature TestCase class if it not exists Main purpose The main purpose of this package is for faster Test-driven Development, it generates model CRUD scaffolds complete with Testing Classes which will use Laravel Browserkit Testing package and PHPUnit.\n","description":"This package contains artisan make:crud commands to create a simple CRUD feature with test classes on our Laravel application.","id":0,"section":"docs","tags":null,"title":"About this package","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/about/"},{"content":"How to install For Laravel 8.x 1 2 # Get the package $ composer require luthfi/simple-crud-generator:^2.0 For Laravel 5.6 to 7.x 1 2 # Get the package $ composer require luthfi/simple-crud-generator:^1.0 For Laravel 5.5 To use this package on laravel 5.5, we need to add the package (with browserkit) within require-dev in composer.json file, like so :\n1 2 3 4 5 # Install required package for laravel/browser-kit-testing $ composer require symfony/css-selector:^3.0 # Get the package $ composer require luthfi/simple-crud-generator 1.2.* --dev ","description":"Install the package with composer.","id":1,"section":"docs","tags":null,"title":"How to install","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/how-to-install/"},{"content":"How to use Just type in terminal $ php artisan make:crud ModelName command, it will create simple Laravel CRUD files of given model name completed with tests.\nFor example we want to create CRUD for \u0026lsquo;App\\Models\\Vehicle\u0026rsquo; model.\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 $ php artisan make:crud-simple Vehicle Vehicle resource route generated on routes/web.php. Vehicle model generated. Vehicle table migration generated. VehicleController generated. Vehicle index view file generated. Vehicle form view file generated. lang/app.php generated. vehicle lang files generated. Vehicle model factory generated. Vehicle model policy generated. AuthServiceProvider class has been updated. BrowserKitTest generated. ManageVehiclesTest generated. VehicleTest (model) generated. VehiclePolicyTest (model policy) generated. CRUD files generated successfully! Make sure we have set database credential on .env file, then :\n1 2 $ php artisan migrate $ php artisan serve Then visit our application url: http://localhost:8000/vehicles.\nUsage on Fresh Install Laravel 8.x In this example, we are using the laravel installer package to install new laravel project.\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 # This is example commands for Ubuntu users. $ laravel new project-directory $ cd project-directory $ composer require laravel/ui $ php artisan ui bootstrap --auth $ npm install \u0026amp;\u0026amp; npm run dev # Might need to run twice, minimum requirement: NodeJS v12.x $ vim .env # Edit your .env file to update database configuration # Install the package $ composer require luthfi/simple-crud-generator:^2.0 # I really suggest \u0026#34;git commit\u0026#34; your project right before you run the make:crud command $ php artisan make:crud Vehicle # Model name in singular $ php artisan migrate $ php artisan serve # Visit your route http://127.0.0.1:8000 # Register as a new user # Visit your route http://127.0.0.1:8000/vehicles # Run the unit tests $ vim phpunit.xml # Remove comments on the DB_CONNECTION and DB_DATABASE lines $ vendor/bin/phpunit ","description":"How ot use the package.","id":2,"section":"docs","tags":null,"title":"How to use","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/how-to-use/"},{"content":"Available Commands Bootstrap 4 Views Full CRUD feature with tests 1 $ php artisan make:crud ModelName Simple CRUD feature with tests 1 $ php artisan make:crud-simple ModelName Bootstrap 3 views Full CRUD feature with tests 1 $ php artisan make:crud ModelName --bs3 Simple CRUD feature with tests 1 $ php artisan make:crud-simple ModelName --bs3 API CRUD feature with tests 1 $ php artisan make:crud-api ModelName ","description":"Available commands and options.","id":3,"section":"docs","tags":null,"title":"Available Commands","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/available-commands/"},{"content":"Model Attribute/Column The Model and table will only have 2 pre-definded attributes or columns : title and description on each generated model and database table. You can continue working on other column on the table.\n","description":"Model attributes or column generated by the package.","id":4,"section":"docs","tags":null,"title":"Model Attribute/Column","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/model-attributes/"},{"content":"Views Bootstrap 4 Views The generated view files use Bootstrap 4 by default (for Laravel 5.6 and later).\nBootstrap 3 Views We can also generates views that use Bootstrap 3 with --bs3 command option, eg for Laravel version 5.5.\nThe Default Layout View You need a resources/views/layouts/app.blade.php view file, simply create one with php artisan make:auth command. You can change this configuration via the config/simple-crud.php file.\n","description":"The generated views are using bootstrap frontend framework.","id":5,"section":"docs","tags":null,"title":"Views","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/views/"},{"content":"For API If we want to generate API Controller with feature tests, we use following command :\n1 $ php artisan make:crud-api Vehicle By default, we use Laravel Token Based Authentication, so we need to update our user model.\n Add api_token column on our users_table_migration. Add api_token as fillable property on User model. Add api_token field on our UserFactory. API Usage The generated API is a REST API, using GET and POST verbs, with a URI of /api/modelname.\nExample code for calling the generated API, using Guzzle:\n// Read data a specific Vehicle record... $uri = 'http://your-domain.com/api/vehicles/'.$vehicleID; $headers = ['Authorization' =\u0026gt; 'Bearer '.$apiToken]; $client = new \\GuzzleHttp\\Client(); $res = $client-\u0026gt;request('GET', $uri, ['headers' =\u0026gt; $headers]); // Create a new Vehicle record... $uri = 'http://your-domain.com/api/vehicles'; $headers = ['Authorization' =\u0026gt; 'Bearer '.$apiToken]; $payload = json_encode([ 'title' =\u0026gt; 'Vehicle Name 1', 'description' =\u0026gt; 'Vehicle Description 1', ]); $client = new \\GuzzleHttp\\Client(); $res = $client-\u0026gt;request('POST', $uri, ['body' =\u0026gt; $payload, 'headers' =\u0026gt; $headers]); The generated functional tests will give you examples of how to adapt this code for other call types.\n","description":"Generates API endpoints for model CRUD.","id":6,"section":"docs","tags":null,"title":"For API","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/for-api/"},{"content":"Config File You can configure your own by publishing the config file:\n1 $ php artisan vendor:publish --provider=\u0026#34;Luthfi\\CrudGenerator\\ServiceProvider\u0026#34; --tag=config That will generate config/simple-crud.php file.\nBy default, this package have some configuration:\n1 2 3 4 5 6 7 8 9 10 11 12 \u0026lt;?php return [ // The master view layout that generated views will extends \u0026#39;default_layout_view\u0026#39; =\u0026gt; \u0026#39;layouts.app\u0026#39;, // The base test case class path for generated testing classes \u0026#39;base_test_path\u0026#39; =\u0026gt; \u0026#39;tests/BrowserKitTest.php\u0026#39;, // The base test class full name \u0026#39;base_test_class\u0026#39; =\u0026gt; \u0026#39;Tests\\BrowserKitTest\u0026#39;, ]; ","description":"Configure the package with config file.","id":7,"section":"docs","tags":null,"title":"Config File","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/config-file/"},{"content":"Publishing the stub files Stub files is the templates which we use to generate the code for each model classes and files. We can customize the stub files as we needed by publishing them to our project directory.\n1 $ php artisan vendor:publish --provider=\u0026#34;Luthfi\\CrudGenerator\\ServiceProvider\u0026#34; --tag=stubs That will generate stub files on stubs/simple-crud directory. Now we can change some stub files based on our project needs.\n","description":"Use your own stub files.","id":8,"section":"docs","tags":null,"title":"Publishing the stub files","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/publishing-the-stub-files/"},{"content":"Screenshots Visit your application in new resource route : http://127.0.0.1:8000/vehicles\n","description":"Some screenshots of the generated CRUD feature.","id":9,"section":"docs","tags":null,"title":"Screenshots","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/screenshots/"},{"content":"Generated Testing Suite Next, let us try the generated testing suite. To use the generated testing classes, we can set the database environment using in-memory database SQLite. Open phpunit.xml. Add two lines below on the env :\n1 2 3 4 5 6 7 8 \u0026lt;phpunit\u0026gt; \u0026lt;!-- ..... --\u0026gt; \u0026lt;php\u0026gt; \u0026lt;!-- ..... --\u0026gt; \u0026lt;server name=\u0026#34;DB_CONNECTION\u0026#34; value=\u0026#34;sqlite\u0026#34;/\u0026gt; \u0026lt;server name=\u0026#34;DB_DATABASE\u0026#34; value=\u0026#34;:memory:\u0026#34;/\u0026gt; \u0026lt;/php\u0026gt; \u0026lt;/phpunit\u0026gt; Then run PHPUnit\n1 $ vendor/bin/phpunit All tests should be passed.\n","description":"Some screenshots of the generated CRUD feature.","id":10,"section":"docs","tags":null,"title":"Generated Testing Suite","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/generated-testing-suite/"},{"content":"License This package is open-sourced software licensed under the MIT license.\n","description":"Some screenshots of the generated CRUD feature.","id":11,"section":"docs","tags":null,"title":"License","uri":"https://nafiesl.github.io/SimpleCrudGenerator/docs/license/"}] \ No newline at end of file diff --git a/index.xml b/index.xml index da90fe8..c8cb770 100644 --- a/index.xml +++ b/index.xml @@ -1,13 +1,16 @@ -Laravel Simple CRUD Generator on Simple CRUD Generator for Laravelhttps://nafiesl.github.io/SimpleCrudGenerator/Recent content in Laravel Simple CRUD Generator on Simple CRUD Generator for LaravelHugo -- gohugo.ioenCopyright &copy; 2017 Nafies Luthfi.Tue, 19 Jan 2021 19:41:00 +0800May 2019https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_may/Tue, 28 Jan 2020 00:10:51 +0900https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_may/Markdown hereBasic Usagehttps://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/basicusage/Tue, 28 Jan 2020 00:34:51 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/basicusage/Markdown hereApril 2019https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_april/Tue, 28 Jan 2020 00:10:48 +0900https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_april/Markdown hereConfigurationhttps://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/configuration/Tue, 28 Jan 2020 00:34:56 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/configuration/Markdown hereMarch 2019https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_march/Tue, 28 Jan 2020 00:10:42 +0900https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_march/Markdown hereInstallationhttps://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/installation/Tue, 28 Jan 2020 00:34:13 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/installation/Markdown hereFebruary 2019https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_february/Tue, 28 Jan 2020 00:10:37 +0900https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_february/Markdown hereQuick Starthttps://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/quickstart/Tue, 28 Jan 2020 00:34:41 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/quickstart/Markdown hereJanuary 2019https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_january/Tue, 28 Jan 2020 00:10:09 +0900https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_january/Markdown hereTest 1https://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/test1/Thu, 30 Jan 2020 00:38:25 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/test1/Test 2https://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/depth2/test2/Thu, 30 Jan 2020 00:38:25 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/depth2/test2/Test 3https://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/depth2/depth3/test3/Thu, 30 Jan 2020 00:38:25 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/depth2/depth3/test3/ttttesthttps://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/ttttest/Thu, 30 Jan 2020 00:38:25 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/ttttest/Related contenthttps://nafiesl.github.io/SimpleCrudGenerator/docs/relatedcontent/Tue, 28 Jan 2020 00:39:09 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/relatedcontent/Markdown herePage Resourceshttps://nafiesl.github.io/SimpleCrudGenerator/docs/pageresources/Tue, 28 Jan 2020 00:39:06 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/pageresources/Markdown herePage Bundleshttps://nafiesl.github.io/SimpleCrudGenerator/docs/pagebundles/Tue, 28 Jan 2020 00:38:59 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/pagebundles/Markdown hereContent Formatshttps://nafiesl.github.io/SimpleCrudGenerator/docs/contentfortmats/Tue, 28 Jan 2020 00:38:51 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/contentfortmats/Markdown hereImage Processinghttps://nafiesl.github.io/SimpleCrudGenerator/docs/imageprocessing/Tue, 28 Jan 2020 00:38:48 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/imageprocessing/Markdown hereShortcodeshttps://nafiesl.github.io/SimpleCrudGenerator/docs/contentmanagement/shortcodes/Tue, 28 Jan 2020 00:36:19 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/contentmanagement/shortcodes/Markdown hereFrontmatterhttps://nafiesl.github.io/SimpleCrudGenerator/docs/contentmanagement/frontmatter/Tue, 28 Jan 2020 00:36:14 +0900https://nafiesl.github.io/SimpleCrudGenerator/docs/contentmanagement/frontmatter/Markdown hereMarkdown Syntax Guidehttps://nafiesl.github.io/SimpleCrudGenerator/blog/markdown-syntax/Mon, 11 Mar 2019 00:00:00 +0000https://nafiesl.github.io/SimpleCrudGenerator/blog/markdown-syntax/<p>Lorem est tota propiore conpellat pectoribus de<br /> -pectora summo. Redit teque digerit hominumque toris verebor lumina non cervice<br /> -subde tollit usus habet Arctonque, furores quas nec ferunt. Quoque montibus nunc<br /> -caluere tempus</p>Sectionhttps://nafiesl.github.io/SimpleCrudGenerator/docs/contentmanagement/sections/Mon, 11 Mar 2019 00:00:00 +0000https://nafiesl.github.io/SimpleCrudGenerator/docs/contentmanagement/sections/<p>This article offers a sample of basic Markdown syntax that can be used in Hugo content files, also it shows whether basic HTML elements are decorated with CSS in a Hugo theme.</p>Rich Contenthttps://nafiesl.github.io/SimpleCrudGenerator/blog/rich-content/Sun, 10 Mar 2019 00:00:00 +0000https://nafiesl.github.io/SimpleCrudGenerator/blog/rich-content/<p>Lorem est tota propiore conpellat pectoribus de<br /> -pectora summo. Redit teque digerit hominumque toris verebor lumina non cervice<br /> -subde tollit usus habet Arctonque, furores quas nec ferunt. Quoque montibus nunc<br /> -caluere tempus</p>Placeholder Texthttps://nafiesl.github.io/SimpleCrudGenerator/blog/placeholder-text/Sat, 09 Mar 2019 00:00:00 +0000https://nafiesl.github.io/SimpleCrudGenerator/blog/placeholder-text/<p>Lorem est tota propiore conpellat pectoribus de<br /> -pectora summo. Redit teque digerit hominumque toris verebor lumina non cervice<br /> -subde tollit usus habet Arctonque, furores quas nec ferunt. Quoque montibus nunc<br /> -caluere tempus</p>Emoji Supporthttps://nafiesl.github.io/SimpleCrudGenerator/blog/emoji-support/Tue, 05 Mar 2019 00:00:00 +0000https://nafiesl.github.io/SimpleCrudGenerator/blog/emoji-support/<p>Lorem est tota propiore conpellat pectoribus de<br /> -pectora summo. Redit teque digerit hominumque toris verebor lumina non cervice<br /> -subde tollit usus habet Arctonque, furores quas nec ferunt. Quoque montibus nunc<br /> -caluere tempus</p> \ No newline at end of file +Laravel Simple CRUD Generator on Simple CRUD Generator for Laravelhttps://nafiesl.github.io/SimpleCrudGenerator/Recent content in Laravel Simple CRUD Generator on Simple CRUD Generator for LaravelHugo -- gohugo.ioenCopyright &copy; 2017 Nafies Luthfi.Tue, 19 Jan 2021 19:41:00 +0800About this packagehttps://nafiesl.github.io/SimpleCrudGenerator/docs/about/Sat, 30 Jan 2021 21:00:00 +0800https://nafiesl.github.io/SimpleCrudGenerator/docs/about/About this package This package contains artisan make:crud commands to create a simple CRUD feature with test classes on our Laravel 5.5 (and later) application. This package is fairly simple, to boost test-driven development method on our laravel application. +With this package installed on local environment, we can use (e.g.) php artisan make:crud Vehicle command to generate some files : +App\Models\Vehicle.php eloquent model xxx_create_vehicles_table.php migration file VehicleController.php index.blade.php and forms.How to installhttps://nafiesl.github.io/SimpleCrudGenerator/docs/how-to-install/Sat, 30 Jan 2021 21:00:00 +0800https://nafiesl.github.io/SimpleCrudGenerator/docs/how-to-install/How to install For Laravel 8.x 1 2 # Get the package $ composer require luthfi/simple-crud-generator:^2.0 For Laravel 5.6 to 7.x 1 2 # Get the package $ composer require luthfi/simple-crud-generator:^1.0 For Laravel 5.5 To use this package on laravel 5.5, we need to add the package (with browserkit) within require-dev in composer.json file, like so : +1 2 3 4 5 # Install required package for laravel/browser-kit-testing $ composer require symfony/css-selector:^3.How to usehttps://nafiesl.github.io/SimpleCrudGenerator/docs/how-to-use/Sat, 30 Jan 2021 21:00:00 +0800https://nafiesl.github.io/SimpleCrudGenerator/docs/how-to-use/How to use Just type in terminal $ php artisan make:crud ModelName command, it will create simple Laravel CRUD files of given model name completed with tests. +For example we want to create CRUD for &lsquo;App\Models\Vehicle&rsquo; model. +1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 $ php artisan make:crud-simple Vehicle Vehicle resource route generated on routes/web.php. Vehicle model generated. Vehicle table migration generated.Available Commandshttps://nafiesl.github.io/SimpleCrudGenerator/docs/available-commands/Sat, 30 Jan 2021 21:00:00 +0800https://nafiesl.github.io/SimpleCrudGenerator/docs/available-commands/Available Commands Bootstrap 4 Views Full CRUD feature with tests 1 $ php artisan make:crud ModelName Simple CRUD feature with tests 1 $ php artisan make:crud-simple ModelName Bootstrap 3 views Full CRUD feature with tests 1 $ php artisan make:crud ModelName --bs3 Simple CRUD feature with tests 1 $ php artisan make:crud-simple ModelName --bs3 API CRUD feature with tests 1 $ php artisan make:crud-api ModelNameModel Attribute/Columnhttps://nafiesl.github.io/SimpleCrudGenerator/docs/model-attributes/Sat, 30 Jan 2021 21:00:00 +0800https://nafiesl.github.io/SimpleCrudGenerator/docs/model-attributes/Model Attribute/Column The Model and table will only have 2 pre-definded attributes or columns : title and description on each generated model and database table. You can continue working on other column on the table.Viewshttps://nafiesl.github.io/SimpleCrudGenerator/docs/views/Sat, 30 Jan 2021 21:00:00 +0800https://nafiesl.github.io/SimpleCrudGenerator/docs/views/Views Bootstrap 4 Views The generated view files use Bootstrap 4 by default (for Laravel 5.6 and later). +Bootstrap 3 Views We can also generates views that use Bootstrap 3 with --bs3 command option, eg for Laravel version 5.5. +The Default Layout View You need a resources/views/layouts/app.blade.php view file, simply create one with php artisan make:auth command. You can change this configuration via the config/simple-crud.php file.For APIhttps://nafiesl.github.io/SimpleCrudGenerator/docs/for-api/Sat, 30 Jan 2021 21:00:00 +0800https://nafiesl.github.io/SimpleCrudGenerator/docs/for-api/For API If we want to generate API Controller with feature tests, we use following command : +1 $ php artisan make:crud-api Vehicle By default, we use Laravel Token Based Authentication, so we need to update our user model. +Add api_token column on our users_table_migration. Add api_token as fillable property on User model. Add api_token field on our UserFactory. API Usage The generated API is a REST API, using GET and POST verbs, with a URI of /api/modelname.Config Filehttps://nafiesl.github.io/SimpleCrudGenerator/docs/config-file/Sat, 30 Jan 2021 21:00:00 +0800https://nafiesl.github.io/SimpleCrudGenerator/docs/config-file/Config File You can configure your own by publishing the config file: +1 $ php artisan vendor:publish --provider=&#34;Luthfi\CrudGenerator\ServiceProvider&#34; --tag=config That will generate config/simple-crud.php file. +By default, this package have some configuration: +1 2 3 4 5 6 7 8 9 10 11 12 &lt;?php return [ // The master view layout that generated views will extends &#39;default_layout_view&#39; =&gt; &#39;layouts.app&#39;, // The base test case class path for generated testing classes &#39;base_test_path&#39; =&gt; &#39;tests/BrowserKitTest.Publishing the stub fileshttps://nafiesl.github.io/SimpleCrudGenerator/docs/publishing-the-stub-files/Sat, 30 Jan 2021 21:00:00 +0800https://nafiesl.github.io/SimpleCrudGenerator/docs/publishing-the-stub-files/Publishing the stub files Stub files is the templates which we use to generate the code for each model classes and files. We can customize the stub files as we needed by publishing them to our project directory. +1 $ php artisan vendor:publish --provider=&#34;Luthfi\CrudGenerator\ServiceProvider&#34; --tag=stubs That will generate stub files on stubs/simple-crud directory. Now we can change some stub files based on our project needs.Screenshotshttps://nafiesl.github.io/SimpleCrudGenerator/docs/screenshots/Sat, 30 Jan 2021 21:00:00 +0800https://nafiesl.github.io/SimpleCrudGenerator/docs/screenshots/Screenshots Visit your application in new resource route : http://127.0.0.1:8000/vehiclesGenerated Testing Suitehttps://nafiesl.github.io/SimpleCrudGenerator/docs/generated-testing-suite/Sat, 30 Jan 2021 21:00:00 +0800https://nafiesl.github.io/SimpleCrudGenerator/docs/generated-testing-suite/Generated Testing Suite Next, let us try the generated testing suite. To use the generated testing classes, we can set the database environment using in-memory database SQLite. Open phpunit.xml. Add two lines below on the env : +1 2 3 4 5 6 7 8 &lt;phpunit&gt; &lt;!-- ..... --&gt; &lt;php&gt; &lt;!-- ..... --&gt; &lt;server name=&#34;DB_CONNECTION&#34; value=&#34;sqlite&#34;/&gt; &lt;server name=&#34;DB_DATABASE&#34; value=&#34;:memory:&#34;/&gt; &lt;/php&gt; &lt;/phpunit&gt; Then run PHPUnit +1 $ vendor/bin/phpunit All tests should be passed.Licensehttps://nafiesl.github.io/SimpleCrudGenerator/docs/license/Sat, 30 Jan 2021 21:00:00 +0800https://nafiesl.github.io/SimpleCrudGenerator/docs/license/License This package is open-sourced software licensed under the MIT license. \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml index 6698992..59a1126 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1 +1 @@ -https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_may/2020-01-28T00:10:51+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/basicusage/2020-01-28T00:34:51+09:00https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_april/2020-01-28T00:10:48+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/configuration/2020-01-28T00:34:56+09:00https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_march/2020-01-28T00:10:42+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/installation/2020-01-28T00:34:13+09:00https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_february/2020-01-28T00:10:37+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/quickstart/2020-01-28T00:34:41+09:00https://nafiesl.github.io/SimpleCrudGenerator/updates/2019_january/2020-01-28T00:10:09+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/2020-02-28T10:08:56+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/depth2/2020-02-28T10:08:56+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/depth2/depth3/2020-02-28T10:08:56+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/test1/2020-01-30T00:38:25+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/depth2/test2/2020-01-30T00:38:25+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/depth2/depth3/test3/2020-01-30T00:38:25+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/gettingstarted/2020-01-28T00:34:39+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/depth1/ttttest/2020-01-30T00:38:25+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/contentmanagement/2020-01-28T00:36:39+09:00https://nafiesl.github.io/SimpleCrudGenerator/2021-01-19T19:41:00+08:00https://nafiesl.github.io/SimpleCrudGenerator/docs/relatedcontent/2020-01-28T00:39:09+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/pageresources/2020-01-28T00:39:06+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/pagebundles/2020-01-28T00:38:59+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/contentfortmats/2020-01-28T00:38:51+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/imageprocessing/2020-01-28T00:38:48+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/contentmanagement/shortcodes/2020-01-28T00:36:19+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/contentmanagement/frontmatter/2020-01-28T00:36:14+09:00https://nafiesl.github.io/SimpleCrudGenerator/updates/2020-01-28T00:08:29+09:00https://nafiesl.github.io/SimpleCrudGenerator/docs/2020-01-11T14:09:21+09:00https://nafiesl.github.io/SimpleCrudGenerator/blog/2019-03-11T00:00:00+00:00https://nafiesl.github.io/SimpleCrudGenerator/tags/css/2019-03-11T00:00:00+00:00https://nafiesl.github.io/SimpleCrudGenerator/tags/html/2019-03-11T00:00:00+00:00https://nafiesl.github.io/SimpleCrudGenerator/tags/markdown/2019-03-11T00:00:00+00:00https://nafiesl.github.io/SimpleCrudGenerator/blog/markdown-syntax/2019-03-11T00:00:00+00:00https://nafiesl.github.io/SimpleCrudGenerator/docs/contentmanagement/sections/2019-03-11T00:00:00+00:00https://nafiesl.github.io/SimpleCrudGenerator/tags/themes/2019-03-11T00:00:00+00:00https://nafiesl.github.io/SimpleCrudGenerator/tags/privacy/2019-03-10T00:00:00+00:00https://nafiesl.github.io/SimpleCrudGenerator/blog/rich-content/2019-03-10T00:00:00+00:00https://nafiesl.github.io/SimpleCrudGenerator/tags/shortcodes/2019-03-10T00:00:00+00:00https://nafiesl.github.io/SimpleCrudGenerator/blog/placeholder-text/2019-03-09T00:00:00+00:00https://nafiesl.github.io/SimpleCrudGenerator/tags/text/2019-03-09T00:00:00+00:00https://nafiesl.github.io/SimpleCrudGenerator/tags/emoji/2019-03-05T00:00:00+00:00https://nafiesl.github.io/SimpleCrudGenerator/blog/emoji-support/2019-03-05T00:00:00+00:00 \ No newline at end of file +https://nafiesl.github.io/SimpleCrudGenerator/docs/about/2021-01-30T21:00:00+08:00https://nafiesl.github.io/SimpleCrudGenerator/docs/how-to-install/2021-01-30T21:00:00+08:00https://nafiesl.github.io/SimpleCrudGenerator/docs/how-to-use/2021-01-30T21:00:00+08:00https://nafiesl.github.io/SimpleCrudGenerator/docs/available-commands/2021-01-30T21:00:00+08:00https://nafiesl.github.io/SimpleCrudGenerator/docs/model-attributes/2021-01-30T21:00:00+08:00https://nafiesl.github.io/SimpleCrudGenerator/docs/views/2021-01-30T21:00:00+08:00https://nafiesl.github.io/SimpleCrudGenerator/docs/for-api/2021-01-30T21:00:00+08:00https://nafiesl.github.io/SimpleCrudGenerator/docs/config-file/2021-01-30T21:00:00+08:00https://nafiesl.github.io/SimpleCrudGenerator/docs/publishing-the-stub-files/2021-01-30T21:00:00+08:00https://nafiesl.github.io/SimpleCrudGenerator/docs/screenshots/2021-01-30T21:00:00+08:00https://nafiesl.github.io/SimpleCrudGenerator/docs/generated-testing-suite/2021-01-30T21:00:00+08:00https://nafiesl.github.io/SimpleCrudGenerator/docs/license/2021-01-30T21:00:00+08:00https://nafiesl.github.io/SimpleCrudGenerator/docs/2021-01-30T21:00:00+08:00https://nafiesl.github.io/SimpleCrudGenerator/2021-01-19T19:41:00+08:00 \ No newline at end of file