WOODY'S
FINDINGS

Latest news

Tip

AsyncQueue

13 October 2023

Implementation of an AsyncQueue that can be observed.

Tip

Custom SF Symbols

13 June 2023

Quick recap about SF Symbols and how to make custom ones.

Tip

Use chain of member references to categorize static elements

27 March 2022

An idea to use the new chain of member references syntax to improve the declaration of static properties when working with a large number of elements

Tip

CoreData: the burden of the past

6 February 2022

I have been using CoreData for a few years and really enjoyed it. Except for one thing: how we interact with the data model.

Tip

Improve iPadOS pointer interactions - Part 1: buttons

26 September 2021

Some techniques to improve the pointer interactions and animations for buttons

Tip

Programmatically logout a user in Swift

12 August 2021

As well as restarting, shutting down and putting the computer to sleep.

Tip

Positioning a window in macOS

8 August 2021

Some ideas to easily position a NSWindow with AppKit and SwiftUI.

Library

Scout wiki updated for 4.0.0

3 July 2021

The Scout wiki has been updated and now offers a command-line and Swift package versions. The Swift package version is built using docC and Xcode 13 (beta).

Tutorial

Scripting with SwiftUI (III) - Forms

13 June 2021

Learn how to build a form using SwiftUI, and then how to export the user's inputs as JSON. A last optional part explains how to validate the inputs and how to warn the user.

Library

Scout 4.0.0 is released

28 April 2021

This version is a global refactor of the library. New features are offered like setting/adding group values and Codable types or CSV import.

Tutorial

Privileged Helper: security update

9 March 2021

The tutorial to implement a Privileged Helper has received a security update. A new part explains how to validate the application identity.

Library

Scout 3.0.0 is released

7 February 2021

Learn more about the new features of Scout 3.0.0. Data conversion formats, paths listing, YAML support and more. Also, the new wiki is now available on this website.

Tutorial

Scripting with SwiftUI (II) - Scripts Provider

13 December 2020

In this second tutorial of the series you will learn how to develop an interface to let the user choose a script to execute and execute it.

Library

Bugle 0.2.0

3 December 2020

Bugle is a command-line tool to post and listen to distributed notifications to execute scripts.

Tip

Safer singletons with property wrappers

22 November 2020

A solution to hide a singleton behind a property wrapper for easier use and dependency injection.

Library

CoreDataCandy 0.2.0 is released

22 November 2020

This library has been developed at Amaris as an open-source project. It aims to offer extensions and mapping features on Core Data entities to provide easy to use data models and fetching functions.

Tutorial

Scripting with SwiftUI (I) - Coding a color picker View

25 October 2020

This tutorial is the first one of a series to learn how to use SwiftUI in Swift scripts. Some basis of SwiftUI are explained, as well as how to display an interface like with an application in a Swift script.

Tip

Working with Swifty NSNotification

4 October 2020

An overview of NSNotification usage then a discussion about making NSNotification "Swiftier" by implementing extensions and a NotificationObserver wrapper (final Playground file provided).

Tip

Advanced array slicing

21 September 2020

Whenever your work with numbers, you might want to define special ones that act a bit differently from others, while keeping their value. For example, it could be useful to define a first and last integers to be used in a range to target the first and last valid indexes of an array.

Tutorial

Cocoa: implement a privileged helper

6 September 2020

In this tutorial, learn how to implement a privileged helper on macOS from scratch. The goal is to make the application Scriptex able to execute scripts with root privileges.

Library

Scout 2.0.0 is released

5 September 2020

This new version brings several new features like array slicing, dictionary keys filtering, arrays and dictionaries folding, auto-completion. Also, a Linux distribution is now prodived.

Library

Lux 0.4.3 is released

1 September 2020

This new version fixes several minor bugs and brings the compatibility with Linux.