CtrlK
CommunityDocumentationLog inGet started
Tessl Logo

tessl/npm-expo--config-plugins

A library for generating native app code from JavaScript config through Expo config plugins

47%

Overall

Evaluation47%

1.04x

Agent success when using this tile

Overview
Eval results
Files

task.mdevals/scenario-5/

Build Properties Config Plugin

A config plugin that maps user-provided build property options to Android gradle.properties and iOS Podfile properties, updating and cleaning them on each run.

Capabilities

Android properties sync

  • When android.hermesEnabled is true, set expo.jsEngine=hermes in the Gradle properties file; when false, set expo.jsEngine=jsc. @test
  • When android.kotlinVersion is provided, set expo.kotlinVersion=<value> in the Gradle properties file. @test

Android property cleanup

  • If android.hermesEnabled and android.kotlinVersion are both omitted, remove any existing expo.jsEngine and expo.kotlinVersion entries from the Gradle properties file. @test

iOS Podfile properties sync

  • When ios.useFrameworks is static or dynamic, write the same value to the Podfile properties file under use_frameworks. @test
  • When ios.flipperEnabled is true, set flipper_configuration=flipper in the Podfile properties file; when false, set it to disabled. @test

iOS property cleanup

  • If ios.useFrameworks and ios.flipperEnabled are both undefined, remove use_frameworks and flipper_configuration from the Podfile properties file. @test

Implementation

@generates

API

export type BuildPropertiesInput = {
  android?: {
    hermesEnabled?: boolean;
    kotlinVersion?: string;
  };
  ios?: {
    useFrameworks?: 'static' | 'dynamic';
    flipperEnabled?: boolean;
  };
};

export default function withBuildProperties(
  config: Record<string, any>,
  props?: BuildPropertiesInput
): Record<string, any>;

Dependencies { .dependencies }

@expo/config-plugins { .dependency }

Provides config plugin primitives for applying Gradle and Podfile property changes.

tessl i tessl/npm-expo--config-plugins@11.0.0

tile.json