Framework: Automating Nginx Configuration
2022 ∙ May ∙ Osm Framework
2 years ago ∙ 1 minute read
Use config:nginx
, config:host
and install:nginx
commands to automate Nginx configuration of your project. Now, it's fully automated!
2022 ∙ May ∙ Osm Framework
2 years ago ∙ 1 minute read
Use config:nginx
, config:host
and install:nginx
commands to automate Nginx configuration of your project. Now, it's fully automated!
2 years ago ∙ 2 minutes read
Estimating projects is hard. Here is my approach for getting better at it.
It's based on a concept of a "primitive problem" - something non-trivial that you can solve in one go.
You can use primitive problems as story points in agile project management.
2021 ∙ November ∙ Osm Framework
2 years ago ∙ 2 minutes read
Recently, I developed a couple of helper functions for transmitting PHP objects over the wire, and saving them in database records:
dehydrate()
- recursively converts an instance of a PHP class to a plain untyped object. Then, store the plain object in the database, or convert it to JSON and send it to a browser.hydrate()
- recursively converts a plain untyped object back to a PHP class instance. Use if after decoding a JSON received from the browser, or after loading a database record.This article describes how to use these functions.
2021 ∙ November ∙ Osm Framework
3 years ago ∙ 2 minutes read
When active, modal elements - dialogs, pickers, or AJAX spinners - need to prevent user interaction with the rest of the page.
A common approach is putting an overlay <div>
under the modal element covering the rest of the page, as a click shield. However, user can still navigate the page with the keyboard.
Today, I implemented a better solution by capturing mouse and keyboard events outside the modal element, and keeping focus inside.
2021 ∙ November ∙ Osm Framework
3 years ago ∙ 2 minutes read
Currently, I'm working on Osm Admin package, and I need a module to inject its HTML markup around some well-known place in a Blade template. However, Blade template extensibility is not a problem that's specific to Osm Admin project. It's a generic problem. Let's solve that.
2021 ∙ August ∙ osm.software Website
3 years ago ∙ 1 minute read
Install PHP 8, MySql, Node, Gulp and ElasticSearch. Clone the project. Edit project settings. Finally, run few commands in the command line.
3 years ago ∙ 1 minute read
This article describes how we use GitHub issues and projects, both for new development and for support.
2021 ∙ August ∙ Osm Framework
3 years ago ∙ 1 minute read
Install and use osm
, osmc
, osmt
and osmh
command line aliases for faster command typing.
Note. This post is moved to Osm Framework documentation.
2021 ∙ August ∙ Osm Framework
3 years ago ∙ 1 minute read
Once PHP 8, Node and Gulp are installed, create new projects quickly using the command line.
Note. This post is moved to Osm Framework documentation.
2021 ∙ July ∙ osm.software Website
3 years ago ∙ 1 minute read
Today, osm.software reached an important milestone - 100% Lighthouse score.
2021 ∙ July ∙ osm.software Website
3 years ago ∙ 1 minute read
This article explains how to manage and assign blog categories.
2021 ∙ June ∙ osm.software Website
3 years ago ∙ 9 minutes read
Readers of osm.software blog can search the blog for a specific phrase, and narrow down listed articles using multi-select layered navigation. Let's see how it works under the hood.