lfmparser

The Lazarus Form Parser uses the official GitHub REST API to collect all Lazarus form files in a GitHub repository, and then parses the form files to extract data.

User Interface

The web interface allows to enter a GitHub repo name, a page number, and a page size, and then uses these parameters to build an GitHub API request to find lfm files in this repository. The “page” and “page size” parameters limit the result size.

Result table columns:

  • Code contains a hyperlink to the raw lfm file on GitHub
  • LCL contains the version of the Lazarus Component Library which generated the form
  • Form Class is the class name of the form (or frame)
  • Components is the number of components in the form
  • Frames is the number of frames in the form
  • SQL shows the raw content of all SQL.Forms properties in the form
  • Errors is the number of parser errors which occured during parsing of the form

Parser Limitations

The parser is still work in progress. Binary and XML forms will not be supported.  

Benefits

The application provides valuable data without the need to download a complete GitHub repository first. Only Lazarus form files (lfm), which are typically small in size, will be read from the repository. With the parser, custom form data extraction use cases and more services are easy to implement, from string extraction for translation to quality assurance.

Terms of Service

Usage of the Lazarus Form Parser web application is only permitted within the limits of the GitHub Terms of Service and the API Terms.

First Milestone in March

The first milestone of the Lazarus Form Parser web application will be ready for release in a couple of days.

Roadmap and Feedback

There is no roadmap for this project yet. However, feedback and suggestions are very welcome.

Advertisements

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s