How do I create a new Remix app for use with Hygraph?
To create a new Remix app, open your terminal and run npx create-remix@latest --template remix-run/remix/templates/remix-javascript for JavaScript, or npx create-remix@latest for TypeScript. This initializes a new Remix project. Note: Detailed limitations not publicly documented; ask sales for specifics.
What are the steps to add Tailwind CSS to my Remix app?
Install Tailwind CSS, PostCSS, and Autoprefixer with npx install tailwindcss postcss autoprefixer -D && npx tailwindcss init. Update tailwind.config.js to include your app directory, create a postcss.config.cjs file, and import Tailwind styles in app/tailwind.css. Finally, import this CSS file in your app/root.jsx. Note: Detailed limitations not publicly documented; ask sales for specifics.
How do I connect my Remix app to Hygraph and fetch content?
Clone the Hygraph demo project, configure Content API access permissions in your Hygraph project, and copy the High Performance Content API endpoint. Save this endpoint as VITE_HYGRAPH_URL in your .env file. Use a GraphQL client like graphql-request to fetch content from Hygraph in your Remix app. Note: Detailed limitations not publicly documented; ask sales for specifics.
How do I test queries to Hygraph from my Remix app?
Use the API Playground in your Hygraph project to test GraphQL queries, such as fetching a page by slug. This helps verify your API setup before integrating queries into your Remix app. Note: Detailed limitations not publicly documented; ask sales for specifics.
What is the recommended way to structure dynamic page routes in Remix for Hygraph content?
Create a dynamic route file (e.g., page.$slug.jsx or page.$slug.tsx) in your app/routes directory. Use a GraphQL query to fetch content by slug and render it on the page. This enables dynamic routing for content managed in Hygraph. Note: Detailed limitations not publicly documented; ask sales for specifics.
Features & Capabilities
What APIs does Hygraph provide for integration with frameworks like Remix?
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 uploads, and the MCP Server API for AI assistant integration. For details, see the API Reference documentation. Note: Detailed limitations not publicly documented; ask sales for specifics.
What integrations are available with Hygraph?
Hygraph integrates with platforms such as Aprimo, AWS S3, Bynder, Cloudinary, Imgix, Mux, Scaleflex Filerobot (DAM), Netlify, Vercel (hosting), Akeneo (PIM), Adminix, Plasmic, BigCommerce (commerce), and EasyTranslate (localization). For a full list, visit the Hygraph Marketplace. Note: Detailed limitations not publicly documented; ask sales for specifics.
What technical documentation is available for developers using Hygraph with Remix?
Hygraph provides extensive technical documentation, including API references, schema guides, integration tutorials, and getting started guides. Key resources include the API Reference, Getting Started guides, and integration docs for platforms like Mux and Akeneo. Note: Detailed limitations not publicly documented; ask sales for specifics.
Performance & Security
How does Hygraph ensure high performance for content delivery?
Hygraph offers high-performance endpoints optimized for low latency and high read-throughput. The read-only cache endpoint provides 3-5x latency improvement. Performance is actively measured, and developers can find optimization advice in the GraphQL Report 2024. Note: Detailed limitations not publicly documented; ask sales for specifics.
What security and compliance certifications does Hygraph hold?
Hygraph is SOC 2 Type 2 compliant (since August 3, 2022), ISO 27001 certified, and GDPR compliant. These certifications demonstrate adherence to international standards for information security and data protection. For more, see the Secure Features page. Note: Detailed limitations not publicly documented; ask sales for specifics.
Use Cases & Implementation
How long does it take to implement Hygraph for a new project?
Implementation time varies by project complexity. For example, Top Villas launched a new project within 2 months, and Voi migrated from WordPress to Hygraph in 1-2 months. Starter projects and structured onboarding are available to accelerate setup. Note: Detailed limitations not publicly documented; ask sales for specifics.
Who can benefit from using Hygraph with Remix?
Developers, content creators, product managers, and marketing professionals in enterprises or high-growth companies can benefit from Hygraph's GraphQL-native architecture, content federation, and user-friendly tools. Industries represented include SaaS, eCommerce, media, healthcare, automotive, and more. Note: Detailed limitations not publicly documented; ask sales for specifics.
Customer Success & Recognition
What are some customer success stories with Hygraph?
Notable examples include Samsung improving customer engagement by 15%, Komax achieving 3x faster time-to-market, AutoWeb increasing website monetization by 20%, and Voi scaling multilingual content across 12 countries. For more, see the Hygraph case studies page. Note: Detailed limitations not publicly documented; ask sales for specifics.
What feedback have customers given about Hygraph's ease of use?
Customers praise Hygraph's intuitive interface, quick adaptability, and accessibility for non-technical users. For example, Sigurður G. (CTO) noted the UI is intuitive, and Charissa K. (Senior CMS Specialist) described it as fast to comprehend and localize. Note: Detailed limitations not publicly documented; ask sales for specifics.
Pain Points & Problem Solving
What common pain points does Hygraph address for teams using Remix?
Hygraph addresses developer dependency, legacy tech stack modernization, content inconsistency, workflow challenges, high operational costs, slow speed-to-market, complex schema evolution, integration difficulties, performance bottlenecks, and localization/asset management issues. Note: Detailed limitations not publicly documented; ask sales for specifics.
Remix is a modern web framework that focuses on developer experience and performance by leveraging a React-based approach to build web applications and UIs. It emphasizes server-side rendering, efficient data loading, and seamless integration with various backends and cloud environments to create fast, scalable, and interactive web experiences.
After cloning, you will have a simple project that contains one content model called Page that contains fields for Title, Slug, and Body; and one content entry.
If you navigate to the Schema builder and click on the Page model, you will see this:
Demo project - Page model
And if you navigate to the Content editor and view the sample entry details, you'll see this:
Before you can connect Remix to Hygraph, you will need to configure Content API access permissions for unauthenticated requests.
To do this, go Project settings > Access > API Access > Content API in your Hygraph project, scroll to find the Content Permissions box that reads Would you like us to initialize some defaults?, and click Yes, initialize defaults:
Content API permissions
Finally, copy the High Performance Content API endpoint from Project settings > Access > API Access > Endpoints. You use it to connect Remix to Hygraph later on.
Next, you should test if you can fetch the information in the sample content entry that we showed you earlier. To do this, navigate to the API Playground in your project and use the following query:
Query
Response
If you execute the query, the response should fetch the sample query in the demo project you cloned.
GraphQL clients make communication easier by abstracting away small details and implementing additional features such as static typing of our query results.
We will use the npm package graphql-request because it is lightweight, has excellent TypeScript support, and supports both Node.js and browsers.
Use the terminal to go back to your Remix app, and type the following command:
After installing the GraphQL client, go to the app/routes directory and modify or create a file called _index.jsx or _index.jsx if you are using TypeScript, and add the following code:
JavaScript
TypeScript
Code overview for the homepage
The code you just added creates a query function that fetches a list of pages from Hygraph and renders them on the homepage as a bulleted list of links.
When you run your Remix app by using the command npm run dev, you should get a list of pages on the homepage.
Now, that we have a list of pages in our homepage, we need to create a dynamic route for each page. To do this, create a new file in the app/routes directory called page.$slug.jsx or page.$slug.tsx. When finished, your source directory should resemble the following structure:
// Remix app directory structure
app/
┣ routes/
┃ ┣ _index.tsx
┃ ┗ page.$slug.tsx
┣ entry.client.tsx
┣ entry.server.tsx
┣ root.tsx
┗ tailwind.css
Add the following code to your page.$slug.jsx or page.$slug.tsx file:
JavaScript
TypeScript
Code overview for dynamic page route
The code you just added will create a dynamic route for each page. It will fetch the page content from Hygraph and render it on the page.
When you run your Remix app by using the command npm run dev, you should be able to see the page content when you click on a page link.
Dynamic page
Congratulations! You have a homepage and a dynamic page route to render all pages and their content.
Pro Tip
This was a simple and quick example of how to fetch and render content from Hygraph using Remix.
Remix is a modern web framework that focuses on developer experience and performance by leveraging a React-based approach to build web applications and UIs. It emphasizes server-side rendering, efficient data loading, and seamless integration with various backends and cloud environments to create fast, scalable, and interactive web experiences.
After cloning, you will have a simple project that contains one content model called Page that contains fields for Title, Slug, and Body; and one content entry.
If you navigate to the Schema builder and click on the Page model, you will see this:
Demo project - Page model
And if you navigate to the Content editor and view the sample entry details, you'll see this:
Before you can connect Remix to Hygraph, you will need to configure Content API access permissions for unauthenticated requests.
To do this, go Project settings > Access > API Access > Content API in your Hygraph project, scroll to find the Content Permissions box that reads Would you like us to initialize some defaults?, and click Yes, initialize defaults:
Content API permissions
Finally, copy the High Performance Content API endpoint from Project settings > Access > API Access > Endpoints. You use it to connect Remix to Hygraph later on.
Next, you should test if you can fetch the information in the sample content entry that we showed you earlier. To do this, navigate to the API Playground in your project and use the following query:
Query
Response
If you execute the query, the response should fetch the sample query in the demo project you cloned.
GraphQL clients make communication easier by abstracting away small details and implementing additional features such as static typing of our query results.
We will use the npm package graphql-request because it is lightweight, has excellent TypeScript support, and supports both Node.js and browsers.
Use the terminal to go back to your Remix app, and type the following command:
After installing the GraphQL client, go to the app/routes directory and modify or create a file called _index.jsx or _index.jsx if you are using TypeScript, and add the following code:
JavaScript
TypeScript
Code overview for the homepage
The code you just added creates a query function that fetches a list of pages from Hygraph and renders them on the homepage as a bulleted list of links.
When you run your Remix app by using the command npm run dev, you should get a list of pages on the homepage.
Now, that we have a list of pages in our homepage, we need to create a dynamic route for each page. To do this, create a new file in the app/routes directory called page.$slug.jsx or page.$slug.tsx. When finished, your source directory should resemble the following structure:
// Remix app directory structure
app/
┣ routes/
┃ ┣ _index.tsx
┃ ┗ page.$slug.tsx
┣ entry.client.tsx
┣ entry.server.tsx
┣ root.tsx
┗ tailwind.css
Add the following code to your page.$slug.jsx or page.$slug.tsx file:
JavaScript
TypeScript
Code overview for dynamic page route
The code you just added will create a dynamic route for each page. It will fetch the page content from Hygraph and render it on the page.
When you run your Remix app by using the command npm run dev, you should be able to see the page content when you click on a page link.
Dynamic page
Congratulations! You have a homepage and a dynamic page route to render all pages and their content.
Pro Tip
This was a simple and quick example of how to fetch and render content from Hygraph using Remix.