A library for generating native app code from JavaScript config through Expo config plugins
{
"context": "Evaluates how well the solution uses @expo/config-plugins base mod utilities to register and run platform file providers for transport security settings on Android and iOS. Focuses on leveraging the package to read/write native files and apply manifest/plist mutations through the mod pipeline instead of manual file handling. Scoring rewards direct use of the package's base mod, manifest, and plist helpers that align with the spec's behaviors.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Base mods",
"description": "Registers platform base mods with package helpers (withBaseMod/withAndroidBaseMods/withIosBaseMods) so Android manifest and Info.plist IO happen through the mod pipeline instead of manual file access.",
"max_score": 25
},
{
"name": "Android IO",
"description": "Uses AndroidConfig.Manifest.readAndroidManifestAsync and AndroidConfig.Manifest.writeAndroidManifestAsync (or equivalent package manifest IO) inside the Android mod action rather than custom XML parsing.",
"max_score": 20
},
{
"name": "Android mutation",
"description": "Sets the usesCleartextTraffic attribute via package manifest helpers such as AndroidConfig.Manifest.getMainApplicationOrThrow or related utilities instead of hand-editing XML strings.",
"max_score": 15
},
{
"name": "iOS IO",
"description": "Reads and writes Info.plist through IOSConfig.Plist.readPlistAsync and IOSConfig.Plist.writePlistAsync (or equivalent) within the iOS base mod, avoiding raw file system operations.",
"max_score": 20
},
{
"name": "ATS mutation",
"description": "Builds the NSAppTransportSecurity dictionary and per-domain exceptions using package plist utilities (e.g., IOSConfig.Plist helpers) rather than manual string replacement, keeping NSAllowsArbitraryLoads and exception keys set through the provided modResults object.",
"max_score": 20
}
]
}tessl i tessl/npm-expo--config-plugins@11.0.0docs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10