Customer Stephen Hauck has just released an updated Siaqodb example for Xamarin Android and iOS available on Github.

This is a cross platform app that shows how to use Siaqodb in a PCL Xamarin.Forms application on Android and iOS built using Visual Studio for Mac.
One interesting feature is the SiaqodbFactory class that is used which shows how to use multiple named instances of Siaqodb in one application. The definition of the class is here for you to use in your application if you need multiple instances of Siaqodb.

using System;
using Sqo;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;

[assembly: Dependency(typeof(SiaqodbFactory))]
namespace SiaqoTasky.iOS
{
    public class SiaqodbFactory : ISiaqo
    {
        /// 
        /// The siaqod database variables stord in a dictionary to save time and hopefully memory
        /// 
        private static readonly Dictionary SiaqoDatabases = new Dictionary();
        #region Database management code
        /// 
        /// Gets the database instance or creates one
        /// 
        /// The instance.
        /// Database.
        public ISiaqodb GetInstance(string database)
        {
            try
            {
                //Does it exist in the dictionary...
                Siaqodb db;
                if (SiaqoDatabases != null)
                {
                    if (SiaqoDatabases.TryGetValue(database, out db)) return db;
                }
                //Did not find it so add it...
                var dbpath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), database);
                var config = new Configurator();
				// Siaqodb Starter version allows you to store 100 objects per type
				// To obtain a trial or full license please visit https://www.siaqodb.com
				// If you are using a trial or fully licensed version of Siaqodb, uncomment this line and enter your key
				//Sqo.SiaqodbConfigurator.SetLicense("[Paste your provided license key here...]");
				SiaqodbConfigurator.ApplyConfigurator(config);
                db = new Siaqodb(dbpath);
                //Add the instance to the list
                SiaqoDatabases?.Add(database, db);
                return db;
            }
            catch (Exception ex)
            {
                if (Debugger.IsAttached)
                {
                    Debug.WriteLine(ex.Message);
                }
                return null;
            }
        }
        public bool CloseInstance(string database = "DEFAULTDB")
        {
            try
            {
                Siaqodb db;
                if (SiaqoDatabases != null)
                {
                    if (SiaqoDatabases.TryGetValue(database, out db))
                    {
                        db.Close();
                        return SiaqoDatabases.Remove(database);
                    }
                    //Nothing to do 
                    return true;
                }
                //Nothing to do
                return true;
            }
            catch (Exception ex)
            {
                if (Debugger.IsAttached)
                {
                    Debug.WriteLine(ex.Message);
                }
                return false;
            }
        }
        public void Shutdown()
        {
            try
            {
                if (SiaqoDatabases != null)
                {
                    foreach (var database in SiaqoDatabases)
                    {
                        database.Value.Close();
                    }
                }
            }
            catch (Exception ex)
            {
                if (Debugger.IsAttached)
                {
                    Debug.WriteLine(ex.Message);
                }
            }
        }
        #endregion
    
    }
}




Thank you for your support and happy coding!