New to Google Cloud? Get $300 in credits to explore Compute Engine, BigQuery, Cloud Run, Gemini Enterprise Agent Platform, and more.
Start your next project with $300 in free Google Cloud credit. Spin up VMs, run containers, query petabytes in BigQuery, or build agents with Gemini Enterprise Agent Platform. Once your credits are used, keep building with 20+ always-free tier products including Compute Engine, Cloud Storage, GKE, and Cloud Run functions. No commitment required—just sign up and start building.
Claim $300 Free
Ship Agents Faster
Transform your applications and workflows into powerful agentic systems at global scale.
Gemini Enterprise Agent Platform lets you rapidly build, scale, govern and optimize production-ready agents grounded in your organization's data. The platform enables developers to build custom or pre-built agents for virtually any use case. New customers get $300 in free credits.
Components to generate a flex (spark) form dynamically
Proof of concept project to investigate the potential to generate Flex forms from a dynamic (possibly externalised) source to cut development time building common form functionality.
I've previously used 'control' classes to allow non technical users to configure form validation parameters in an external XML file, however the form & model still required development time.
As an extension of the form class to function more like a SkinnableDataComponent the form items become 'ItemRenderers' containing typical inputs. ...
Components to provide common CRUD (+search) functionality
Generic component to simplify the creation of a CRUD based cluster of forms etc with little extra configuration beyond creating the forms.
The CRUDContainer component provides a dynamic menu and a set of views similar to the functionality provided by a manually created set of ButtonBar, ViewStack & NavigatorContent.
The CRUDContainer however is not index based, the container wraps a selection of ActionableContainers, which simply need to be configured with a chosen 'action' and whether or not this is to be included in the dynamically created MenuBar.