<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/introducing-typescript-functions-on-hasura-ddn-xczau8tu6" -->

---
title: Introducing TypeScript functions on Hasura DDN | daily.dev
description: Hasura DDN introduces TypeScript functions to simplify GraphQL server development. It allows you to integrate custom business logic, perform data...
canonical: https://daily.dev/posts/introducing-typescript-functions-on-hasura-ddn-xczau8tu6
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Introducing TypeScript functions on Hasura DDN | daily.dev
og:description: Hasura DDN introduces TypeScript functions to simplify GraphQL server development. It allows you to integrate custom business logic, perform data...
og:url: https://daily.dev/posts/introducing-typescript-functions-on-hasura-ddn-xczau8tu6
og:image: https://api.daily.dev/og/posts/xCzAU8tu6.png
og:image:alt: Introducing TypeScript functions on Hasura DDN
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Introducing TypeScript functions on Hasura DDN

**[Hasura](https://daily.dev/sources/hasura)** · 8 min read · 5 upvotes · 0 comments

## Summary

Hasura DDN introduces TypeScript functions to simplify GraphQL server development. It allows you to integrate custom business logic, perform data transformations, and access data from unsupported sources. TypeScript functions provide type safety, error handling, and observability. They can leverage any NPM package and simplify complex tasks. Hasura DDN also supports joining data from different sources and enhances observability with OpenTelemetry.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://hasura.io/blog/introducing-typescript-functions-on-hasura-ddn>

---

Tags: [#backend](https://daily.dev/tags/backend), [#typescript](https://daily.dev/tags/typescript), [#graphql](https://daily.dev/tags/graphql), [#npm](https://daily.dev/tags/npm)

[View this post on daily.dev](https://daily.dev/posts/introducing-typescript-functions-on-hasura-ddn-xczau8tu6)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Introducing TypeScript functions on Hasura DDN","url":"https://daily.dev/posts/introducing-typescript-functions-on-hasura-ddn-xczau8tu6","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/introducing-typescript-functions-on-hasura-ddn-xczau8tu6"},"datePublished":"2024-04-30T17:35:11.367Z","dateModified":"2024-05-09T07:52:51.999Z","description":"Hasura DDN introduces TypeScript functions to simplify GraphQL server development. It allows you to integrate custom business logic, perform data...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/aa4eac11ee1c82ddb5d783b71feb0e08?_a=AQAEuiZ","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/aa4eac11ee1c82ddb5d783b71feb0e08?_a=AQAEuiZ","isAccessibleForFree":true,"articleSection":"Hasura","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Hasura","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/9e128def97fd4e9198d016b2dc1cbd6e","url":"https://daily.dev/sources/hasura"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/introducing-typescript-functions-on-hasura-ddn-xczau8tu6","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":5},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"backend,typescript,graphql,npm","timeRequired":"PT8M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Hasura","item":"https://daily.dev/sources/hasura"},{"@type":"ListItem","position":3,"name":"Introducing TypeScript functions on Hasura DDN"}]}
```

