By: | On:

Today I read that Opera Development Browser added local AI. I ended up deleting it after trying it since it was in a window within the browser. Afterwards, I tried LocalAI.app and a few others and found Ollama!

Local AI's are interesting in that if the internet is down, you still have access to it. In our Xanadu Web Apps, we use local libraries as much as possible so it's less likely for a resource to disappear. Nothing is worse than going to run your app and not be able to if a Google Font cannot be reached. There are some things that cannot be local ...

By: | On:

  CSS  

Bootstrap rocks but sometimes you need more colors. Named Colors are a great solution.

Included are css files that can be included for Bootstrap like colors:

  • color-bg-AliceBlue
  • color-border-AliceBlue
  • color-text-AliceBlue
  • color-text-bg-AliceBlue

List of Named Colors with Color Swatches: https://www.w3.org/wiki/CSS/Properties/color/keywords

color-bg.css:

.color-bg-AliceBlue { background-color: #F0F8FF; }
.color-bg-AntiqueWhite {  ...
By: | On:

  PHP  

Reposted from INN: https://ifnotnil.com/t/php-for-xojo-programmers-0003-variables-from-the-url/1733

URL Variables

This time we'll work to add variables to the URL like "/products.php?item=widget" rather than create one page for every product. We could have 500 products and only need one PHP page and one HTML Template.

When we talked about Includes we had three files "template.htm", "helloWorld.php", and "helloEarth.php". ...

By: | On:

  PHP  

Reposted from INN: https://ifnotnil.com/t/php-for-xojo-programmers-0002-includes/1727

Includes

This time we'll talk about "includes". Includes are a way to pull in a file into the current file to reduce repetitive code or templates. Below we'll show how to make a simple template and use it.

We use Includes in Xanadu which is open source: https://github.com/campsoftware/xanadu

Here's Xanadu's template for almost ...

By: | On:

  PHP  

Reposted from INN: https://ifnotnil.com/t/php-for-xojo-programmers-0001-hello-world/1726

This is the first post in a series about PHP from a Xojo perspective.

I'll be showing how I developed different parts in detail of Xanadu which is open source: https://github.com/campsoftware/xanadu

Hello World!

When I first used Xojo I did the same thing you probably did. I dragged out a button and when clicked it showed a message ...

By: | On:

  HTML  

Fav Icons make identifying Web Apps clear in Browsers, Bookmarks, and saving to the Home screen. Generating Icons is easy!

First create an image file for your icon that's large. It should be square and at least 512px by 512px. Going larger is good like 1024 by 1024 so you can regenerate the icons in the future as devices demand larger images.

There are many tools that can create icons for you where you just upload your image and get back some html and several image files in different formats.

One free service is https://iconifier.net, ...

By: | On:

NOTE: Since posting this, we've made Xanadu semi-private.

Xanadu is reincarnated as a Web App developed in PHP / HTML / CSS / Bootstrap / Javascript. If you haven't heard of Xanadu it's a framework for developing Database Driven Web Apps.

It's been a long road, but Xanadu is a good place now. If you haven't heard about the speed bumps we hit with FileMaker and Xojo, we posted a bit about it last year. Not much has changed with FileMaker and Xojo since. FileMaker is still very expensive ...

By: | On:

  JS  

Retrieves the GPS coordinates of the Browser.

  • Uses an inline callback.
  • Normalizes the output.
  • Makes the async call feel like a sync call, but it's still async.
  • This is a good template for similar async calls.

On Github: https://github.com/campsoftware/locationGet-js

Calling Example

xanLocationGet( function ( coords ) { alert( coords[`ErrorCode`] + `, ` + coords[`ErrorDesc`] + `, ` + coords[`Latitude`] + `, ` + coords[`Longitude`]  ...
By: | On:

  PHP  

Gets a semaphore and attempts to acquire to prevent code from running more than one time.

  • Aborts if the semaphore cannot be retrieved.
  • Aborts if the semaphore in use.
  • The key must be an integer.

On Github: https://github.com/campsoftware/semaphoreCheck-php

By: | On:

  Xojo to PHP  

It's been a while since my last blog post. There's a reason for that. Software Development has been disappointing, but after five years, I'm ecstatic again!

Why? I think it has to do with greed along with a lack of communication. I'm just glad to see the pattern and have the technical ability to change development platforms.

As developers, what do we need? That depends on the app. Some apps are hardware generic while other apps need specific hardware features. We primarily develop database apps where folks view/edit data, print to paper or PDF, and document ...