Phone Validation in Laravel Using Abstract

A Laravel validation rule for phone numbers using Abstract.

Using Disposable Emails for a Demo

Disposable emails remove friction from a demo environment.

Using Disposable Emails for a Demo

Disposable emails remove friction from a demo environment.

Using ApyHub for Image Moderation

Detect explicit content in items images for an auctions events platform using ApyHub.

Use SharpAPI for Translating E-Commerce Product Info

Laravel framework auction events platform integrates SharpAPI for translated product texts.

Integrating a ReactPHP Server in Laravel

Use a command to run it as a daemon.

Write and Repurpose Social with ChatGPT

A Recipe for writing and repurposing content for major social channels with ChatGPT.

What to Monitor in a Website

You put up a website and get offers to monitor your website. What should you monitor? Let’s put in an order.

Forget You Audience and Meet New People

A techie solving a non-techie problem has to forget the familiar techie and geek audience and meet new people. How to embark on this journey?

Resilient Desktop Work in the Face of War

How do you work and program with intermittent power and Internet? Lessons from the war in Ukraine.

The Timeline Method for Determined Construction of Web Applications

Structure your development along a timeline of phases: collecting emails, full information, and production. Each phase goes through an axis of environments: local, staging, and production.

Spice Your Website with Randomness

Computer games engage users for years with random elements. Improve user experience and engagement by mixing randomness into a web application interface.

Experience Continuity in Hybrid Events Platforms

Micro-designing notifications and messaging from the standpoint of experience continuity promises a better user experience and increased engagement.

A Single-Player BeReal

At a random time each hour, write what you do. A method and design for self-reflection and time tracking.

How Do Artists Make Money?

Artists in various stages of their careers lack direct and fair means of making money, in contrast to the big names.

Is Art Part of the Creator Economy?

The creator economy is centered on producing digital creations, such as video or audio. Art throughout history has been the production of physical creations.

Generic Design for a Creator Economy Platform

Want to build your own creator economy platform - newsletters, podcasts, crowd-funding? This generic design will kickstart your journey.

Warming Up to Marketing Automation

First steps in marketing automation, starting with subscribers management.

Custom Domain Support in Creator Economy Platforms

How to give each creator on the platform its own domain - either domain or subdomain?

Integrating Services in Website Platforms

Alternatives for integrating services such as calendar bookings and video calls in website platforms are compared. One possible alternative is bring your own service.

Usage-Based Pricing for the Creator Economy

Take rate of creator economy platforms is a major obstacle for creators. Usage-based pricing is better for platforms and creators than subscriptions or take rate.

Backup of Laravel Web Applications

Comparison of backup methods for a Laravel PHP web application.

Creator Platforms - Live Sessions versus Fire and Forget

Creator economy platforms mode of operation is either live sessions or fire and forget. Both modes are needed for sync vs async life and work.

Modalities of Web Site Builders

WYSIWYG modalities of web site builders overload professioals. A new modality based on simple questionnaires and forms is...

When Does a Community Take Off?

In the creator economy, communities are front and center. When does the community start to run on autopilot without the founder.

A Blueprint for Session Based Applications in Laravel

Most creator economy, virtual collaboration, and remote work applications, operate through sessions. The blueprint details how to build them in Laravel PHP.

Increase NFT Liquidity with Call Auctions

A call auction batches multiple asks and bids at a point in time and executes at the price that forms the best overall match. It will provide liquidity for NFTs when asks/bids are for a collection or multiple collections or for rarity of NFTs.

Running an Auction with a Timer

Competition in an auction is concentrated on a few items. To increase audience engagement, we run the first, second, third, and sold calls for the rest with a timer.

A DAO Sounds Like a Kibbutz

DAOs are similar to Kibbutz - an Israeli socialist community. We project that DAOs have limited purpose and lifespan.

Programming Real-Time Web Applications With TALL Stack

Real-time web applications reflect immediately to each user the concurrent actions of other users. A full recipe for programming real-time web using the TALL stack.

Mirror - Writing and Publishing in Web3

My experience writing and publishing in the decentralized web. Using Mirror.xyz with MetaMask and Nano Ledger.

Let's Get Physical

The creator economy should be expanded to include physical forms of creation. New creator economy platforms are needed.

Live Video Streaming from Laravel PHP using LiveKit

The Auction Events Platform for Creators is a Laravel PHP web application streaming live video from an auction event, using the LiveKit Open source WebRTC infrastructure.

A Document Revisions System in JavaScript

Using the Quill rich text editor we build a document revision system in the browser. State and persistence are managed by superstate...

Clock Time, Event Time, and TimeSignalMe

People have two distinct concepts of time: clock time and event time. TimeSignalMe gives you and your group a sense of time in both respects...

Group Video Watching with Laravel

A group wants to stream videos, with the presenter selecting the movies to watch, controlling the play/pause, and seeking interesting moments...

A Central Clock for Laravel Web Applications with ReactPHP

How to implement a central clock for a Laravel web application?...

Laravel Backend for Headless CMS

How do you construct with Laravel the backend of a headless CMS?...

Media Streaming with ReactPHP

A design for a streaming media server using ReactPHP and Laravel...

Price Mechanisms for Marketplaces

We consider fixed price, exchages, and auctions as the pricing mechanism of a marketplace. The auction mechansism is better for achieving an optimal price.

Infinite Scroll with Livewire

Building a web site for an auction, we wanted an infinite scroll of lots as many lots where expected. The web application is a Laravel project with Livewire for the views...

Seed a Laravel Application with Media Files

Laravel-medialibrary is a Laravel package for associating all sorts of files with Eloquent models. We have an Auction model that uses the library to associate an image with each object, ...

Constructing a Multi-Step Form in React with Hooks

For all of you Bootstrap, developers who need to construct a multi-step form in React, here is this simple one. It was built with Create React App and uses React Hooks and Bootstrap 4. It displays a linear progress bar at the top. The user fills the details in stages, followed by GDPR informatio...

Using NFC with Cordova Mobile Apps

Why NFC Tags? NFC Tags are used extensively in agri-tech, warehouse, and logistics operations to track real-life objects. With COVID-19, contactless technology has acquired importance in commercial and consumer applications. We see a need to scan NFC tags with mobile applications beyond the abov...

Connect a Barcode Scanner to an Electron Desktop App

Electron is a cross-platform framework for building desktop apps with JavaScript, HTML, and CSS. In agricultural, industrial, and logistics integrated facilities, such desktop apps often need to read information from barcodes and QR codes printed on real-life physical objects. Such barcodes a...

Storing and Presenting Dates and Times in a Web Application

In an online auction project, the users were spread in a variety of time zones. Each had to see the accurate time for the end of the auction, while some users would create auctions from the web page. This required us to juggle timezones at the front-end and the backend. Dates, Times, and Time Zo...

An Auction System Needs a Central Clock

An Auction Runs by A Clock. An auction system either live or timed runs by the clock. In a live auction, one often runs calls on a bid according to a clock. In a timed auction, you start and end an auction by the clock, and you show the users a countdown timer. Browser Times Cannot Be Trusted In...

The Pure Laravel Playbook

It used to be the case that when you program a Laravel project, you program in PHP within the Laravel framework, and then have Vue.js or some other front-end framework at the front-end. The rise of the TALL stack - Tailwind CSS, Alpine.js, LiveWire, Laravel - has grossly diminished the role of f...

Printing from an Electron Application

Electron is a framework for building cross-platform desktop applications using web technologies. In an Electron application, we wanted to print a report from an application screen. Additionally, we wanted to save the report as a PDF file. While the report was based on the data rendered on the scr...

Timer Server in ReactPHP

In many applications such as auctions, you need a dynamic collection of timers, such that you can add timers, and cancel timers. We found ReactPHP superior for this. This sweet and simple server sets a new timer specified by a timeout and a task to be performed on timeout. For example sake, the t...

ReactPHP is Node.js in PHP

ReactPHP presents itself as bringing asynchronous programming into the PHP ecosystem. In the past, whenever a Laravel project required some active functionality I resorted to Node.js. Obviously, using a dual system with PHP and Node.js has disadvantages. In terms of architecture, you need to com...

Working with Bitcoin Mnemonics in JavaScript

When you are want to generate Bitcoin addresses for your users, you are really creating a public-private key pair. To operate in a trustless manner as advocated for the blockchain, it is best if you do all wrangling within the user browser, taking only the public key to the server. The way to do...

Programming Bitcoin with Laravel

In a recent project, I constructed a Bitcoin payment solution for an E-Commerce site using Laravel 5.6. Upon clicking a Pay with Bitcoin button in the E-Commerce site, the user will be transferred to our site for payment. Bitcoin Payment The user will be asked to pay to a bitcoin address from hi...

Constructing Bitcoin Multisig Addresses

While many are familiar with Bitcoin multisig addresses, seems when you come to program them, they are very confusing. In recent Bitcoin payment solution, built with Laravel we used multisig addresses, and discovered how confusing these can be. We are working with our bitcoin node, starting with ...

Constructing an Ethereum Escrow Contract

We need a sophisticated escrow contract where the payment is to be split upon delivery of goods between the seller and the escrow (that gets a commission). The escrow contract is deployed by the escrow which is the owner of the contract. The buyer has to pay, upon which the seller should deliver ...

Setting a Local Debugging Environment for Ethereum

Developing for Ethereum requires several moving parts. Our goal is to kickstart your debugging experience. Instructions apply to both MacOSX and Windows. Geth - A Local Ethereum Node We prefer to use a Geth local Ethereum node. Installation packages are available for MacOSX and Windows. Why Geth?...

A Straightforward Vue.js Typeahead Component

A typeahead with autocomplete Vue.js component. Built using Vuetify...

How to Integrate Intervals into a Promises Chain in Node.js?

You have Node.js program whose flow is based on promises, using promise chain. You need to use setInterval. How do you integrate it with the rest of your flow, so you can use the standard promise chain? We present a solution that will work in Node.js version v6.9.2 and up. Promises Promises great...

Seeding Laravel with Relationships and Media

You Need Data for Development and Testing Your Laravel project has a database, you just started development and you want to fill it with data. Write a Database Seeder The textbook approach is to write a factory to generate instances of the class using Faker for faking values. Like, OrderFactory.p...

Upload a Huge File to AWS S3 with Node

The Standard Way Using AWS Node.js SDK we want to upload a huge file to AWS S3. Using putObject will probably timeout for a huge file. So we need streams. Stream the Upload Create the read stream: var readStream = fs.createReadStream(fileName); var params = {Bucket: bucket, Key: key, Body: re...

Writing a Singleton in Node

Singleton Module Singleton are often needed, here is a quick way to write a singleton in Node.js: singleton.js module.exports = { x: 1, g: (v) => v*v } Use the Singleton one.js var singleton = require('./singleton'); module.exports = { f: () => { singleton.x = singleto...

Sharing Data Between Laravel PHP and a Socket.io Server

In a recent project with my colleague Grzegorz Bukat, the server side was dual: A Laravel PHP web application running on Nginx A Socket.io server These two servers were directed at a single jQuery front end. The Laravel server generated the views and handled Ajax calls. The Socket.io server...

Real-Time Auctions with Laravel

In a real time auction an item is auctioned to the audience with a start price. The audience posts bids topping the price each time, till no more bids are received. At which the the item is considered to be sold to the last bidder (with the highest price). Flow of Real-Time Auc...

A Production Real-Time Auctions System

The Antique House Together with my colleague, Grzegorz Bukat from Warsaw, Poland, I was asked to build a real-time auction system for the Antique House of Michal Niemczyk. The Real-Time Auction The auction is carried by an auctioneer in a physical brick and mortar hall. An auction includes many i...

Stress Test in NodeJS

You have got some API you would like to test. Your language of choice is Node.js. The Scheme Asynchronously generate multiple workers. Each worker is a child process invoked with a command-line. Listen to worker stdout and worker exit. The Code Main var async = requir...

Location-Based Publish-Subscribe with MySQL

Many location-based mobile apps such as a taxicab app, have two populations of users: Publishers - publish a location-based request - passenger : "get me a taxi at 153 East 53rd Street" Subscribers - subscribe o request at their proximity - taxi driver: "can pick...

An API Stack

An API server required for a mobile app or a web application should provide an HTTP interface for JSON data with at least the following capabilities: Storage of objects with nested structure - NoSQL Fetch of object by id Search of objects by full text search Geolocation queries Fil...

Real-Time Auctions with Node.js

A real-time auctions web site may seem complicated. Submitting a bid is just a button click, but how are you going to display it to other users in real-time. One can think of all sorts of complicated jQuery timers and calls, but there is a much simpler way with Node.js - JavaScript on the server-...