Domain Driven Design with Laravel 9

  • avatar
Preview post image

Modern web frameworks teach you to take one group of related concepts and split it across multiple places throughout your codebase. Laravel is a robust framework with a big community behind it. Usually it's standard structure is enough for most starting projects.

Building scalable applications, instead, requires a different approach. Have you ever heard from a client to work on controllers or review the models folder? Probably never - they ask you to work on invoicing, clients management or users. These concept groups are called domains.

Need reliable hosting services?

Create your account and receive 20€ for free!

Google OAuth 2.0 access for server side web apps

  • avatar
  • 845 Views
  • 5 Likes
  • 12 mins read
Preview post image

Google is a popular platform that is commonly used on websites as registration or login option. It allows us to register with our Google account with just a few clicks and skip the process of email validation. It saves us a lot of time and makes the life easier as we don't need to remember all those credentials for different websites anymore.

Nginx with PHP8.1 FPM on Ubuntu 20.04

  • avatar
  • 1.2K Views
  • 13 Likes
  • 5 mins read
Preview post image

PHP is a general-purpose scripting language geared towards web development. PHP code is usually processed on a web server by a PHP interpreter implemented as a module, a daemon or as a Common Gateway Interface (CGI) executable.

By default Nginx is not capable of processing dynamic web pages with PHP so it requires the use of specific additional plugins for this purpose. One of these plugins is FPM (FastCGI Process Manager). FPM is an alternative PHP FastCGI implementation with some additional features (mostly) useful for heavy-loaded sites. It is the preferred method of processing PHP pages with Nginx and is faster than traditional CGI based methods.

 Join Our Newsletter

Get the latest news and popular articles to your inbox every month

How to install MongoDB 5 on Ubuntu 20.04

  • avatar
  • 494 Views
  • 12 Likes
  • 6 mins read
Preview post image

MongoDB is one of the popular open source and document oriented database systems. It belongs to a family of databases called NoSQL, which is different from the traditional table based SQL databases. It makes use of collections, each having multiple documents, and allows the user to store data in a non relational format. Data is stored in flexible, JSON-like documents where fields can vary from document to document.

How to install or upgrade to Composer v2

  • avatar
  • 1.3K Views
  • 6 Likes
  • 4 mins read
Preview post image

Composer is an application-level package manager for the PHP programming language that provides a standard format for managing dependencies of PHP software and required libraries. It manages them on a per-project basis, installing them in a directory (e.g. vendor) inside your project.

Install PHPStan and configure for Laravel application

  • avatar
  • 1.9K Views
  • 6 Likes
  • 3 mins read
Preview post image

Unlike compiled languages, in PHP if you make a mistake, the program will crash when the line of code with the mistake is executed. When testing a PHP application, whether manually or automatically, developers spend a lot of their time discovering mistakes that wouldn’t even compile in other languages, leaving less time for testing actual business logic.

How to setup Apache Virtual Hosts

  • avatar
  • 435 Views
  • 3 mins read
Preview post image

An Apache web server can host multiple websites on the SAME server. You do not need separate server machine and Apache for each website. This can be achieved using the concept of Virtual Host or VHost.
Any domain that you want to host on your web server will have a separate entry in Apache configuration file.

Install and configure Apache on Ubuntu

  • avatar
  • 423 Views
  • 1 Likes
  • 5 mins read
Preview post image

Apache or Apache HTTP server is a free and open source web server, developed and maintained by the Apache Software Foundation. It is one of the most popular web servers in the world. Apache allows website developers to serve their content over the web and provides many powerful features that can be extended through additional modules.

Domain Driven Design: Components

  • avatar
  • 1.1K Views
  • 2 Likes
  • 5 mins read
Preview post image

We already discussed about the basic concepts and terms in Domain Driven Design (DDD), check out the Introduction post if you missed it. Also we explained which Layers compose the DDD architecture. Now let's see the artifacts we use to unify these concepts and build our application (with PHP example).

Domain Driven Design: Layers

  • avatar
  • 2.3K Views
  • 8 Likes
  • 4 mins read
Preview post image

Creating applications that can handle very complex tasks requires separation of code by using directory structures, layers and boundaries. This is where the concept of a Layered Architecture comes in. Projects developed with the Domain Driven Design approach has the following layers: domain, application, infrastructure and user interface (UI).