On React App Security

Imagine, you inherited a React app from another developer and you need to make sure the existing code is secure. In this post I’ll give you a checklist which can help to secure your app.

A Few Takeaways from Kyle Simpson's Talk at MallorcaJS Meetup

Kyle Simpson (@getify) gave a talk on the “economy of keystrokes” at the last MallorcaJS meetup on October 15th, 2019. Kyle's talk was sometimes eye-opening, sometimes encouraging and sometimes controversial but indeed worth listening to.

For those of you who don't know Kyle Simpson, It's an author of the “You don't know JS” book series, speaker, teacher and more. Kyle was invited to Mallorca by Trivago guys and kindly agreed to share his wisdom with MallorcaJS community.

I'd like to share a few takeaways from Kyle's talk with you because I believe it's something that every developer should contemplate.

XConf Europe 2019

XConf logo

XConf Europe 2019 took place in Barcelona on July 5th and it collected about 100-150 software-related professionals and I had the chance to attend it too. I'll share my impressions on the conference and its content in this brief post.

Is Drupal 8 really faster than its predecessor?

I have been told recently that the times when Drupal 8 was slow passed long ago, that increased number of abstractions in Drupal 8 doesn’t affect its performance, and that Drupal 7 hook system worse than Drupal 8 events in terms of speed. When I don’t believe, I measure and encourage others to do so.

From Let's Encrypt on one server to Certbot on another

Recently I had a task to transfer a few sites secured by Let's Encrypt certificates from one Ubuntu server to another. In this post, I'll share my experience in transferring SSL certificates - or better to say - reobtaining them.

PWA Recipe: Custom Offline Page for Drupal 8 Without a Single Line of Code

Who said that Progressive Web App (PWA) concepts are hard to implement or Drupal 8 is not ready for PWA? Here is a simple recipe to prove them wrong. Install SSL certificate (or use localhost). Install Service Worker Registration module. Copy service-worker.js, offline.html and manifest.json from Go...

Configuring Webpack LiveReload with Laravel.mix

You probably know that Laravel.elixir was replaced with Laravel.mix in Laravel 5.4. If Laravel.elixir was based on Gulp, then Laravel.mix is built on top of Webpack. Therefore, Gulp plugins are not suitable anymore and we have to replace them with Webpack plugins. Luckily, there is a webpack plugin for those who prefer LiveReload to BrowserSync.

Webpack LiveReload plugin will automatically monitor your files for changes and refresh the page when the changes are detected. In this short post I will show you how to make it work.

Realtime Apps With Laravel Echo: Tips and Tricks

Some time ago, I had the pleasure of developing a realtime app for my client. The app was based on Laravel, Node.js, Redis and Laravel Echo. During the process of development, I found a few things that can be not so obvious to developers who just started to tackle the problem of creating a realtime app with Laravel. In this post I’ll share my insights.

Laravel-localization middlewares now support route exceptions

We usually apply laravel-localization middlewares to the entire web route group. It means that laravel-localization package redirects broadcasting/auth route to en/broadcasting/auth, which crashes Event Broadcasting.

The problem is related to the fact that Laravel Echo Server does not support redirects (HTTP statuses other than 200) of the Laravel authorization service broadcasting/auth.

It is probably possible to improve Laravel Echo Server in order to support redirects, but from my point of view it is easier to solve the problem from the Laravel side.

Code Less in Drupal 8 with Drupal Console

Drupal Console brings a whole new developer experience (DX) to Drupal 8. This console tool is similar to Drush but has some mind-blowing features, which I cannot wait to show you in action. Although, Drupal Console is in RC stage at the moment, it performs its functions well enough.

In this tutorial, we will generate boilerplate code for Drupal 8 via command line. In some frameworks this approach can be also called scaffolding. With about five lines of custom code and a few console commands we will create a fully-functional Drupal 8 module with a field formatter that will display QR codes in fields of Link type. The module will be using a third-party service to generate QR codes of entered URLs.