Skip to content

Latest commit

 

History

History
41 lines (25 loc) · 2.69 KB

README.md

File metadata and controls

41 lines (25 loc) · 2.69 KB

🚀 Figma To Digia JsonComponents Parser

Task

The main objective of this project is to convert html/css from figma design files to a digia project page ui. So used Figma, OpenAi(Custom Model for transformation) and dart parser.

Overview

This project implements a sophisticated parser designed to convert Figma JSON representations into a streamlined JSON format compatible with Digia Components. Leveraging OpenAi custom Models for converting html/css to flutter widget tree json dynamic programming techniques and adhering to SOLID principles for the parser recursively processes each element in the Figma JSON, optimizing and extracting valuable data.

Full code explaination

[https://drive.google.com/file/d/1EUW7UaYJkR8TxY1bVf7s-j83b9BtmOsw/view?usp=sharing]

Key Features 🔧

  • OpenAi: Used OpenAi custom Model for converting html/css into flutter widget tree json and thus parsing that json into digia format using the parser written in dart;
  • Dynamic Programming: The parser employs dynamic programming techniques to efficiently process and optimize the complex structure of Figma JSON.
  • SOLID Principles: The implementation adheres to SOLID principles, ensuring a modular and maintainable design that facilitates extensibility.
  • Recursive Parsing: All elements within the Figma JSON are parsed recursively, extracting essential information and converting them into a linear and memoized structure compatible with Digia Components.

Usage 📑

To use the parser, follow these steps:

  1. https://github.com/Satendra9984/figma_to_digiaJson to your local machine.
  2. Install the required dependencies.
  3. Run the parser with your Figma JSON file as input.
  4. Obtain the optimized Digia Components JSON output.

Challenges and Fun 💡

Developing this parser presented a stimulating and challenging problem-solving experience. The combination of dynamic programming and adherence to SOLID principles ensures not only efficiency in processing but also a robust and maintainable codebase.

Feel free to explore the codebase, contribute, or use the parser in your projects. Happy coding!

📂 Figma JSON File: figma.json

📂 Digia JSON File: final_digia.json

Project Images 🖼️

text_ssrow_ssrichtext_sscolumn_ss