Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,6 @@ trim_trailing_whitespace = false

[*.{yml,yaml}]
indent_size = 2

[*.{neon,neon.dist}]
indent_size = 4
218 changes: 218 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
* text=auto eol=lf

*.blade.php diff=html
*.css diff=css
*.html diff=html
*.md diff=markdown
*.php diff=php

# Path-based git attributes
# https://www.kernel.org/pub/software/scm/git/docs/gitattributes.html

Expand All @@ -17,3 +25,213 @@
/UPGRADING.md export-ignore
/phpstan.neon.dist export-ignore
/phpstan-baseline.neon export-ignore
/.travis.yml export-ignore
/.scrutinizer.yml export-ignore


/.idea export-ignore
/.prettierrc export-ignore
/.package-lock.json export-ignore
/.editorconfig export-ignore
/.php_cs.dist.php export-ignore
/.vscode export-ignore
/images export-ignore
/package.json export-ignore
/postcss.config.js export-ignore
/phpunit.xml.dist export-ignore
/pint.json export-ignore
/psalm.xml export-ignore
/psalm.xml.dist export-ignore
/tailwind.config.js export-ignore
/testbench.yaml export-ignore
/UPGRADING.md export-ignore


## GITATTRIBUTES FOR WEB PROJECTS
#
# These settings are for any web project.
#
# Details per file setting:
# text These files should be normalized (i.e. convert CRLF to LF).
# binary These files are binary and should be left untouched.
#
# Note that binary is a macro for -text -diff.
######################################################################

# Auto detect
## Handle line endings automatically for files detected as
## text and leave all files detected as binary untouched.
## This will handle all files NOT defined below.

# Source code
*.js text
*.mjs text
*.cjs text
*.json text
*.ls text
*.map text -diff
*.sass text
*.scss text diff=css
*.sh text eol=lf
.husky/* text eol=lf
*.sql text
*.ts text

# Docker
Dockerfile text

# Documentation
*.ipynb text eol=lf
*.markdown text diff=markdown
*.md text diff=markdown
*.mdwn text diff=markdown
*.mdown text diff=markdown
*.mkd text diff=markdown
*.mkdn text diff=markdown
*.mdtxt text
*.mdtext text
*.txt text
AUTHORS text
CHANGELOG text
CHANGES text
CONTRIBUTING text
COPYING text
copyright text
*COPYRIGHT* text
INSTALL text
license text
LICENSE text
NEWS text
readme text
*README* text
TODO text

# Templates
*.dot text
*.ejs text
*.erb text
*.haml text
*.handlebars text
*.hbs text
*.hbt text
*.jade text
*.latte text
*.mustache text
*.njk text
*.phtml text
*.svelte text
*.tmpl text
*.tpl text
*.twig text
*.vue text

# Configs
*.cnf text
*.conf text
*.config text
.editorconfig text
*.env text
.gitattributes text
.gitconfig text
.htaccess text
*.lock text -diff
package.json text eol=lf
package-lock.json text eol=lf -diff
pnpm-lock.yaml text eol=lf -diff
.prettierrc text
yarn.lock text -diff
*.toml text
*.yaml text
*.yml text
browserslist text
Makefile text
makefile text
# Fixes syntax highlighting on GitHub to allow comments
tsconfig.json linguist-language=JSON-with-Comments

# Heroku
Procfile text

# Graphics
*.ai binary
*.bmp binary
*.eps binary
*.gif binary
*.gifv binary
*.ico binary
*.jng binary
*.jp2 binary
*.jpg binary
*.jpeg binary
*.jpx binary
*.jxr binary
*.pdf binary
*.png binary
*.psb binary
*.psd binary
# SVG treated as an asset (binary) by default.
*.svg text
# If you want to treat it as binary,
# use the following line instead.
*.svgz binary
*.tif binary
*.tiff binary
*.wbmp binary
*.webp binary

# Audio
*.kar binary
*.m4a binary
*.mid binary
*.midi binary
*.mp3 binary
*.ogg binary
*.ra binary

# Video
*.3gpp binary
*.3gp binary
*.as binary
*.asf binary
*.asx binary
*.avi binary
*.fla binary
*.flv binary
*.m4v binary
*.mng binary
*.mov binary
*.mp4 binary
*.mpeg binary
*.mpg binary
*.ogv binary
*.swc binary
*.swf binary
*.webm binary

# Archives
*.7z binary
*.gz binary
*.jar binary
*.rar binary
*.tar binary
*.zip binary

# Fonts
*.ttf binary
*.eot binary
*.otf binary
*.woff binary
*.woff2 binary

# Executables
*.exe binary
*.pyc binary
# Prevents massive diffs caused by vendored, minified files
**/.yarn/releases/** binary
**/.yarn/plugins/** binary

# RC files (like .babelrc or .eslintrc)
*.*rc text

# Ignore files (like .npmignore or .gitignore)
*.*ignore text
22 changes: 12 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,15 @@
<img alt="fabricator banner" src="https://raw.githubusercontent.com/z3d0x/filament-fabricator/2.x/art/banner.jpg" />
</p>

***What is Filament Fabricator?*** Filament Fabricator is simply said a block-based page builder skeleton. Filament Fabricator takes care of the PageResource & frontend routing, so you can focus on what really matters: your [Layouts](https://filamentphp.com/plugins/z3d0x-fabricator#layouts) & [Page Blocks](https://filamentphp.com/plugins/z3d0x-fabricator#page-blocks).
**_What is Filament Fabricator?_** Filament Fabricator is simply said a block-based page builder skeleton. Filament Fabricator takes care of the PageResource & frontend routing, so you can focus on what really matters: your [Layouts](https://filamentphp.com/plugins/z3d0x-fabricator#layouts) & [Page Blocks](https://filamentphp.com/plugins/z3d0x-fabricator#page-blocks).

## Compatibility
| Fabricator | Filament | PHP |
|------|----------|--------|
| [1.x](https://github.com/z3d0x/filament-fabricator/tree/1.x) | ^2.0 | ^8.0 |
| [2.x](https://github.com/z3d0x/filament-fabricator/tree/2.x) | ^3.0 | ^8.1 |

| Fabricator | Filament | PHP |
| ------------------------------------------------------------ | -------- | ---- |
| [1.x](https://github.com/z3d0x/filament-fabricator/tree/1.x) | ^2.0 | ^8.0 |
| [2.x](https://github.com/z3d0x/filament-fabricator/tree/2.x) | ^3.0 | ^8.1 |
| [3.x](https://github.com/z3d0x/filament-fabricator/tree/3.x) | ^4.0 | ^8.2 |

## Installation

Expand All @@ -23,8 +25,8 @@ You can install the package via composer:
composer require z3d0x/filament-fabricator
```


After that run the install command:

```bash
php artisan filament-fabricator:install
```
Expand Down Expand Up @@ -76,10 +78,10 @@ Please review [our security policy](../../security/policy) on how to report secu

## Credits

- [ZedoX](https://github.com/Z3d0X)
- [Voltra](https://github.com/Voltra)
- [Patrick Boivin](https://github.com/pboivin) - Filament Peek
- [All Contributors](../../contributors)
- [ZedoX](https://github.com/Z3d0X)
- [Voltra](https://github.com/Voltra)
- [Patrick Boivin](https://github.com/pboivin) - Filament Peek
- [All Contributors](../../contributors)

## License

Expand Down
6 changes: 3 additions & 3 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,9 @@
}
},
"scripts": {
"pint": "vendor/bin/pint",
"test:pest": "vendor/bin/pest --parallel",
"test:phpstan": "vendor/bin/phpstan analyse",
"pint": "@php ./vendor/bin/pint",
"test:pest": "@php ./vendor/bin/pest --parallel",
"test:phpstan": "@php ./vendor/bin/phpstan analyse",
"test": [
"@test:pest",
"@test:phpstan"
Expand Down
54 changes: 53 additions & 1 deletion config/filament-fabricator.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,34 +3,86 @@
// config for Z3d0X/FilamentFabricator
return [
'routing' => [
/**
* Whether routing should be automatically handled.
* Disable if you want finer and manual control over how the routing to your pages is done.
*/
'enabled' => true,

/**
* The prefix to use for all pages' routes.
* Leave to null if you don't want them to have a prefix.
* A prefix set to '/pages' means that a page of slug 'page-1'
* would be accessed through `/pages/page-1` if routing is enabled.
*/
'prefix' => null, // /pages
],

'layouts' => [
/**
* The base namespace for all your
* filament-fabricator page layouts
*/
'namespace' => 'App\\Filament\\Fabricator\\Layouts',

/**
* The path to your layouts (folder or glob)
* This is used when auto-registering them
*/
'path' => app_path('Filament/Fabricator/Layouts'),

/**
* A list of layout classes you want to manually register
* in addition to those that are auto-registered
*/
'register' => [
//
],
],

'page-blocks' => [
/**
* The base namespace for all your filament-fabricator page blocks
*/
'namespace' => 'App\\Filament\\Fabricator\\PageBlocks',

/**
* The path to your blocks (folder or glob)
* This is used when auto-registering them
*/
'path' => app_path('Filament/Fabricator/PageBlocks'),

/**
* A list of block classes you want to manually register
* in addition to those that are auto-registered
*/
'register' => [
//
],
],

/**
* The middleware(s) to apply to your pages when routing is enabled
*/
'middleware' => [
'web',
],

/**
* The page model to be used by the package.
* Replace this if you ever extend it
*/
'page-model' => \Z3d0X\FilamentFabricator\Models\Page::class,

/**
* The page filament resource to be used by the package.
* Replace this if you ever extend it
*/
'page-resource' => \Z3d0X\FilamentFabricator\Resources\PageResource::class,

/**
* Whether you want to have a view page as part of your PageResource
*/
'enable-view-page' => false,

/**
Expand All @@ -47,7 +99,7 @@
*/
'hook-to-commands' => true,

/*
/**
* This is the name of the table that will be created by the migration and
* used by the above page-model shipped with this package.
*/
Expand Down
Loading