The manifest.json file is the identifying file used by texture packs on Minecraft Bedrock Edition.
On this page you'll find an example of the file you can copy & paste into your own pack, and a full description of how the file works.
Important: if you're visiting this page due to issues with your pack/manifest file, I recommend visiting the Pack Fixer which automatically fixes common issues with texture packs and manifest files.
Anyways, we'll start off with the file itself: (manifest.json)
{ "format_version": 2, "header": { "description": "desc", "name": "name", "uuid": "20858404-a657-4bb6-8f5f-93b0f5c12b67", "version": [1, 1, 1], "min_engine_version": [ 1, 13, 0 ] }, "modules": [ { "description": "desc", "type": "resources", "uuid": "49430569-8a83-4e81-a9c7-8999cc60a0ef", "version": [1, 1, 1] } ] }
This is the most simple version of this file, to learn how to add extra's like subpacks visit This Tutorial
Before starting off it is important to note that this file must be in the json file format, the easiest way to make one of these is right click inside of your texture pack, select "new", and choose "text document". Once you've added the desired content (above) you can rename the file from new_file.txt to manifest.json.
If you need a txt to json converter, visit This Page
Now, an explanation of the elements in the default manifest.json file:
format_version, formatting version for the manifest file. For packs intended to work above 1.13 this version should always be just set to 2
description, add a description for your pack in between the quotation marks.
name, add the name of your pack in between the quotation marks, just like the description this will show up inside of Minecraft
UUID, stands for Universially Unique Identifier, and allows Minecraft to correctly load and identify your pack. Every time you create a new pack to NEED to replace both UUIDs with two new ones, or the import will fail. Generate new UUIDs here.
version, this indicates the pack specific version, mainly useful when updating texturepacks, allowing creators to easily tell the difference between new and old versions of packs.
min_engine_version, the Minecraft game version intended for the pack to run on. Doesn't matter much as Bedrock Edition packs are cross-version compatible. When in doubt set the value to 1.13.0, watch out that you don't set the version higher than your current game version or lower than 1.13.0.
type, the type of pack. This value can be either "resources" for resource/texture pack or "behavior" for behavior packs. In this case the value has been set to the more common "resources".
If you need help making your own Minecraft Texture Pack, a full tutorial can be found here :))