As an off shoot of T295412, create documentation that could help guide other similar migrations.
Description
Related Objects
Event Timeline
Began work on this here: Creating extensions in Civicrm to manage tables in other WMFF Databases
Nice job on this, I feel like I know a lot more about using SearchKit with FormBuilder as a result of reading it!
I had some small nitpicks after the first read, which I've added below, but besides those minor points, I think it's a fantastic addition to the docs.
The BAO directory contains a MyEntity class that contains the business logic for interacting with the database. The MyEntity class in the Civi/Api4 directory would be useful for creating custom actions on the entity that's not any of the Create, Read, Update, and Delete actions. Don't bother about these classes and other files.
Should this be API actions? I feel like it's assumed, but actions can mean lots of things.
This file is similar to the SQL schema file that defines a table, in this case the Entity's info.xml file would be defining the entity as it relates to the table and CiviCRM in general. For example, the SQL schema for the damaged table in SmashPig is CREATE TABLE IF NOT EXISTS myentity( ...
I was confused here and thought you might have mixed the table name as the SQL shows your MyEntity example. Could you reword this slightly to explain that you're using the damaged table's schema and renaming it to myentity for the example's sake?
Also, this is the latest direct link to the docs https://wikitech.wikimedia.org/wiki/Fundraising/Internal-facing/CiviCRM#Creating_extensions_in_Civicrm_to_manage_tables_in_other_WMFF_Databases. The link posted earlier no longer works.
Thanks @jgleeson for reviewing the doc, I've made changes to those parts and also added a few others as well. I did a restructuring of the pages to make it look shorter and within scope.
The link you shared: https://wikitech.wikimedia.org/wiki/Fundraising/Internal-facing/CiviCRM#Creating_extensions_in_Civicrm_to_manage_tables_in_other_WMFF_Databases, is still an entry point.
However, here are the topics and the direct links to them:
Creating extensions in Civicrm to manage tables in other WMFF Databases
Create Custom Formbuilder pages to monitor tables in other WMFF Databases
Exporting SearchKit Search into an extension
Exporting FormBuilder Pages into an extension
They are also linked to each other in the "Related Topics" section.