Ten months until our MBS Xojo conference in Andernach.
First registrations are coming in and we have already the first 10 attendees from 5 countries: 🇩🇪, 🇳🇱, 🇵🇱, 🇬🇧 and 🇨ðŸ‡.
Over the summer, we are looking for interesting presentations, so if you like to become a speaker or maybe a sponsor, please contact us.
(more)

New in this prerelease of the 25.3 plugins:
- Updated mongo-c-driver to version 1.30.5.
- Updated DynaPDF to version 4.0.102.290.
- Updated Unikey Plugin to newer version.
- Added Linux 64-bit ARM support for UnikeyMBS class.
Download:
monkeybreadsoftware.de/xojo/download/plugin/Prerelease/.
Or ask us to be added to our shared DropBox folder.
You can subscribe to our Xojo mailing list to get notified for new pre-release and release versions.

New in this prerelease of version 15.3 of the
MBS FileMaker Plugin:
- Updated mongo-c-driver to version 1.30.5.
- Improved OCR error messages to state whether tesseract or leptonica library is not loaded.
- Added search: prefix for comment links to jump to whatever text you provide.
- Added SystemInfo.AppResourceUsageStatistics function.
- Improved how we scroll lists to make sure more rows below and after a visible.
- Improved debugger in FileMaker to scroll better and show a few rows adhead on stepping.
- Improved our CopyButton to not show the warning in console about adding a button to the title bar.
- Updated DynaPDF to version 4.0.102.290.
Download at
monkeybreadsoftware.com/filemaker/files/Prerelease/
You can subscribe to our FileMaker mailing list to get notified for new pre-release and release versions.
Apple announced some changes for their Intel support. Version 26 is the last one to run on Macs with Intel CPUs. And for at least version 27, the Rosetta translation layer is supported. After that it may continue to run older software like games, which may never get recompiled.
(more)
When you build a mail solution using our CURL functions in MBS FileMaker Plugin, you may use sample code to do an IMAP upload. Commonly you use this to upload an email to the Sent folder when you sent it via SMTP.
New in version 15.2 is the CURL.SetOptionUploadFlags function to pass the flags for uploads. In older CURL versions there was a default to set seen flag, but now you can and shouuld control it.
For example we can use this to set the seen flag for an email, when we upload it to the sent folder, so it doesn't appear as a new email. Or you can set the Flagged flag value to mark the email as flagged.
(more)
For years we had a QuickLook plugin to provide a preview into Xojo projects and show the version number. I don't know about you, but I have current 12 different Xojo versions installed.
Our extension shows the version number of Xojo projects and if space is available, we show the type (Binary, Text or XML) below the number.
(more)

New in this prerelease of the 25.3 plugins:
- Updated DynaPDF to version 4.0.102.288.
- Added SetActiveSigField function for DynaPDFMBS class.
- Added isTahoe method to SystemInformationMBS module.
- Improved DumpToStrings method to InternalSQLiteLibraryMBS module.
- Updated SQLite to version 3.50.1.
- Added DataTypeInt8 constant for MLMultiArrayMBS class.
- Updated CURL library to version 8.14.1.
- Added OptionSSLSignatureAlgorithms property to CURLSMBS class.
- Added kWebSocketNoAutoPong constant to CURLSMBS class.
- Improved loading LDAP library on Linux to work on Ubuntu 22 and 24.
- Added CGDirectDisplayID property to NSScreenMBS class.
- Added neutralValue property to NSSliderMBS class.
- Added prefersCompactControlSizeMetrics to NSViewMBS class.
- Added ControlSizeExtraLarge constant to NSControlMBS class.
- Added backgroundTintColor and style properties to NSToolbarItemMBS class.
- Added NSWritingToolsResultPresentationIntent constant to NSTextViewMBS class.
- Added NSEventTypeMouseCancelled constant to NSEventMBS class.
- Added placeholderStrings and placeholderAttributedStrings methods to NSTextFieldMBS class.
- Added constants to NSButtonCellMBS class.
Download:
monkeybreadsoftware.de/xojo/download/plugin/Prerelease/.
Or ask us to be added to our shared DropBox folder.
You can subscribe to our Xojo mailing list to get notified for new pre-release and release versions.

New in this prerelease of version 15.3 of the
MBS FileMaker Plugin:
- Updated DynaPDF to version 4.0.102.288.
- Added DynaPDF.SetActiveSigField function.
- Added SystemInfo.isTahoe function.
- Fixed a problem in CompressFiles method for ZipMBS class, broken since 25.0.
- Improved SQL.InternalSQLiteLibrary.Dump function.
- Updated SQLite to version 3.50.1.
- Improved our CoreML functions to handle Int8 data type in addition to Float16, Float32, Int32 and Float64 data types that your models may use.
- Updated CURL library to version 8.14.1.
- Added CURL.SetOptionSSLSignatureAlgorithms function.
- Improved loading LDAP library on Linux to work on Ubuntu 22 and 24.
- Changed copy text/selection in ScriptWorkspace to indent the lines.
- Added SelectedOnly and EndOfLine parameters for ScriptWorkspace.StyledScriptText function.
Download at
monkeybreadsoftware.com/filemaker/files/Prerelease/
You can subscribe to our FileMaker mailing list to get notified for new pre-release and release versions.
Did you know that you can use JSON in our Saxon functions? Originally Saxon is a XML library, but it can take JSON as input in various queries. The queries internally work with maps and arrays and these can be filled by JSON.
Let us show you how to use JSON for Saxon.XPathQuery and Saxon.XQuery functions:
(more)
For the MBS Xojo SQL Plugin 25.5, we add a few extensions and include UUID, Base64 and CSV. The base64 extension allows us to make an base64 encoding in a SQL query as the extension adds the base64() function. It converts BLOB to base64 encoded text or back.
To use it in your Xojo application, you need to set the Base64ExtensionEnabled property in the InternalSQLiteLibraryMBS module to true. Then we enable the internal library with the Use method.
// use internal sqlite library with Base64 extension
InternalSQLiteLibraryMBS.Base64ExtensionEnabled = True
Call InternalSQLiteLibraryMBS.Use
(more)
For the next version of MBS FileMaker Plugin in 15.3 we add the Window.SetRoundCorners function to provide round corners.
At the recent Vienna Calling conference a developer asked if we can get the edges of the card in FileMaker to be round. And yes, that is indeed possible. Once the card is shown, the MBS Plugin can find the card window and apply round corners to it.
(more)
For the MBS Xojo SQL Plugin 25.5, we add a few extensions and include UUID, Base64 and CSV. The uuid extension allows us to make an uuid in a SQL query as the extension adds these functions:
uuid() | generate a version 4 UUID as a string |
uuid_str(X) | convert a UUID X into a well-formed UUID string |
uuid_blob(X) | convert a UUID X into a 16-byte blob |
Let's use this in an example project:
(more)

New in this prerelease of version 15.3 of the
MBS FileMaker Plugin:
Download at
monkeybreadsoftware.com/filemaker/files/Prerelease/
You can subscribe to our FileMaker mailing list to get notified for new pre-release and release versions.

New in this prerelease of the 25.3 plugins:
Download:
monkeybreadsoftware.de/xojo/download/plugin/Prerelease/.
Or ask us to be added to our shared DropBox folder.
You can subscribe to our Xojo mailing list to get notified for new pre-release and release versions.
Did you notice that MBS FileMaker Plugin 15.2 includes a new feature to add keyboard shortcuts for the result data types for a formula?
(more)
Did you know we can pass styled text to Apple Mail?
We can use our SharingService functions to share data with other applications. This includes passing styled text, containers with images, files or URLs.
Available services
Using the SharingService.ServicesForItems function, we can query the available services to request. This allows us to check which services are available and only show a button to share via Airdrop, if that is possible.
By default you have these services available on macOS:
Title | Name | Text | File Path | Images | URLs |
Add to Photos | com.apple.share.System.add-to-iphoto | - | X | X | - |
Add to Reading List | com.apple.share.System.add-to-safari-reading-list | - | - | - | X |
AirDrop | com.apple.share.AirDrop.send | - | X | X | X |
Dropbox Transfer | com.getdropbox.dropbox.TransferExtension | - | X | X | - |
Freeform | com.apple.freeform.sharingextension | X | X | X | X |
Mail | com.apple.share.Mail.compose | X | X | X | X |
Messages | com.apple.share.Messages.window | X | X | X | X |
Notes | com.apple.Notes.SharingExtension | X | X | X | X |
Reminders | com.apple.reminders.sharingextension | X | X | X | X |
Simulator | com.apple.iphonesimulator.ShareExtension | - | X | X | X |
If you install applications, they may offer additional services. I got Dropbox to show up here, so I included it in the table.
(more)

New in this prerelease of the 25.3 plugins:
Download:
monkeybreadsoftware.de/xojo/download/plugin/Prerelease/.
Or ask us to be added to our shared DropBox folder.
You can subscribe to our Xojo mailing list to get notified for new pre-release and release versions.

New in this prerelease of version 15.3 of the
MBS FileMaker Plugin:
Download at
monkeybreadsoftware.com/filemaker/files/Prerelease/
You can subscribe to our FileMaker mailing list to get notified for new pre-release and release versions.
The MBS Xojo MongoDB Plugin got GridFS functionality in the last release. It allows you to store files in a MongoDB database. Internally the files are stored in two tables, one with the file list and a second one with file chunks. The MongoDB client library provides a nice interface for this. We wrap that in MongoGridFSMBS and MongoGridFSFileMBS classes.
Read file
Let's read a file. We build the MongoURIMBS object for whatever server we need, in our example a local one. We connect to the server using the MongoClientMBS class. Then we initialise the MongoGridFSMBS object using the name of the database "test". We store files in this database and use the prefix "fs" for the table. You can store files in multiple databases and store different file sets within the same database with different prefixes.
The FindOneByFileName() function finds a file by the name (or path). You get the matching MongoGridFSFileMBS object and then you can inspect properties or use the read methods to read the content. Here is a little sample code:
Sub Read()
Var uri As New MongoURIMBS("mongodb://localhost/")
Var Client as new MongoClientMBS(uri)
Var GridFS As MongoGridFSMBS = Client.GridFS("test", "fs")
// now find the file and write it
Var file As MongoGridFSFileMBS = GridFS.FindOneByFileName( "test.txt")
// read data
Var data As String = file.ReadAll
Var bytes As Integer = data.Bytes
MessageBox "bytes read: "+bytes.ToString
End Sub
You may have the Client and GridFS objects in properties of your window or app. This way you keep it open and avoid reconnecting each time.
(more)
My streak in DuoLingo was 1541 days with 84 weeks in the top league. I did the tournament and won it twice. I earned a ton of badges including finishing first in the diamond league.
(more)