Effortless multi-language content translation in your models

Are you building a multi-language application with CodeIgniter 4? Managing translations for your models can be a daunting task, but CodeIgniter Translatable makes it easy and efficient. This lightweight library integrates seamlessly with CodeIgniter 4’s model system, allowing you to handle translations directly within your models. This library simplifies the process while maintaining the flexibility you need. Key Features Simple Setup: Use generator to prepare basic structure for migrations and models....

December 29, 2024 · 2 min

Eager and Lazy Loading in CodeIgniter 4

Efficiently managing database queries is crucial for application performance. To simplify it, I made a nice CodeIgniter 4 library that provides two techniques for loading related data: eager loading and lazy loading. composer require michalsn/codeigniter-nested-model These approaches allow developers to fetch related models in an efficient and intuitive way. Here’s a comprehensive guide to understanding and using these techniques. Eager Loading Eager loading fetches related data in advance, minimizing the number of database queries....

December 12, 2024 · 3 min

Alerts for htmx and CodeIgniter 4

In a traditional CodeIgniter 4 application, setting up alerts is quite simple. We can simply write a few lines of code or use a dedicated library like codeigniter4-alerts. Things get complicated, however, when we use htmx and want the alerts to interact with the way it works. Here a library dedicated to work with htmx can come to the rescue. Installation Installation via composer is very simple: composer require michalsn/codeigniter-htmx-alerts Next, we can add a container in which alerts will be displayed in our view (or main layout)....

September 26, 2024 · 1 min

CodeIgniter Markdown Pages

Markdown Pages project allows you to map Markdown files to collections and easily list or read data from them. In addition to the Markdown parser, we also have the ability to parse YAML sections, where you can put a lot of useful information. How to start: composer michalsn/codeigniter-markdown-pages Basic usage: $markdownPages = service('markdownpages', ROOTPATH . 'pages'); // Get the first directory $dir = $markdownPages->dirs()->first(); echo $dir->getName() // prints: Quick Start echo $dir->getSlug() // prints: quick-start foreach($dir->getFiles()->items() as $file) { echo $file->getName(); // prints: Installation echo $file->getSlug(); // prints: installation echo $file->getPath(); // prints: quick-start/installation echo $content->parse()->getContent(); // prints: parsed markdown from file echo $content->parse()->getMeta(); // prints: parsed YAML as key -> value } This project use Collection class pretty much everywhere so please get familiar with it to use this package comfortably....

December 29, 2023 · 1 min

CodeIgniter Queue

While CodeIgniter 4 itself doesn’t have a built-in queue system, I have built one which rely on the database handler. But what is a queue? It’s a system that allows you to schedule and manage background tasks or jobs to be executed in the given order. These jobs can include sending emails, processing data, generating reports, and more. Using a queue system helps offload time-consuming or resource-intensive tasks from the main application, ensuring that the application remains responsive....

October 14, 2023 · 2 min

CodeIgniter Tags

Tags provide a way to organize content and improve the user’s experience by helping them discover related articles and navigate through a website’s content more efficiently. They are particularly useful in content-heavy websites or blogs where there’s a wide range of topics and subjects covered. This blog also uses tags system. These tags help categorize and organize content to make it more accessible and searchable. Since there was no tags library for CodeIgniter 4, I decided to write one....

September 28, 2023 · 2 min

Auth0 CodeIgniter 4 package

Auth0 is a cloud-based service that helps developers add secure user authentication and authorization features to their applications without having to build these components from scratch. Auth0 is designed to simplify the process of implementing user authentication, including features like single sign-on (SSO), multi-factor authentication (MFA), and social login. Auth0 allows you to add basic authentication functionality very quickly by delegating it to an external platform, but we should always consider whether such a solution definitely suits us....

August 16, 2023 · 2 min

Using Kinde with CodeIgniter 4

Kinde is an identity and access management platform that provides authentication and authorization services for web applications. It’s one of the direct auth0 competitors. The first thing that strikes you from the business side is that we get more options in the free version as well as higher limits for active users. It is also less expensive than auth0 when we finally reach the free limits. For startups that often use a cloud-based authentication model, this is a significant convenience....

July 27, 2023 · 2 min

CodeIgniter Signed Url

Signing URLs may be very useful when we want to prevent manual URL manipulation or when the given address should have an expiration date. CodeIgniter Signed URL package makes it very easy. ...

December 28, 2022 · 3 min

CodeIgniter HTMX

HTMX is gaining in popularity. No wonder, because in a world overflowing with Javascript-based sites that getting more and more complicated to achieve even tiny result, this solution turns out to be a pleasant return to the past - in quite a good way. ...

December 12, 2022 · 2 min