The Other design tools (sketch & adobe xd) file format is just a zip file containing JSON data.
If it isn’t property IP and just like other design tools (sketch & adobe xd) Figma doesn’t want to document the file format, which is understandable because it is a technical debt on your side.
It will be helpful to just give the community a hint on how the .fig file is constructed and I think the community will be able to easily reverse engineer the full file format specification.
As it has some use-cases for example:
Archiving Figma files offline in case the Figma online goes out of service.
Gleb:
It’s definitely possible to decode the file but not sure how. Let me know if you find anything. The only thing I know about decoding .fig files is that their structure can change easily as it’s an internal format (hence it’s not documented — there is no standard). And I haven’t seen any apps for decoding them unfortunately.
Josh D:
Welp, I’ve managed to get the Figma schema (by doing some script debugging in the inspector), but for the life of me I can’t seem to properly decode enough of the data for it to be useful. Using kiwi’s command line interface I can do something like: node cli --schema figma.kiwi --root-type NodeChanges --to-json simple.fig but I can’t seem to guess what RootType would give me relevant info I could use.
I think it will be much better to ask the Photopea team for some help as they have successfully decoded the .fig file format on their own and will likely to collaborate with other open source project.