GithubHelp home page GithubHelp logo

laravel-enso / enso Goto Github PK

View Code? Open in Web Editor NEW
1.1K 64.0 281.0 451.67 MB

Laravel Vue SPA, Bulma themed. For demo login use `[email protected]` & `password` -

Home Page: https://www.laravel-enso.com

License: MIT License

PHP 99.23% Vue 0.36% Dockerfile 0.37% Blade 0.04%
laravel laravel-enso enso spa bulma vue-router vuex vue admin boilerplate

enso's Introduction

Laravel Enso

StyleCI Backers on Open Collective Sponsors on Open Collective Github Issues Build Status GitHub language count GitHub GitHub tag (latest by date) GitHub Release Date GitHub commits since latest release

Hit the ground running when building your new Laravel SPA project with boilerplate and extra functionality out of the box!

 

Watch the demo

click on the photo to view a short demo in compatible browsers

Important

If you are using this project please consult the changelog on every update.

Official Documentation

The documentation is available here split into backend and frontend. Note that most sections have short demo clips.

Take It For A Spin

You may try out a live demo installation by visiting laravel-enso.com and logging in with [email protected] and password.

Installation Steps

  1. Download the project with git clone https://github.com/laravel-enso/enso.git --depth 1

  2. Within the project folder run composer install

  3. Create a database for your site (see the Laravel database documentation), copy or rename the .env.example file to .env, edit the database configuration information, and run php artisan key:generate

  4. In order to serve the back-end API, take a look at the Local Development Server section of the Laravel installation documentation and consider using Valet for a better experience

  5. Run php artisan migrate --seed

  6. Open the client folder, copy the .env.example file, save it as .env and set the URL for the back-end API (which you've configured at step 4)

  7. Run yarn && yarn build

  8. Launch the site and log into the project with user: [email protected], password: password

  9. For live reload / hot module replacement functionality run yarn serve

  10. (optional) Setup the configuration files as needed, in config/enso/*.php

Enjoy!

Support services (new)

While developing Enso, we constantly received private inquiries from devs and teams asking us about paid support. Some of these requests even lead to fruitful collaborations, so we finally decided to launch such an option.

If you're looking for premium support when building applications with Enso we can help you with that. Our support packages start at 480 Eur / month with 8 hours included. With premium support you will get:

  • a private repo on our self hosted gitlab instance where you can host your project
  • priority in addressing your issues
  • help with understanding the Enso environment
  • getting you to be proficient when developing on Enso
  • mentoring
  • code reviews
  • general advice & support on Laravel & Vue
  • assistance on Enso version upgrades
  • up to 4 hours / month of remote desktop sessions and call conferences with your team
  • direct communication via Slack during our office hours

The support services are provided by a team of 4 members.

Thanks

Built with with ❤️, crafted on Laravel 5.6.x, Bulma 0.6.x, Vuejs 2.5.x and:

Vue Router, Vuex, Axios, Font awesome 5, Animate.css, Bulma-Extensions, Driver.js, Chart.js, Flatpickr,

Special thanks to Taylor Otwell, Jeffrey Way, Evan You and Jeremy Thomas.

Contributions

are welcome. Pull requests are great, but issues are good too.

Sponsor (new)

This project is backed by Earthlink

Contributors

This project exists thanks to all the people who contribute.

Backers

Thank you to all our backers! 🙏 [Become a backer]

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

License

This package is released under the MIT license.

enso's People

Contributors

abdullahiabdulkabir avatar aocneanu avatar curtisdelicata avatar dependabot[bot] avatar gandesc avatar gitmanuela avatar heyner29 avatar jlsjonas avatar k33n avatar mauthi avatar monkeywithacupcake avatar raftx24 avatar shapito27 avatar stylecibot avatar vmcvlad avatar waffle-iron avatar wendivoid avatar y0net avatar yacoubbelaoura avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

enso's Issues

Password settings are gone?

Enso 2.2.1 + Postgresql 9.6
I do not find, where a logged user can change his/her password.

Even, Forgot password sends a reser password link, but when I click on it, I got the login page, and there is no change password screen.

Make footer customizable

First, remove the footer from the core package. Then, the footer becomes customizable because it will not be overwritten at every update

New language has no flag displayed

When I add a new language, I got no flag displayed for it, even the flag files are exist and the database contains similar entries for old and new languages.

kijeloles_658

I found that, two files contains path to the flags, but only for the default languages, seems never updated:

  • public/js/enso.js
  • public/js/enso.js.map

Did I miss something?

Can multiple roles per user be supported?

A user can often be in many roles, a customer and a supplier, for example. Is this something that can or will be supported? For us, it is a deal breaker with so many real world use-cases.

Errors after fontawsome icon update

I did the icon update as described but as you can see in screenshots not all icons are working.
Some are for my new menu items this is ok, I have to change them manually but some are from the default items like tachometer in dashboard.

screenshot 2018-01-24 18 47 20
screenshot 2018-01-24 18 47 15

Did I forgot something?
Additionally the spaces between the cards are also missing. This can be a problem in combination with the missing icons?

Cannot login after installation - PHP 7.2 private const - syntax error (with quick solution)

Hi,

It seems there is a problem with using private const in the recent php 7.2 under debian 9.

PHP 7.2.1-1+0~20180105151615.16+stretch~1.gbpd3910a (cli) (built: Jan 5 2018 15:16:17) ( NTS )

Laravel-enso version: latest git at 13th of Jan, 2018 (1.2.19-119-g50eb02f)

Error message:

[2018-01-13 23:40:53] local.ERROR: Parse error: syntax error, unexpected 'const' (T_CONST), expecting variable (T_VARIABLE) {"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Parse error: syntax error, unexpected 'const' (T_CONST), expecting variable (T_VARIABLE) at x/vendor/laravel-enso/core/src/app/Models/User.php:19)

Effect of this issue: Cannot login into the application.

Quick and dirty resolution: Removing the private from the definition.

--- /var/www/clients/client1/web2/web/vendor/laravel-enso/core/src/app/Models/User.php-original	2018-01-13 22:43:34.003908721 +0100
+++ /var/www/clients/client1/web2/web/vendor/laravel-enso/core/src/app/Models/User.php	2018-01-13 22:49:43.899935429 +0100
@@ -16,7 +16,7 @@
 {
     use Impersonate, IsActive, ActionLogger, Notifiable;
 
-    private const AdminRoleId = 1;
+    const AdminRoleId = 1;
 
     protected $hidden = ['password', 'remember_token'];

Updating JSON field in Postgresql, user's preferences

Problem

Cannot update json field due to syntax error. Specifically when user wants to change the language. Details below.

Tools

  • Enso 2.1.30
  • PGSql 9.6
  • PHP 7.2

Steps to reproduce:

  • Updating language settings to a new one (English -> whatever)
  • Check the debug console

Problematic sql query:

update "preferences" set "value"->'global'->>'lang' = hu, "updated_at" = 2018-02-22 21:54:50 where "preferences"."user_id" = 1 and "preferences"."user_id" is not null

kijeloles_657

Possibility to change logo

At the moment the logo is overwritten everytime when I push the assets.
Would be nice if you can provide a possibility to define another logo.

White screen

Hello!

I have cloned this project and followed install steps but I only have a white screen. Debugbar dont throw any info.

How I can proceed to solve it?

My repository is here: https://github.com/jjmontalban/Enso

Any advice will be well received

Best regards!

After Session has expired needs a redirect to login view.

Hi,

I experienced an issue when the session expires and therefore the calls to the api from axios does not return the data at all. I see it is because the user is not logged in, but still is in the admin-panel if browser window is not reloded manually.

"Cannot GET /" from localhost:8080 on npm run hot/hrm

Followed intro steps of documentation.
I get this error on the 1.1.0 version.
On the most recent branch, I get:

 WARNING  Compiled with 1 warnings                                                                                                                                         9:56:33 PM
 warning  in ./resources/assets/js/vendor/laravel-enso/components/select/VueSelect.vue
(Emitted value instead of an instance of Error) the "scope" attribute for scoped slots have been deprecated and replaced by "slot-scope" since 2.5. The new "slot-scope" attribute can also be used on plain elements in addition to <template> to denote scoped slots.

Running different npm scripts, I can get it to run the script without it terminating early. Still end up with the same output at localhost:8080.

What I've tried:
Running with homestead
Running through valet

The warning output shouldn't prevent the script from running as it is caused by a non-breaking change in Vue 2.5.

This may be a simple fix but I can't seem to get it. Any help? Everything is default. If this is a simple fix, could you add a clarification step in the doc between steps 4 and 5? This project looks great and I'd contribute if I can it working.

Git: Ignore .js/.js.map Files in public folder

Is it really necessary that we have the js files in public folder under version control? It increases the diff of PR and I think we don't need them since we create them with npm? Or did I understand anything wrong?

Show message if we try to edit a non-existent object

(not sure if this is core or datatable or formbuilder ?)

Example: If you call
administration/owners/1034240/edit
you get an empty screen. It would be better if you get a message and you get redirected to last / overview screen?

Second question (was to reason to find this error):

  • It would be nice if we can to something like this:
public function edit(Owner $owner, OwnerForm $form)
    {
        if ($owner.xx != yy) {
            // return redirect to table and show message
        }
        return ['form' => $form->edit($owner)];
    }

I could not manage this?

Want to contribute Dutch localisation, but I need advice

For Laravel Enso I would like to contribute a Dutch(NL) translation. However I am a bit confused as where I can contribute.

Core(/Enso) -> Contains translations but not the migration for the localisation table, so making a PR with the translations + migration(insert) will give migration errors for user that do not use the localisation logic
Localisation -> Contains the migrations, however not the translation files

I can split the addition of the translation in two seperate PR's for the Localization and Core repositories, however that might create a mismatch when not both of them are pulled at once.

For me all options work though, I would just like to know your preference and I will adjust my PR(s).

Blank screen with loader

Hello!

I have cloned this project and followed install steps but I only have a blank green screen with loader. Debugger shows some Queries as follow:

select * from users where id = '1' limit 1
43.77ms/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php:51

select * from owners where owners.id = '1' limit 1
480μsmiddleware::verify-active-state:12

insert into action_logs (user_id, url, route, action, updated_at, created_at) values ('1', 'http://enso.dev/api/core', 'core.index', 'GET', '2018-02-02 12:22:30', '2018-02-02 12:22:30')
76.97ms/vendor/laravel/framework/src/Illuminate/Support/helpers.php:1038

select * from roles where roles.id = '1' limit 1
61.46ms/vendor/laravel-enso/permissionmanager/src/AuthServiceProvider.php:13

select permissions.*, permission_role.role_id as pivot_role_id, permission_role.permission_id as pivot_permission_id, permission_role.created_at as pivot_created_at, permission_role.updated_at as pivot_updated_at from permissions inner join permission_role on permissions.id = permission_role.permission_id where permission_role.role_id = '1' and name = 'core.index' limit 1

And by passing this "/api/core" to the browser, getting the following message with errors:

Symfony \ Component \ HttpKernel \ Exception \ AccessDeniedHttpException
You are not authorized to perform this action

How I can proceed to solve it?

Best regards!

Migration error in Xampp

Helllo again.

I'm sorry but I have errors in the migration which cannot moving forward:

php artisan migrate
[32mMigration table created successfully.[39m

[33mIn Connection.php line 664:[39m
[37;41m [39;49m
[37;41m SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error i [39;49m
[37;41m n your SQL syntax; check the manual that corresponds to your MariaDB server [39;49m
[37;41m version for the right syntax to use near 'json not null, created_at time [39;49m
[37;41m stamp null, updated_at timestamp null) default' at line 1 (SQL: create ta [39;49m
[37;41m ble preferences (id int unsigned not null auto_increment primary key, [39;49m [37;41m user_id int unsigned not null, value json not null, created_at timesta [39;49m
[37;41m mp null, updated_at timestamp null) default character set utf8mb4 collate [39;49m
[37;41m utf8mb4_unicode_ci) [39;49m
[37;41m [39;49m

[33mIn PDOConnection.php line 79:[39m
[37;41m [39;49m
[37;41m SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error i [39;49m
[37;41m n your SQL syntax; check the manual that corresponds to your MariaDB server [39;49m
[37;41m version for the right syntax to use near 'json not null, created_at time [39;49m
[37;41m stamp null, updated_at timestamp null) default' at line 1 [39;49m
[37;41m [39;49m

[33mIn PDOConnection.php line 77:[39m
[37;41m [39;49m
[37;41m SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error i [39;49m
[37;41m n your SQL syntax; check the manual that corresponds to your MariaDB server [39;49m
[37;41m version for the right syntax to use near 'json not null, created_at time [39;49m
[37;41m stamp null, updated_at timestamp null) default' at line 1 [39;49m
[37;41m [39;49m

Somebody can help me please?

Best regards

Package auto-discovery

Update the composer.json file for all packages in order to support package auto-discovery

Comments with user tags fail to post.

Comments that are tagged fail to post when Pusher is set up and the user is outside of EU. I am in the US. Pusher returns a payload with a mismatched size.

To fix this, I manually set the payload in /resources/assets/js/pages/enso/layout/navbar/Notifications.vue.

init() {
		this.Echo = new Echo({
		    broadcaster: 'pusher',
		    key: this.meta.pusher,
		    cluster: 'us2',
		    namespace: 'App.Events'
		});
	},

You are not authorized to perform this action - VerifyRouteAccess.php

Enso 2.2.1 + mysql + php 7.2
After doing the same things as in my pgsql environment, something not ok with my mysql environment.

I cleared the session files in the server, cleared the browser cache, I stuck it here.
Did I miss something trivial?

You are not authorized to perform this action
/var/www/clients/client1/web2/web/vendor/laravel-enso/permissionmanager/src/app/Http/Middleware/VerifyRouteAccess.php#13

kijeloles_664

Migrations

I'm new to Laravel, but I know the basics. I followed the installation instructions. However, upon running php artisan migrate, only the password_resets table was created. I also tried php artisan migrate --force and also used php artisan migrate --path=vendor/laravel-enso/../../migrations so I could migrate the migrations from the package itself. Only the jobs table was migrated. Am I doing something wrong or am I missing anything?

Exception, token mismatch

Enso 2.1.35 + Postgresql 9.6
Since I upgraded to the latest version, I got strange behavior when I want to create new user.
I got the following exception:

Illuminate\Session\TokenMismatchException
/var/www/clients/client1/web7/web/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php#70

After that, I am not able to logout or making actions (Update, Save etc.), because I got this exception.
Did I miss something?

General problem with private const + PHP 7.2

In general, to get Enso work after installation on debian 9 + PHP 7.2 (PHP 7.2.1-1+0~20180105151615.16+stretch~1.gbpd3910a (cli) (built: Jan 5 2018 15:16:17) ( NTS )), I had to change all private const appearance to const in all php files.

After that, the situation is much better (charts appear etc.).

broken by Browsersync

when I use mix.browsersync('blabla.test'), I get the following error
TypeError: Cannot read property 'call' of undefined at __webpack_require__ (enso.js:50) at <anonymous>
and the login box is not loading

Document Title Pre/Postfix

At the moment if you activate extendedDocumentTitle in config the application name is added as postfix to document title:

  • Document Title: APPLICATION_NAME | Page name

It would be nice if you can configure if the name should be added as post/or prefix

  • New config: extendedDocumentTitlePosition: pre|post
  • If pre: Document Title = APPLICATION_NAME | Page name
  • If post: Document Title = Page name | APPLICATION_NAME

Maybe add another configuration for separator (default |)

If not possible change it to postfix by default, I think its more often useful as postfix than as prefix

Icon in custom renderer

I have a table where I use a renderer for a column. The renderer is defined as:

customRender(row, column) {
	            switch (column.name) {
		            case 'document_url':
		                return row[column.name] ? `<a href="${row[column.name]}" target="_blank" class="button is-small is-table-button is-primary"><span class="icon is-small"><fa icon="cloud-upload-alt"></fa></span>`
		                    : ``;
		            default:
		                toastr.warning(`render for column ${column.name} is not defined.`);
		                return this.__(row[column.name]);
	            }
	        }

At the moment the icon is not displayed correctly (and in dom its still <fa icon="cloud-upload-alt"></fa> instead of svg tag.

If I use the icon anywhere else on the same page it works (means it is imported correctly)

Question to changelog: Adds Horizon & Redis for jobs, cache.

Is there a documentation available how to configure this?
I never used horizon before.
Is this a replacement for the jobs table? Is it possible to still use the jobs table and php artisan queue:work?
If I run this command and I start a download I get the file but there is a job for notfication 255 times executed after that.

Sorry for my questions but this topic is new for me.

Examples table query problem with Postgresql

Enso has an example "application", called examples and the route is: domain.tld/examples/table
When I access to that example, the default query cause sql syntax errors with PGSQL.

The generated query is:

select count(*) as aggregate from "examples" where ("examples"."name" LIKE %% or "examples"."position" LIKE %% or "examples"."project" LIKE %% or "examples"."salary" LIKE %% or "examples"."taxes" LIKE %%)

Problems:

  • One general issue is the wildcard usage in the query: %%
    It supposed to be like this: '%%'

  • The other problem is, the following operator type: INTEGER LIKE '%%'
    In other words, there is no such an operator, which compare an integer to a wildcard.
    It happens with "examples"."salary" LIKE '%%' and "examples"."taxes" LIKE '%%'
    It supposed to be like this:
    CAST("examples"."salary" AS TEXT) LIKE '%%' or CAST("examples"."taxes" AS TEXT) LIKE '%%'

Is it a laravel issue or enso related?

Place to define global helper functions

Sorry for this "easy" question but I would like to now where the right place to define JS helper functions is.

Example:

  • I format my date in VueTable like d.m.Y
  • To use the date in functions (like compare) I have to convert the date to a real Date Object (and I need the same converting function many times)

Is there a best practice to define such global helpers? If yes, where and how should I define them.

Thx.

Possibility to define own preferences

I saw that there are some preferences stored in database.
It would be nice if you can add to the documentation (if this is implemented):

  • how to access them in JS
  • how to update them in JS
  • how to add new preferences

Practical usecase from my side:

  • I have a card component und I would like to store for every user if the card component is open or collapsed per default (and if the user collapses it the value in database should be updated)

Maybe there is an easy solution but I tried for 2 hours and didn't find anything...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.