Skip to content

vdelachaux/4DPop-AppMaker

Repository files navigation

Static Badge Static Badge
release license

4DPop AppMaker

4DPop AppMaker is a 4D development component that automates the full pipeline for building, code-signing, and notarizing 4D applications and components — with a single click from within your project.

Once configured, AppMaker handles all the repetitive tasks that normally require manual intervention: assembling the build, signing the binaries, and submitting to Apple's notarization service.


Highlights

  • One-click build — trigger a full application or component build directly from 4D
  • Code signing — automates codesign for macOS distribution
  • Notarization — integrates with notarytool to submit and validate notarization with Apple
  • Build settings management — reads and applies buildApp.4DSettings automatically
  • Environment detection — adapts behavior for headless vs. interactive execution
  • Progress feedback — built-in progress reporting during the build pipeline
  • Persistent preferences — settings stored per project via XML preferences file

Installation

Via 4D Dependency Manager (recommended — 4D 21+)

  1. Open your 4D project
  2. Open the Dependencies panel (Design menu > Dependencies)
  3. Click + then select GitHub dependency
  4. Enter vdelachaux/4DPop-AppMaker
  5. Choose the version and click Add
  6. Restart 4D — the component loads automatically

See Adding a GitHub dependency for details.

Binary install (legacy)

Download the latest .4dbase archive from the Releases page and place it in your project's Components/ folder.


Requirements

  • 4D version 21 or later
  • macOS (for code-signing and notarization features)
  • A valid Apple Developer certificate in the keychain
  • A notarise.json credentials file (placed in the project or user preferences folder)

Usage

AppMaker exposes a cs.AppMaker class. The typical entry point is the companion palette accessible from the 4DPop menu.

You can also invoke it programmatically:

var $maker := cs.AppMaker.new()
$maker.run()        // runs with UI
$maker.run(False)   // headless build

The build pipeline includes:

  1. Flushing the cache
  2. Loading build settings from buildApp.4DSettings
  3. Building the application or component
  4. Code-signing (macOS)
  5. Notarizing with notarytool (macOS)

Configuration

File Location Purpose
buildApp.4DSettings Settings/ Standard 4D build configuration
4DPop AppMaker.xml Project preferences folder AppMaker-specific preferences
notarise.json Project or user preferences folder Apple notarization credentials

Part of the 4DPop family

4DPop AppMaker is one component of the 4DPop suite — a collection of developer tools integrated into a unified palette within the 4D Design environment.

About

An helper tool for the generation of application and / or component. It allows, after setting, with just one click, generate your application or your component and perform a number of tedious, repetitive tasks.

Topics

Resources

License

Stars

0 stars

Watchers

1 watching

Forks

Contributors

Languages