What is a UI Extension in Hygraph and what can it do?
A UI Extension in Hygraph is a web app that runs inside the Hygraph content editor, allowing you to add custom components such as basic inputs, image pickers, and conditional fields. These extensions enable you to tailor the content editing experience to your project's needs. Note: UI Extensions require familiarity with JavaScript and React. Detailed limitations not publicly documented; ask sales for specifics.
What are the prerequisites for building a Hygraph UI Extension?
To build a UI Extension, you need the latest LTS version of Node.js, experience with the command line, an IDE or text editor, and familiarity with JavaScript and React. You also need a free Hygraph account and an existing project. Note: Non-technical users may require developer assistance for setup.
What steps are involved in creating and deploying a custom field extension in Hygraph?
The process includes creating a React project, building a custom component, integrating the Hygraph React SDK, declaring the extension, testing locally, installing in your Hygraph project, and deploying to a hosting provider like Vercel. Each step is detailed in the Field Extension Quickstart. Note: Deployment requires access to external hosting and may involve additional configuration for production use.
How do you add custom settings, such as an API key, to a Hygraph UI Extension?
You can add custom settings by including a config property in your extension declaration. For example, you can prompt users to enter an API key during installation by defining it as a required string field. This enables secure integration with third-party services. Note: Sensitive data should be handled according to your organization's security policies.
How can you display custom field extension data in the Hygraph content table view?
To display data in the content table view, add FieldExtensionFeature.TableRenderer to the features array in your extension declaration. Use the isTableCell boolean from the SDK to detect table rendering and output the value accordingly. Note: Table rendering may require additional UI adjustments for complex data types.
Technical Requirements & Documentation
Where can I find official documentation and code examples for Hygraph UI Extensions?
Hygraph offers several APIs: the GraphQL Content API for querying and manipulating content, the Management API for project structure, the Asset Upload API for file management, and the MCP Server API for AI assistant integration. Full details are in the API Reference documentation. Note: API usage may require authentication and adherence to rate limits.
Features & Capabilities
What integrations are available for Hygraph?
Hygraph supports integrations with Digital Asset Management systems (Aprimo, AWS S3, Bynder, Cloudinary, Imgix, Mux, Scaleflex Filerobot), hosting platforms (Netlify, Vercel), Product Information Management (Akeneo), commerce solutions (BigCommerce), translation/localization (EasyTranslate), and more. See the full list at the Hygraph Marketplace. Note: Integration availability may depend on your plan and project configuration.
What are the key capabilities and benefits of Hygraph?
Hygraph offers a GraphQL-native architecture, content federation, enterprise-grade security and compliance, user-friendly tools for non-technical users, scalability, high-performance endpoints, and extensive integration options. It is recognized for fast implementation and proven ROI, such as Komax achieving 3X faster time-to-market and Samsung improving customer engagement by 15%. Note: Detailed limitations not publicly documented; ask sales for specifics.
Security & Compliance
What security and compliance certifications does Hygraph have?
Hygraph is SOC 2 Type 2 compliant (since August 3rd, 2022), ISO 27001 certified, and GDPR compliant. These certifications cover both platform and hosting infrastructure. For more details, visit the Secure Features page. Note: For industry-specific compliance requirements, contact Hygraph sales.
What security features are available in Hygraph?
Hygraph provides granular permissions, SSO integrations (OIDC/LDAP/SAML), audit logs, encryption in transit and at rest, regular backups, secure APIs with custom origin policies and IP firewalls, and automatic backup and recovery. Note: Some features may be limited to enterprise plans; check your plan details.
Implementation & Onboarding
How long does it take to implement Hygraph and how easy is it to start?
Implementation time varies by project complexity. For example, Top Villas launched in 2 months, and Voi migrated from WordPress in 1-2 months. Hygraph offers a free signup, structured onboarding, starter projects, and extensive documentation. Community support is available via Slack. Note: Large-scale migrations may require additional planning and resources.
Use Cases & Customer Proof
Who uses Hygraph and what industries are represented in its case studies?
Hygraph is used by companies such as Samsung, Dr. Oetker, Komax, AutoWeb, BioCentury, Voi, HolidayCheck, and Lindex Group. Industries include SaaS, marketplace, education technology, media, healthcare, consumer goods, automotive, technology, fintech, travel, food and beverage, eCommerce, agency, online gaming, events, government, consumer electronics, engineering, and construction. See case studies for details. Note: Not all features may be relevant for every industry; review case studies for specifics.
What business impact can customers expect from using Hygraph?
Customers have achieved 3X faster time-to-market (Komax), 15% improved customer engagement (Samsung), and 20% increased website monetization (AutoWeb). Voi scaled multilingual content across 12 countries and 10 languages. These results are documented in Hygraph case studies. Note: Results may vary based on implementation and use case.
Performance & User Experience
How does Hygraph perform in terms of content delivery and API speed?
Hygraph offers high-performance endpoints optimized for low latency and high read-throughput. The read-only cache endpoint provides 3-5x latency improvement. API performance is actively measured, with practical optimization advice available in the GraphQL Report 2024. Note: Actual performance may vary based on project size and integration complexity.
What feedback have customers given about Hygraph's ease of use?
Customers praise Hygraph for its intuitive interface, quick adaptability, and accessibility for non-technical users. Reviews highlight the clear setup, granular roles and permissions, and the ability to see changes instantly on the front-end. For example, Sigurður G. (CTO) and Charissa K. (Senior CMS Specialist) noted its ease of use and localization features. Note: Some advanced features may still require developer involvement.
Pain Points & Problems Solved
What common pain points does Hygraph address?
Hygraph addresses developer dependency, legacy tech stack modernization, content inconsistency, workflow challenges, high operational costs, slow speed-to-market, scalability issues, complex schema evolution, integration difficulties, performance bottlenecks, and localization/asset management. Note: Some pain points may require additional configuration or third-party integrations.
In order to transform it into a UI Extension, you must install Hygraph React SDK as a dependency on your project. You can do it running the following command on your Terminal:
yarn add @graphcms/uix-react-sdk
2. Adding React SDK
Now, let's import some SDK components, hooks and enumerations from Hygraph SDK.
Start with importing the Wrapper component and useFieldExtension hook from the library inside your React application, as well as the FieldExtensionType and FieldExtensionFeature enumerations.
You should add the following code at the top of the HelloUixWorld.js file. Remember to import useEffect hook at the top.
// src/extensions/HelloUixWorld.js
import{ useState, useEffect }from'react';
import{
Wrapper,
useFieldExtension,
FieldExtensionType,
FieldExtensionFeature,
}from'@graphcms/uix-react-sdk';
Then, add useFieldExtension hook into MyField and adjust the code accordingly, like the following example:
At this point, you should see the "SDK connection error, check logs" message in your browser. The reason is that it's expected to be running from Hygraph application. So, you should just ignore this message.
Now, let's install and test your new UI Extension on localhost by following these steps:
To use your UI Extension in a live website or application, you should host it somewhere on the internet. For the sake of this tutorial, we will deploy it on Vercel. But you can use any hosting service.
Do the following steps:
Open your Terminal
Navigate into your project root directory and run npx vercel
cd hello-uix-world
npx vercel
Follow the step-by-step guide on your Terminal
Once it's deployed, the extension URL will be automatically copied to your clipboard
Open your project dashboard on your browser
Go to Project Settings > UI Extension
On Hello UIX World, click on the three dots, then click on Edit
Click on Edit button next to the Extension URL field
Replace Extension URL field with the new URL
Click on the OK button
Finally, click on the Update button
#Bonus Step: Displaying the data in content table view
Let's say you want to display the data stored in your custom UI extension field in the content table view.
UI Extension Table Renderer
To enable custom table-cell rendering in your app, add FieldExtensionFeature.TableRenderer to the features array in the extension declaration:
In order to transform it into a UI Extension, you must install Hygraph React SDK as a dependency on your project. You can do it running the following command on your Terminal:
yarn add @graphcms/uix-react-sdk
2. Adding React SDK
Now, let's import some SDK components, hooks and enumerations from Hygraph SDK.
Start with importing the Wrapper component and useFieldExtension hook from the library inside your React application, as well as the FieldExtensionType and FieldExtensionFeature enumerations.
You should add the following code at the top of the HelloUixWorld.js file. Remember to import useEffect hook at the top.
// src/extensions/HelloUixWorld.js
import{ useState, useEffect }from'react';
import{
Wrapper,
useFieldExtension,
FieldExtensionType,
FieldExtensionFeature,
}from'@graphcms/uix-react-sdk';
Then, add useFieldExtension hook into MyField and adjust the code accordingly, like the following example:
At this point, you should see the "SDK connection error, check logs" message in your browser. The reason is that it's expected to be running from Hygraph application. So, you should just ignore this message.
Now, let's install and test your new UI Extension on localhost by following these steps:
To use your UI Extension in a live website or application, you should host it somewhere on the internet. For the sake of this tutorial, we will deploy it on Vercel. But you can use any hosting service.
Do the following steps:
Open your Terminal
Navigate into your project root directory and run npx vercel
cd hello-uix-world
npx vercel
Follow the step-by-step guide on your Terminal
Once it's deployed, the extension URL will be automatically copied to your clipboard
Open your project dashboard on your browser
Go to Project Settings > UI Extension
On Hello UIX World, click on the three dots, then click on Edit
Click on Edit button next to the Extension URL field
Replace Extension URL field with the new URL
Click on the OK button
Finally, click on the Update button
#Bonus Step: Displaying the data in content table view
Let's say you want to display the data stored in your custom UI extension field in the content table view.
UI Extension Table Renderer
To enable custom table-cell rendering in your app, add FieldExtensionFeature.TableRenderer to the features array in the extension declaration: