アプリ関連ニュース

Useful Laravel Packages

Today I would like to share about useful laravel packages. The following packages are most useful 7 packages of the best laravel packages. Let’s take a look.

Laravel Debugbar

Laravel Debugbar is a package that help users add a developer toolbar to their applications. This package is mainly used for debugging purposes. There are a lot of options available in Debugbar. It allows you to monitor and debug all the requests directly on the Laravel view. You can also monitor SQL queries, Mail, and queue.  

https://github.com/barryvdh/laravel-debugbar

Laravel User Verification

This package allows you to handle user verification and validates emails. It generates and stores a verification token for the registered user, sends or queue an email with the verification token link, handles the token verification, sets the user as verified. This package also provides functionality, i.e verified route middleware.

https://github.com/jrean/laravel-user-verification

Socialite

Socialite offers a simple and easy way to handle OAuth authentication. It allows the users to login via some of the most popular social networks and services including Facebook, Twitter, Google, GitHub, and BitBucket.

https://github.com/laravel/socialite

Laravel Mix

Laravel Mix provides a clean and rich Application Programming Interface (API) for defining webpack-build steps for your project. It is the most powerful asset compilation tool available for Laravel today.

https://www.npmjs.com/package/laravel-mix

Migration Generator

Migration generator is a Laravel package that you can use to generate migrations from an existing database, including indexes and foreign keys.

https://github.com/Xethron/migrations-generator

Laravel Backup

This Laravel package creates a backup of all your files within an application. It creates a zip file that contains all files in the directories you specify along with a dump of your database. You can store a backup on any file system.

https://github.com/spatie/laravel-backup

No Captcha

No Captcha is a package for implementing Google reCaptcha validation and protecting forms from spamming. First, you need to obtain a free API key from reCaptcha.

https://github.com/anhskohbo/no-captcha

This is all for now.

Hope you enjoy that.

By Asahi



Laravel 9

It’s not officially release yet. It was originally scheduled to be released around September this year, but the Laravel team decided to release back to January 2022. Lets see what kinds of features might include in Laravel 9.

PHP Version

Laravel 9 requires Symfony 6.0 and has a minimum requirement of PHP 8,so I think the same rules will apply to Laravel 9.

Anonymous stub migrations

Laravel 8.37 announced a new feature called Anonymous Migration that avoids migration class name collisions.

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
 
return anoyclass extends Migration {
 
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('table', function (Blueprint $table) {
            $table->string('column');
        });
    }
};

A tidy design for routes:list

The route: list command has been in Laravel for a long time, and the problem I sometimes encounter is that if you have defined large and complex routes, trying to view them in the console can be complicated.

Screenshot 2022-01-05 at 13 57 23
Image credit: nunomaduro

New Query Builder Interface

Laravel 9 has a new QueryBuilder interface developed by Chris Morrell and you can see here for all the details.

For developers who rely on type hints for static analysis, refactoring, or code completion in their IDE, the lack of a shared interface or inheritance between Query\BuilderEloquent\Builder and Eloquent\Relation can be pretty tricky:

return Model::query()
  ->whereNotExists(function($query) {
    // $query is a Query\Builder
  })
  ->whereHas('relation', function($query) {
    // $query is an Eloquent\Builder
  })
  ->with('relation', function($query) {
    // $query is an Eloquent\Relation
  });

SwiftMailer to Symfony Mailer

Swift Mailer has been deprecated in Symfony and Laravel 9 will switch to using Symfony Mailer for all mail transport.

PHP String functions

Although PHP 8 will be the minimum, you can still use PHP string functions, str_contains()str_starts_with() and str_ends_with() internally in the \Illuminate\Support\Str class. You can check here for more detail.

There might be still many featuers going on and I guess laravel 9 is coming soon. When it releases, I might probably write another article relating with this.

Yuuma



Laravel 8.80でRoute Group Controllerを定義する

Laravelチームは、バージョン8.80をリリースしました。このバージョンでは、ルートグループコントローラーの定義、Bladeコンパイラーによる文字列のレンダリング、PHPRedisのシリアライズと圧縮設定のサポート、v8.xブランチの最新の変更点などを確認することができます。

ルートグループコントローラーを定義する

これは、ルートグループにコントローラを定義する機能で、グループが同じコントローラを使用する場合、ルートが使用するコントローラを繰り返す必要がないと言う意味です。

例: 

ブレードで文字列をレンダリング

Blade::render()は 、Blade コンパイラを使用して、Blade テンプレートの文字列をレンダリング文字列に変換します。

phpredis Serialization と Compression コンフィグサポート

このオプションは、Redis – Laravelのドキュメントに記載されるようになりました。

これは、PHPRedis のシリアライズや圧縮のオプションを設定する機能で、 サービスプロバイダを上書きしたりカスタムドライバを定義したりする必要がありません。

シリアライズオプションは以下の通りです。

  • NONE
  • PHP
  • JSON
  • IGBINARY
  • MSGPACK

そして、以下のコンプレッサーのオプションです。

  • NONE
  • LZF
  • ZSTD
  • LZ4

8.xのリリースノート

新機能やアップデート、8.79.0と8.80.0の差分はGitHubで確認できます。また、以下のリリースノートはチェンジログから直接引用しています。

ということで今回は以上になります。

最後までご高覧頂きまして有難うございました。

By Ami



[aws] pemキーを使用してPuTTYでssh接続ができない場合の対処方法

aws等でインスタンスに指定したキーペアのプライベートキー(.pem)を使用して
PuTTYでssh接続できない場合の対処方法をシェアします。

続きを読む

Top JavaScript Frameworks

There are numerous JS frameworks. It’s not possible for anyone to tell considering the way that each JS framework is great for one pack of challenges and not the best one for another.

JavaScript was at first used exceptionally for the client-side. However, nowadays JavaScript is also used as a server-side programming language.

1. React

React is one of the finest front-end open-source JavaScript frameworks that allow developers to create rich user interfaces. Created by a team of Facebook developers, React introduced functional, declarative, and component-based styles.  React is a complex framework for new developers to learn, use, and understand, but it has an extensive community. 

Pros:

  • Plenty of reusable components to build business logic
  • Ease of integration with front-end and back-end
  • Unidirectional data flow with flux controls
  • SEO-friendly JavaScript framework
  • Huge support community
  • Capacity to test and debug rapidly

Cons:

  • Only covers the UI layer of the app
  • Have to deal with complex state management 
  • Constant upgrades make it difficult for developers to keep up with the changes
  • New developers may find JSX to be a barrier

2. Angular

Angular is one of the top-rated JavaScript UI frameworks that developers utilize to build classy single-page web applications. The framework leverages HTML syntax on dynamic web pages.

Pros:

  • Component-based architecture
  • High-class server performance
  • Two-way data binding 
  • A rich collection of third-party integrations
  • A massive community of developers

Cons:

  • Need to learn JavaScript and Typescript
  • Struggles with SEO due to poor accessibility
  • Migration from one version to another is difficult
  • Debugging the scope can be difficult

3. Vue JS

Vue.js is one of the most versatile front-end JavaScript frameworks. It’s also known as a progressive framework due to its capability to facilitate the design of high-end single-page web applications through dual integration mode. The framework follows the MVMM (Model-View-View-Model) architecture pattern. Besides that, Vue.js is simple, unrestricted, and an easy-to-adopt framework.   

Pros:

  • Quick and easy configuration due to MVVM architecture
  • Easy to learn, use, and understand even for beginners
  • Lightweight framework with a small build size
  • Seamless integration with third-party apps

Cons:

  • Lack of high-end and effective plugins
  • Older versions of iOS and Safari browsers can cause problems
  • Difficulty with two-way binding

4. Svelte

Svelte JS is an open-source, web component-based front-end development framework.It is possible to create components using Svelte JS using the languages you’re content using (JavaScript, HTML, or CSS).

Pros:

  • Component-based model pattern
  • Easy to use, learn, and understand
  • One of the most small-sized builds 
  • Supports both client and server-side rendering

Cons:

  • Not much IDE support available in the market
  • Doesn’t have the backing of tech giants like Vue, Angular, and React
  • Absence of third-party components
  • Difficult to scale up the application

5. Express JS

Express JS is an open-source and minimalistic back-end JavaScript framework based on Node.js that developers use to build complex APIs and web applications. One of the major advantages of this Express JS framework is fast server-side programming. 

Pros:

  • Active community support
  • Rich set of documentation
  • Powerful routing mechanism
  • Seamless connectivity with all databases
  • Accelerates web app development process

Cons:

  • Security and code quality can be an issue
  • Middleware creates issues for many clients
  • Error messages have no description
  • Hard to find an optimal way to write code for server-side

Tsuki



アプリ関連ニュース

お問い合わせはこちら

お問い合わせ・ご相談はお電話、またはお問い合わせフォームよりお受け付けいたしております。

tel. 06-6454-8833(平日 10:00~17:00)

お問い合わせフォーム