# JSON Structure and Usage JSON manifest enables the generation of platform-specific code based on the provided JSON files. This enhancement streamlines the development process and ensures better code organization for different platforms. Each JSON file will be transformed into a class within the `solara_artifacts` directory. You can place your JSON files in the following directories: - `brands/BRAND/android/json` - `brands/BRAND/ios/json` - `brands/BRAND/flutter/json` - `brands/global/json` ## The Manifest File Each directory contains a `json_manifest.json` file with the following structure: ```json { "files": [ { "fileName": "", "generate": true, "parentClassName": "", "customClassNames": [ { "originalName": "", "customName": "" } ] } ] } ``` ### Property Descriptions - **files**: An array containing objects that define the JSON files to be processed. - **fileName**: The name of the JSON file. This should include the file extension (e.g., `config.json`). - **generate**: An object that specifies whether to generate a class for the JSON file and the details for that class. - **enabled**: A boolean value that indicates if class generation is enabled for this file. If set to `true`, a class will be created based on the JSON structure. - **className**: The name of the class that will be generated from the JSON file. This is typically derived from the `fileName`. - **customClassNames**: An array of objects that allow you to specify custom names for generated classes. - **generatedName**: The name of the class as it would be generated by default. - **customName**: The custom name you want to assign to the generated class instead of the default `generatedName`. This is useful for maintaining consistency or aligning with existing naming conventions in your codebase.