├── .gitignore ├── src ├── resources │ ├── assets │ │ ├── sass │ │ │ ├── app.scss │ │ │ └── style.css │ │ └── js │ │ │ ├── common.js │ │ │ ├── components │ │ │ └── Example.vue │ │ │ ├── app.js │ │ │ └── bootstrap.js │ └── views │ │ └── welcome.blade.php └── VueSemanticUiServiceProvider.php ├── gulpfile.js ├── webpack.mix.js ├── semantic.json ├── README.md ├── composer.json └── package.json /.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /public/storage 3 | /public/hot 4 | /storage/*.key 5 | /vendor 6 | /.idea 7 | -------------------------------------------------------------------------------- /src/resources/assets/sass/app.scss: -------------------------------------------------------------------------------- 1 | @import "../dist/semantic/semantic.min.css"; 2 | @import "style.css"; 3 | -------------------------------------------------------------------------------- /gulpfile.js: -------------------------------------------------------------------------------- 1 | var 2 | gulp = require('gulp'), 3 | watch = require('./resources/assets/semantic/tasks/watch'), 4 | build = require('./resources/assets/semantic/tasks/build') 5 | ; 6 | 7 | 8 | /******************************* 9 | Tasks 10 | *******************************/ 11 | gulp.task('watch-ui', watch); 12 | gulp.task('build-ui', build); -------------------------------------------------------------------------------- /src/resources/assets/js/common.js: -------------------------------------------------------------------------------- 1 | $(document).ready(function () { 2 | $('.masthead') 3 | .visibility({ 4 | once: false, 5 | onBottomPassed: function () { 6 | $('.fixed.menu').transition('fade in'); 7 | }, 8 | onBottomPassedReverse: function () { 9 | $('.fixed.menu').transition('fade out'); 10 | } 11 | }); 12 | 13 | // create sidebar and attach to menu open 14 | $('.ui.sidebar') 15 | .sidebar('attach events', '.toc.item'); 16 | }); -------------------------------------------------------------------------------- /webpack.mix.js: -------------------------------------------------------------------------------- 1 | const { mix } = require('laravel-mix'); 2 | 3 | /* 4 | |-------------------------------------------------------------------------- 5 | | Mix Asset Management 6 | |-------------------------------------------------------------------------- 7 | | 8 | | Mix provides a clean, fluent API for defining some Webpack build steps 9 | | for your Laravel application. By default, we are compiling the Sass 10 | | file for the application as well as bundling up all the JS files. 11 | | 12 | */ 13 | 14 | mix.js('resources/assets/js/app.js', 'public/js') 15 | .sass('resources/assets/sass/app.scss', 'public/css'); 16 | -------------------------------------------------------------------------------- /semantic.json: -------------------------------------------------------------------------------- 1 | { 2 | "autoInstall": true, 3 | "base": "resources/assets/semantic", 4 | "paths": { 5 | "source": { 6 | "config": "src/theme.config", 7 | "definitions": "src/definitions/", 8 | "site": "src/site/", 9 | "themes": "src/themes/" 10 | }, 11 | "output": { 12 | "packaged": "../dist/semantic", 13 | "uncompressed": "../dist/semantic/components/", 14 | "compressed": "../dist/semantic/components/", 15 | "themes": "../dist/semantic/themes/" 16 | }, 17 | "clean": "../dist/semantic" 18 | }, 19 | "permission": false, 20 | "rtl": false, 21 | "version": "2.2.10" 22 | } -------------------------------------------------------------------------------- /src/resources/assets/js/components/Example.vue: -------------------------------------------------------------------------------- 1 | 16 | 17 | 24 | -------------------------------------------------------------------------------- /src/resources/assets/js/app.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * First we will load all of this project's JavaScript dependencies which 4 | * includes Vue and other libraries. It is a great starting point when 5 | * building robust, powerful web applications using Vue and Laravel. 6 | */ 7 | 8 | require('./bootstrap'); 9 | 10 | /** 11 | * Next, we will create a fresh Vue application instance and attach it to 12 | * the page. Then, you may begin adding components to this application 13 | * or customize the JavaScript scaffolding to fit your unique needs. 14 | */ 15 | 16 | //Vue.component('example', require('./components/Example.vue')); 17 | 18 | //const app = new Vue({ 19 | // el: '#app' 20 | //}); 21 | 22 | require('./common') -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## The Vue2 with ElemeFE/element for Laravel 5.4 2 | 3 | - Starter kit Vue2 in conjunction with SemanticUi for Laravel 5.4 4 | - Video [demo](https://youtu.be/8YscWJrfJmg) 5min 5 | 6 | ## Installation 7 | 8 | ```sh 9 | $ laravel new project && cd project/ 10 | $ composer require maxlab/laravel-vue-semantic-ui 11 | ``` 12 | 13 | Then add to config/app.php 14 | ```php 15 | Maxlab\VueSemanticUi\VueSemanticUiServiceProvider::class 16 | ``` 17 | 18 | Then 19 | ```sh 20 | $ php artisan vendor:publish --force --provider="Maxlab\VueSemanticUi\VueSemanticUiServiceProvider" 21 | $ npm install && npm run dev-ui 22 | ``` 23 | 24 | ## License 25 | 26 | The Laravel framework is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT). 27 | -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "maxlab/laravel-vue-semantic-ui", 3 | "description": "Laravel 5 starter semantic-ui vue2", 4 | "keywords": [ 5 | "vue-laravel", 6 | "laravel-starter-semantic-ui", 7 | "laravel-vue-semantic-ui", 8 | "laravel", 9 | "laravel-rad", 10 | "laravel5", 11 | "laravel-edition", 12 | "semantic-ui", 13 | "laravel-rad" 14 | ], 15 | "type": "project", 16 | "license": "MIT", 17 | "homepage": "https://github.com/Maxlab/laravel-vue-semantic-ui", 18 | "require": { 19 | "php": ">=5.6.4", 20 | "laravel/framework": "5.4.*" 21 | }, 22 | "autoload": { 23 | "psr-4": { 24 | "Maxlab\\VueSemanticUi\\": "src/" 25 | } 26 | }, 27 | "minimum-stability": "dev", 28 | "prefer-stable": true 29 | } 30 | -------------------------------------------------------------------------------- /src/VueSemanticUiServiceProvider.php: -------------------------------------------------------------------------------- 1 | publishes([ 15 | __DIR__.'/../src/resources/assets' => resource_path('/assets'), 16 | __DIR__.'/../src/resources/views' => resource_path('/views'), 17 | __DIR__.'/../package.json' => base_path('/package.json'), 18 | __DIR__.'/../semantic.json' => base_path('/semantic.json'), 19 | __DIR__.'/../gulpfile.js' => base_path('/gulpfile.js'), 20 | __DIR__.'/../webpack.mix.js' => base_path('/webpack.mix.js'), 21 | ], 'laravel-vue-semantic-ui'); 22 | } 23 | 24 | /** 25 | * Register any application services. 26 | * 27 | * @return void 28 | */ 29 | public function register() 30 | { 31 | 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "private": true, 3 | "scripts": { 4 | "dev": "npm run development", 5 | "dev-ui": "gulp build-ui && npm run development", 6 | "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", 7 | "watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", 8 | "watch-ui": "gulp watch-ui && cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", 9 | "watch-poll": "npm run watch -- --watch-poll", 10 | "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js", 11 | "prod": "npm run production", 12 | "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js" 13 | }, 14 | "devDependencies": { 15 | "axios": "0.15.3", 16 | "minimatch": "^3.0.2", 17 | "graceful-fs": "^4.0.0", 18 | "cross-env": "3.2.3", 19 | "jquery": "2.2.*", 20 | "laravel-mix": "0.*", 21 | "lodash": "4.17.4", 22 | "vue": "2.1.*", 23 | "vue-template-compiler": "2.1.*", 24 | "semantic-ui": "2.2.10", 25 | "optipng-bin": "3.1.4" 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/resources/assets/js/bootstrap.js: -------------------------------------------------------------------------------- 1 | 2 | window._ = require('lodash'); 3 | 4 | /** 5 | * We'll load jQuery and the Bootstrap jQuery plugin which provides support 6 | * for JavaScript based Bootstrap features such as modals and tabs. This 7 | * code may be modified to fit the specific needs of your application. 8 | */ 9 | 10 | window.$ = window.jQuery = require('jquery'); 11 | 12 | /** 13 | * Vue is a modern JavaScript library for building interactive web interfaces 14 | * using reactive data binding and reusable components. Vue's API is clean 15 | * and simple, leaving you to focus on building your next great project. 16 | */ 17 | 18 | window.Vue = require('vue'); 19 | 20 | /** 21 | * We'll load the axios HTTP library which allows us to easily issue requests 22 | * to our Laravel back-end. This library automatically handles sending the 23 | * CSRF token as a header based on the value of the "XSRF" token cookie. 24 | */ 25 | 26 | window.axios = require('axios'); 27 | //window.axios.defaults.headers.common['X-CSRF-TOKEN'] = window.Laravel.csrfToken; 28 | //window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest'; 29 | 30 | /** 31 | * Echo exposes an expressive API for subscribing to channels and listening 32 | * for events that are broadcast by Laravel. Echo and event broadcasting 33 | * allows your team to easily build robust real-time web applications. 34 | */ 35 | require("../dist/semantic/semantic") 36 | // import Echo from 'laravel-echo' 37 | 38 | // window.Pusher = require('pusher-js'); 39 | 40 | // window.Echo = new Echo({ 41 | // broadcaster: 'pusher', 42 | // key: 'your-pusher-key' 43 | // }); 44 | -------------------------------------------------------------------------------- /src/resources/assets/sass/style.css: -------------------------------------------------------------------------------- 1 | .hidden.menu { 2 | display: none; 3 | } 4 | 5 | .masthead.segment { 6 | min-height: 700px; 7 | padding: 1em 0em; 8 | } 9 | 10 | .masthead .logo.item img { 11 | margin-right: 1em; 12 | } 13 | 14 | .masthead .ui.menu .ui.button { 15 | margin-left: 0.5em; 16 | } 17 | 18 | .masthead h1.ui.header { 19 | margin-top: 3em; 20 | margin-bottom: 0em; 21 | font-size: 4em; 22 | font-weight: normal; 23 | } 24 | 25 | .masthead h2 { 26 | font-size: 1.7em; 27 | font-weight: normal; 28 | } 29 | 30 | .ui.vertical.stripe { 31 | padding: 8em 0em; 32 | } 33 | 34 | .ui.vertical.stripe h3 { 35 | font-size: 2em; 36 | } 37 | 38 | .ui.vertical.stripe .button + h3, 39 | .ui.vertical.stripe p + h3 { 40 | margin-top: 3em; 41 | } 42 | 43 | .ui.vertical.stripe .floated.image { 44 | clear: both; 45 | } 46 | 47 | .ui.vertical.stripe p { 48 | font-size: 1.33em; 49 | } 50 | 51 | .ui.vertical.stripe .horizontal.divider { 52 | margin: 3em 0em; 53 | } 54 | 55 | .quote.stripe.segment { 56 | padding: 0em; 57 | } 58 | 59 | .quote.stripe.segment .grid .column { 60 | padding-top: 5em; 61 | padding-bottom: 5em; 62 | } 63 | 64 | .footer.segment { 65 | padding: 5em 0em; 66 | } 67 | 68 | .secondary.pointing.menu .toc.item { 69 | display: none; 70 | } 71 | 72 | @media only screen and (max-width: 700px) { 73 | .ui.fixed.menu { 74 | display: none !important; 75 | } 76 | 77 | .secondary.pointing.menu .item, 78 | .secondary.pointing.menu .menu { 79 | display: none; 80 | } 81 | 82 | .secondary.pointing.menu .toc.item { 83 | display: block; 84 | } 85 | 86 | .masthead.segment { 87 | min-height: 350px; 88 | } 89 | 90 | .masthead h1.ui.header { 91 | font-size: 2em; 92 | margin-top: 1.5em; 93 | } 94 | 95 | .masthead h2 { 96 | margin-top: 0.5em; 97 | font-size: 1.5em; 98 | } 99 | } 100 | 101 | 102 | -------------------------------------------------------------------------------- /src/resources/views/welcome.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Laravel 8 | 9 | 10 | 11 | 12 | 13 | 29 | 30 | 31 | 39 | 40 | 41 | 42 |
43 |
44 | 45 |
46 | 59 |
60 | 61 |
62 |

63 | Imagine-a-Company 64 |

65 |

Do whatever you want when you want to.

66 |
Get Started
67 |
68 | 69 |
70 | 71 |
72 |
73 |
74 |
75 |

We Help Companies and Companions

76 |

We can give your company superpowers to do things that they never thought possible. Let us 77 | delight your customers and empower your needs...through pure data analytics.

78 |

We Make Bananas That Can Dance

79 |

Yes that's right, you thought it was the stuff of dreams, but even bananas can be 80 | bioengineered.

81 |
82 |
83 | 84 |
85 |
86 |
87 |
88 | Check Them Out 89 |
90 |
91 |
92 |
93 | 94 | 95 |
96 |
97 |
98 |
99 |

"What a Company"

100 |

That is what they all say about us

101 |
102 |
103 |

"I shouldn't have gone with their competitor."

104 |

105 | Nan Chief Fun Officer 106 | Acme Toys 107 |

108 |
109 |
110 |
111 |
112 | 113 |
114 |
115 |

Breaking The Grid, Grabs Your Attention

116 |

Instead of focusing on content creation and hard work, we have learned how to master the art of doing 117 | nothing by providing massive amounts of whitespace and generic content that can seem massive, monolithic 118 | and worth your attention.

119 | Read More 120 |

121 | Case Studies 122 |

123 |

Did We Tell You About Our Bananas?

124 |

Yes I know you probably disregarded the earlier boasts as non-sequitor filler content, but its really 125 | true. It took years of gene splicing and combinatory DNA research, but our bananas can really dance.

126 | I'm Still Quite Interested 127 |
128 |
129 | 130 | 131 | 159 |
160 | 161 | 162 | 163 | --------------------------------------------------------------------------------