{"id":1680,"date":"2023-03-28T10:38:44","date_gmt":"2023-03-28T10:38:44","guid":{"rendered":"https:\/\/www.workfall.com\/learning\/blog\/?p=1680"},"modified":"2025-09-19T03:58:46","modified_gmt":"2025-09-19T03:58:46","slug":"create-a-no-code-graphql-server-using-hasura-and-postgresql","status":"publish","type":"post","link":"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/","title":{"rendered":"Create a No-code GraphQL Server Using Hasura and PostgreSQL"},"content":{"rendered":"<span class=\"rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Reading Time: <\/span> <span class=\"rt-time\">7<\/span> <span class=\"rt-label rt-postfix\">minutes<\/span><\/span>\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh3.googleusercontent.com\/yDZ6d6W3nmT1IDUN-vhhIspCkHCikndutSrYIyZ4AqJ2tZu0nY2uR8sfXOUtPKsIp1PUvL5ZspdGtCmv56X-UnPhAygYeMRFJWSiRDEr3DLotuKOZOBywa2Hd1U69zlh9oauNaTL4Y8TfaYRotNLhjI\" alt=\"No-code GraphQL Server Using Hasura and PostgreSQL\"\/><\/figure>\n\n\n\n<p class=\"has-text-align-justify\">To handle CRUD, authorization, and business logic, backend developers frequently need to write several lines of code. All of this code must be tested, debugged, and maintained for the duration of the project. This consumes a significant amount of time that developers could be used to create new features.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">This blog will demonstrate to you how Hasura and PostgreSQL can help you accelerate app development and easily launch backends.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">Hasura is the real deal when it comes to building fast and preventing reinventing the wheel. Adopting Hasura allows you to launch faster and create a product that is highly performant, secure, fault-tolerant, scalable, and simple to maintain.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">Having no infrastructure headaches will also lower your operating costs and allow you to concentrate on front-end development and the user-facing aspects of your app.<\/p>\n\n\n\n<p>In this blog, we will cover:<\/p>\n\n\n\n<ul><li>GraphQL<\/li><li>Hasura<\/li><li>PostgreSQL<\/li><li>Hands-on<\/li><li>Conclusion<\/li><\/ul>\n\n\n\n<h2>GraphQL<\/h2>\n\n\n\n<p class=\"has-text-align-justify\">GraphQL is an API query language and runtime for answering queries with existing data. GraphQL provides a comprehensive and understandable description of the data in your API, enables clients to request only what they require, simplifies the evolution of APIs over time, and enables powerful developer tools.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">The appeal of GraphQL stems primarily from the concept of asking for and receiving exactly what you require &#8211; nothing more, nothing less. GraphQL returns a very predictable result when queries are sent to your API, with no over or under-fetching, ensuring that GraphQL apps are fast, stable, and scalable.<\/p>\n\n\n\n<h2>Hasura<\/h2>\n\n\n\n<p class=\"has-text-align-justify\">Hasura is an open-source GraphQL engine that generates GraphQL and REST API endpoints based on the schema of your database. It allows you to run custom business logic over GraphQL by supporting data modeling, real-time querying, event programming, role-based authorization, and actions.<\/p>\n\n\n\n<h3>Why Hasura is Fast?<\/h3>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh4.googleusercontent.com\/SOd7rPmGkCWV48k4H7lw35xgeneusDYEx_kfYIeLKbtyo2-h6iVE4sQmYvCSaGOBUGJE-c9Jb6KTCQdtTn09DuUr9ArSjrunlXLqdNg7y-Tojc1rJRIVjkeLhzbUIrL_BQvK8FK_PyrB-7qRj3UCVVM\" alt=\"No-code GraphQL Server Using Hasura and PostgreSQL\"\/><\/figure>\n\n\n\n<ul><li><strong>High Productivity:<\/strong> Hasura can process a large number of queries per second (1000 q\/sec) while using a small amount of RAM (50MB) and with low latency.<\/li><\/ul>\n\n\n\n<ul><li><strong>Concurrency and Realtime:<\/strong> Hasura allows for massive concurrency, which is particularly useful in real-time applications. We tested this, for example, by benchmarking our subscriptions; with 1 million subscriptions sending unique updates to 1 million connected clients every second.<\/li><\/ul>\n\n\n\n<ul><li><strong>Large queries &amp; Results:<\/strong> Despite being a layer on top of Postgres, Hasura has been able to match native Postgres performance for fairly large queries and (or) large results.<\/li><\/ul>\n\n\n\n<h2>PostgreSQL<\/h2>\n\n\n\n<p class=\"has-text-align-justify\"><a href=\"https:\/\/www.workfall.com\/learning\/blog\/how-to-create-a-rest-api-with-rust-rocket-framework-and-diesel-middleware-with-postgresql-database\/\">PostgreSQL<\/a> is a popular and powerful open-source, object-oriented relational database that competes with Oracle Database and Microsoft SQL Server in terms of enterprise-class features. PostgreSQL is ranked fourth in terms of global popularity by DB-Engines, and its popularity is growing. This should come as no surprise given that PostgreSQL databases are used by many web and mobile applications, as well as analytical tools.<\/p>\n\n\n\n<h2>Hands-on<\/h2>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh3.googleusercontent.com\/d32C3er0dJP0Bg9sUS2qjY-QoZjlg8dudsLL1t58EX_5XzBGzIbsmPp6VZtjSURrE-nHuvTyOQA6CxWvEnfhsEqiCcLIV0sN5RGZp17iglNDe6a5FQt6RuqmAFvd0-wQo5GsWLt6Vdg7x9nS6Tlg7Mw\" alt=\"No-code GraphQL Server Using Hasura and PostgreSQL\"\/><\/figure>\n\n\n\n<p class=\"has-text-align-justify\">For this blog, we are going to use the docker image for Hasura. Once we run a container, it will spin up a GUI that includes GraphiQL IDE which is just a console to help us test our GraphQL endpoints, and a dashboard to manage our data.<\/p>\n\n\n\n<p class=\"has-text-align-justify\"><em>Note: you can also configure using the <strong>docker-compose.yml<\/strong> in the root of the project.<\/em><\/p>\n\n\n\n<h3>Folder Structure<\/h3>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh5.googleusercontent.com\/YcU0lSmfNa3PZSDUAOTOT4xbDDMe0GGfuRviAq9gOUsG8Sp5YeFmxgcSWUeyWTux_GEbD2LNe_RWXLFMQnXoKXsxXWmIN6HaPYM2roCZmGEeUbmz2dBrHdL1f2RdNYqqrTVjJB2IJpIeJQuCk3kIJh0\" alt=\"No-code GraphQL Server Using Hasura and PostgreSQL\"\/><\/figure>\n\n\n\n<h3>Installations<\/h3>\n\n\n\n<p class=\"has-text-align-justify\">For this blog, we need to install <a href=\"https:\/\/www.workfall.com\/learning\/blog\/how-to-install-and-run-docker-container-on-amazon-ec2-instance-part-1\/\">Docker<\/a> because we are going to use the docker image for Hasura. The database is PostgreSQL and you can either install it locally or you can use a cloud solution such as ElephantSQL which is used in this blog.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">Go to <a href=\"https:\/\/www.elephantsql.com\/\">ElephantSQL<\/a> and create an account. They offer free tiers so you do not have to worry about billing. Once on the dashboard, you can create a new instance<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh4.googleusercontent.com\/VRzjR_zxkD051O8BhbwbBKB-IsFWwUFzoQUO74S-j_LlZToKVL0AJvzH12C-ev8P1M3hwXvaItQXdrFvoBtJYYD9_qc-HvI-st0Us3dIVPYK1MGblwsPCBrlNE2gn0b16mjKURiWtVaqQWrBAPFgHbM\" alt=\"No-code GraphQL Server Using Hasura and PostgreSQL\"\/><\/figure>\n\n\n\n<p class=\"has-text-align-justify\">Pick the tiny turtle plan because it is free. For the AWS region, select any that you feel will be the better option in terms of geographical region and latency.<\/p>\n\n\n\n<p>After it has been created, copy\/take note of the URL which we shall use on the Hasura dashboard.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh4.googleusercontent.com\/BwZAiaVLU7kHbzAm1lQVs7sF-AXSupVMCvfweIzPGbIgtpVKElgzGTDOx1CVukS-yRqojLozNBdKanxg9Sws7hvkYY3gTixqhOf2YiUCbfMhDCUuOiCo16MugxIc-a-SEmpo7gVfWtSGaZKMUCiDTZk\" alt=\"No-code GraphQL Server Using Hasura and PostgreSQL\"\/><\/figure>\n\n\n\n<h3>Running Hasura<\/h3>\n\n\n\n<p class=\"has-text-align-justify\">Once you have Docker installed and the docker daemon is running, go to the terminal and create a project folder and open it in the terminal.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">Type either of the following commands: <strong>curl https:\/\/raw.githubusercontent.com\/hasura\/graphql-engine\/stable\/install-manifests\/docker-compose\/docker-compose.yaml -o docker-compose.yml<\/strong> or <strong>wget <\/strong><a href=\"https:\/\/raw.githubusercontent.com\/hasura\/graphql-engine\/stable\/install-manifests\/docker-compose\/docker-compose.yaml\"><strong>https:\/\/raw.githubusercontent.com\/hasura\/graphql-engine\/stable\/install-manifests\/docker-compose\/docker-compose.yaml<\/strong><\/a>.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">Then run a container using <strong>docker compose up<\/strong> or <strong>docker compose up -d<\/strong> to run in detached mode. If it runs successfully, you will be able to access the dashboard at <a href=\"http:\/\/localhost:8080\/console\">http:\/\/localhost:8080\/console<\/a><\/p>\n\n\n\n<p>You should be able to see the interface as shown below (don\u2019t worry if you don\u2019t have any mutation or query):<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh6.googleusercontent.com\/xY7t8U9J_Tvz_wUyoYFUEJdGMV0qefCDNtYGq5SZwS9ngqCH2ZMMRix2hP6vK_kVWgyDLjdinXCTBz2PjdQyd_xoOR8hlgCMQFBSJDgknyGaIToKR5kesLr6JQYFWYSbXF92Ky-6tAG1b08YUJ7MzfU\" alt=\"No-code GraphQL Server Using Hasura and PostgreSQL\"\/><\/figure>\n\n\n\n<p class=\"has-text-align-justify\">Let\u2019s begin by connecting our database, for that, click on \u2018DATA\u2019 on the navigation bar. You should be able to see the interface below:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh4.googleusercontent.com\/da38je-YjNwsUNzg-wcH_dIg8V1O9SJyv4SmiHNJKHH2ZlGwDDDH9s8qJUJG2eukf2Lg8OGVP0OmdqLKOHoYe7_plPuI4Hp6ZJ9ivd_XsUp-dV4f-AvIqSRgslrp5we8UqYCFeR4uKlpQcDRtvaFdaw\" alt=\"No-code GraphQL Server Using Hasura and PostgreSQL\"\/><\/figure>\n\n\n\n<p class=\"has-text-align-justify\">Once you have filled in all the details most importantly the Database URL, click on Connect Database, and Hasura will do the rest for you.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh6.googleusercontent.com\/u_YGukgBwpY4tlI623s-fymwpr52xS6ZPq9vs3HSZhT6UMX76ViAN0Yn9dgemC0GAQJkm1IB0-HfaibPUqaT0Gropizrtlng9VlktgQDN-Hccs7vuw7twerpZsx_LxmIB_SrAfHFS4VfQwehwWTtNB4\" alt=\"\"\/><\/figure>\n\n\n\n<p>Click on View Database, then \u2018Create Table\u2019 to create a new table.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh3.googleusercontent.com\/YbYqDJQvbkmIKCb5E7ygg5H7xgnhcJlpsJLgXrRgSR85h-Csai98Hv75orzFD2_B3Jbe9TiL8qdkE5fh5BfI5SHYCPP_j6-_ygu1weXYrTpGO3aOfTYtO787YTP-IsxpkUlb2JHqY06hNF0S_AHqXZ4\" alt=\"\"\/><\/figure>\n\n\n\n<p>You can use the \u2018Frequently use columns\u2019 button to create columns like id(UUID) and created_at(Timestamp)<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh3.googleusercontent.com\/WtIFxD2P2JomKwtqI9HRl0d50HGkXhkzkDl6q-VaHr1TM5QLgw8y9p0fxEqwoGm8k0T-SjCI81b1Pp9IKfnyBQKHJo1cCbS0JIMnh5eWPT6Yx6pNFKHaUf6b8ukPsDqO72cVL8rWeeEk4gJvuO1OZz8\" alt=\"No-code GraphQL Server Using Hasura and PostgreSQL\"\/><\/figure>\n\n\n\n<p>Then click on \u2018Add Table\u2019<\/p>\n\n\n\n<p><em>Note: You can create an aggregated primary key or just use the UUID.<\/em><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh5.googleusercontent.com\/0TcqcVQKUyPH81D12sdOcrYPJN_KW0q-yBgZ9bHf-VoK_SfyzRWZycL01UfkZU4SjJdLumxhMnIqbfP18ADRWRwk4W68MnrcJjxr071clJdCjlyOZnUyp-jnrjGBapRGHlQ0xup_M_ViJ6Rq9yDNtkg\" alt=\"\"\/><\/figure>\n\n\n\n<p class=\"has-text-align-justify\">Note: If your table had any existing tables, click on \u2018public\u2019 on the left menu then expand the \u2018Untracked tables or views\u2019 section and click on \u2018Track\u2019 on the respective table.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh3.googleusercontent.com\/9cySKsYQ4B_LlmQFa814NwBiXVtqFLEQuGf10nPLr8azvZItoD-WFIkdO3i9wFWn0lfXyCgVD0F8SLJKRqMXjYwUQo9_AJUX_-QcRmzngRbLnNL7JCfcSGf12vD7HenomP3C0y6d-sx5LiqXUBat8gY\" alt=\"\"\/><\/figure>\n\n\n\n<p class=\"has-text-align-justify\">Navigate back to the \u2018API\u2019 page i.e the GraphiQL IDE and you will see that a query is automatically created in the explorer.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh3.googleusercontent.com\/gophqadf57OllBwoiu26JJ0cyhAL_aEfy4PcT0LyTblkfJArMS13pUoq-Czn_GaWPP_evV6nnotDVXNmi3wOsaekLkthD35ez_LLprltKi_iiua6sLViUllFjFGOL9JePdwK9H5EI7eiiqnZbCD9x6Q\" alt=\"\"\/><\/figure>\n\n\n\n<p class=\"has-text-align-justify\">In GraphQL there are two main types of operations i.e a Query and a Mutation. A Query is the equivalent of a GET request in REST and a Mutation is the equivalent of a POST request.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">We can add a mutation in the \u2018Add New\u2019 section at the bottom of the explorer. Note that it creates all the <a href=\"https:\/\/www.workfall.com\/learning\/blog\/how-to-connect-to-mysql-database-and-run-crud-operations-in-node-js\/\">CRUD operations<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh5.googleusercontent.com\/m7d4OhRKOHyKriZJnxYRd2uk5z5kZ0GKtP45VANfdmzcdLpmGX5vYW3hp_3HjccdHj8J4XGqD84V4OkkjQZeCLTd13rNK8PKWdEY5lTwKvYELVOSvi9zBmDGgUQTPvFfTJxw0dDWzWzTwrSVWsarbTs\" alt=\"\"\/><\/figure>\n\n\n\n<p class=\"has-text-align-justify\">Let us make a mutation to create a user, start by expanding the \u2018insert_users\u2019 section in the explorer. We can just check the name field because the others are auto-generated and most importantly, check the \u2018affected_rows\u2019 field to return the affected rows.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh6.googleusercontent.com\/yRnbhPg8v_8qeCG3huOlJpPYszJL1uGVIwnUd5G78jG9vFMnF-ymIAVMy3aUHqQbb7L6DSf-DUjZJwq1uc5B7diBhhMofPd8s-sdQlF2jLJkKuDkeWWB4S03DMkdesNjNbbOlD4-1-7nsXscu0WMLbw\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh6.googleusercontent.com\/OxJSu8MtHMpGtAoDYCqvv6u2FcyVU30tN3j3HVqwoP4XyldtO-IvdnbRHAJj25yhLpvr7xydLntVxJBDnVgsiEia7rsb2EYRpAyU6OZ0SROANCV3dyLpjvxaBYPzhv31wkQ6jc0LJSx2ogxwDtdVvSA\" alt=\"No-code GraphQL Server Using Hasura and PostgreSQL\"\/><\/figure>\n\n\n\n<p class=\"has-text-align-justify\">Next, we\u2019ll query perform a query operation. Make sure you check at least one field that you want to be included in the response. Note: These queries can become nested once you start defining relationships in your table.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh5.googleusercontent.com\/FdboVIu1xxQMqkUcdK1KkVZsftfE_xwQrCdwaKtwaC3UayZSZrTKNlQdoW4cat-N9VPMLhEjVtfOaXFWFv7pHIV5zRACf55iJBSLUs3pNmkv6fcP_9APQefDvknI-kX5UEBDI5rjUYQZZAAtcI6vXrc\" alt=\"\"\/><\/figure>\n\n\n\n<p class=\"has-text-align-justify\">Let us try adding a \u2018sys_roles\u2019 table and defining the relationship between users and system roles so that we see how we can perform more complex queries.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh4.googleusercontent.com\/ufi4o30jl_E0rTF2kf0gdxDdVLVOzl7e3VcadI61KOtAhXD1njHyr3-FcFZFKhsXrTjlpC1NYBlWB-mLK21-HPbxU-koM8iv_gWonxnDGApqMwggtKBfsDShWeGyQ7h7Buy4LuZZGwZJqKIWq6KyBSw\" alt=\"No-code GraphQL Server Using Hasura and PostgreSQL\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh6.googleusercontent.com\/WnVXITAka219EKZrvTb0lqrWxInoHjK3YJz3wHkSRgWDxmmnfBNOL-ZtjmW74lo-8BKk_529STr43kHDFj7EuWy_6U1NqtrwMQE-G_Gz0CvSrMBDaLc48vcIPsv82QR20_RFFXKUYUpRqOnfaDMgOqI\" alt=\"\"\/><\/figure>\n\n\n\n<p><em>Note: Make sure that you track all foreign key relationships of your schema as well.<\/em><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img src=\"https:\/\/lh4.googleusercontent.com\/Ybuf72Bvg8CIgZyYuMbuO7DwLUSbZlLSCzW8JSgc4uTKgBikvgVlBrJ8IerwRQwN6bcJ7G3ZUQnYi_iVwtWczYqQlp3Blo79GAkqL0CqJIHLAqHxtf9qCGyxjQSKqg2_G6T2LEsOo4cjxNn07EiZx9s\" alt=\"\"\/><\/figure>\n\n\n\n<h2>Conclusion<\/h2>\n\n\n\n<p class=\"has-text-align-justify\">In this blog, we demonstrated how we can create a no-code Hasura GraphQL server using the PostgreSQL database. We also learned how we can use the Hasura GUI to configure the GraphQL server. Configuration can also be alternatively done using the <strong>docker-compose.yml<\/strong> file.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">This may be an advantage to those who want to switch from REST to GraphQL without adding more configurations to the underlying architecture. It may also be a good option for those who are considering a serverless architecture because Hasura is stateless.&nbsp;<\/p>\n\n\n\n<p class=\"has-text-align-justify\">In future blogs, we shall look at how we can secure a Hasura GraphQL server. We will come up with more such use cases in our upcoming blogs.<\/p>\n\n\n\n<p><strong>Meanwhile\u2026<\/strong><\/p>\n\n\n\n<p class=\"has-text-align-justify\">If you are a Backend Developer and want to explore more about the above topics, here are a few of our blogs for your reference:<\/p>\n\n\n\n<ul><li><a href=\"https:\/\/www.workfall.com\/learning\/blog\/how-to-connect-to-mysql-database-and-run-crud-operations-in-node-js\/\">How to connect to MySQL database and run CRUD operations in Node.js?<\/a><\/li><li><a href=\"https:\/\/www.workfall.com\/learning\/blog\/how-to-create-a-rest-api-with-rust-rocket-framework-and-diesel-middleware-with-postgresql-database\/\">How to Create a REST API with Rust Rocket Framework and Diesel Middleware with PostgreSQL Database?<\/a><\/li><li><a href=\"https:\/\/www.workfall.com\/learning\/blog\/how-to-migrate-rds-mysql-database-to-rds-postgresql-database-using-aws-database-migration-servicedms\/\">How to migrate RDS MySQL database to RDS PostgreSQL database using AWS Database Migration Service(DMS)?<\/a><\/li><\/ul>\n\n\n\n<p>Stay tuned to get all the updates about our upcoming blogs on the cloud and the latest technologies.<\/p>\n\n\n\n<p><strong>Keep Exploring -&gt; Keep Learning -&gt; Keep Mastering&nbsp;<\/strong><\/p>\n\n\n\n<p class=\"has-text-align-justify\">At <a href=\"https:\/\/www.workfall.com\/\">Workfall<\/a>, we strive to provide the best tech and pay opportunities to kickass coders around the world. If you\u2019re looking to work with global clients, build cutting-edge products, and make big bucks doing so, give it a shot at <a href=\"https:\/\/www.workfall.com\/partner\/\">workfall.com\/partner<\/a> today!<\/p>\n\n\n<style type=\"text\/css\"><\/style><section id='' \n                class='helpie-faq accordions faq-toggle open-first groupSettings-500__enabled' \n                data-collection='' \n                data-pagination='0' \n                data-search='0' \n                data-pagination-enabled='0'\n                role='region'\n                aria-label='FAQ Section'\n                aria-live='polite'><h3 class=\"collection-title\">Frequently Asked Questions:<\/h3><article class=\"accordion \"><div class='helpie-faq-row'><div class='helpie-faq-col helpie-faq-col-12' ><ul><li class=\"accordion__item \"><div class=\"accordion__header \" \r\n                id=\"accordion-header-post-2801\"\r\n                role=\"button\"\r\n                aria-expanded=\"false\"\r\n                aria-controls=\"accordion-content-post-2801\"\r\n                data-id=\"post-2801\" \r\n                data-item=\"hfaq-post-2801\" \r\n                style=\"background:transparent;\" \r\n                data-tags=\"\"\r\n                tabindex=\"0\"><div class=\"accordion__title\">Q: What does \u201cno-code\u201d mean in the context of Hasura + GraphQL?<\/div><\/div><div id=\"accordion-content-post-2801\" \r\n                class=\"accordion__body\" \r\n                role=\"region\"\r\n                aria-labelledby=\"accordion-header-post-2801\"\r\n                style=\"background:transparent;\"><p><span class=\"rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Reading Time: <\/span> <span class=\"rt-time\">7<\/span> <span class=\"rt-label rt-postfix\">minutes<\/span><\/span><span style=\"font-weight: 400\"><strong>A:<\/strong> It means that you can spin up a GraphQL API without writing resolvers or server logic manually. Hasura introspects your PostgreSQL database schema, auto-generates queries, mutations, and real-time subscriptions, and provides a GUI to manage tables\/relationships.<\/span><span style=\"font-weight: 400\"><br \/>\n<\/span><\/p>\n<\/div><\/li><li class=\"accordion__item \"><div class=\"accordion__header \" \r\n                id=\"accordion-header-post-2802\"\r\n                role=\"button\"\r\n                aria-expanded=\"false\"\r\n                aria-controls=\"accordion-content-post-2802\"\r\n                data-id=\"post-2802\" \r\n                data-item=\"hfaq-post-2802\" \r\n                style=\"background:transparent;\" \r\n                data-tags=\"\"\r\n                tabindex=\"0\"><div class=\"accordion__title\">Q: How do I get started with Hasura + PostgreSQL in this tutorial?<\/div><\/div><div id=\"accordion-content-post-2802\" \r\n                class=\"accordion__body\" \r\n                role=\"region\"\r\n                aria-labelledby=\"accordion-header-post-2802\"\r\n                style=\"background:transparent;\"><p><span class=\"rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Reading Time: <\/span> <span class=\"rt-time\">7<\/span> <span class=\"rt-label rt-postfix\">minutes<\/span><\/span><span style=\"font-weight: 400\"><strong>A:<\/strong> Use Docker (or docker-compose) to run Hasura, connect to a PostgreSQL database (locally or via a service like ElephantSQL), then use Hasura\u2019s dashboard to track tables, create or define relationships, and explore GraphQL operations via GraphiQL.<\/span><\/p>\n<\/div><\/li><li class=\"accordion__item \"><div class=\"accordion__header \" \r\n                id=\"accordion-header-post-2803\"\r\n                role=\"button\"\r\n                aria-expanded=\"false\"\r\n                aria-controls=\"accordion-content-post-2803\"\r\n                data-id=\"post-2803\" \r\n                data-item=\"hfaq-post-2803\" \r\n                style=\"background:transparent;\" \r\n                data-tags=\"\"\r\n                tabindex=\"0\"><div class=\"accordion__title\">Q: What kinds of operations does Hasura support out of the box?<\/div><\/div><div id=\"accordion-content-post-2803\" \r\n                class=\"accordion__body\" \r\n                role=\"region\"\r\n                aria-labelledby=\"accordion-header-post-2803\"\r\n                style=\"background:transparent;\"><p><span class=\"rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Reading Time: <\/span> <span class=\"rt-time\">7<\/span> <span class=\"rt-label rt-postfix\">minutes<\/span><\/span><span style=\"font-weight: 400\"><strong>A:<\/strong> Hasura provides full CRUD (Create, Read, Update, Delete) via GraphQL, relationship-based nested queries, mutations, and real-time features. You can also define or track foreign key relationships so querying across tables works smoothly.<\/span><span style=\"font-weight: 400\"><br \/>\n<\/span><\/p>\n<\/div><\/li><li class=\"accordion__item \"><div class=\"accordion__header \" \r\n                id=\"accordion-header-post-2804\"\r\n                role=\"button\"\r\n                aria-expanded=\"false\"\r\n                aria-controls=\"accordion-content-post-2804\"\r\n                data-id=\"post-2804\" \r\n                data-item=\"hfaq-post-2804\" \r\n                style=\"background:transparent;\" \r\n                data-tags=\"\"\r\n                tabindex=\"0\"><div class=\"accordion__title\">Q: How does tracking existing tables or relationships work?<\/div><\/div><div id=\"accordion-content-post-2804\" \r\n                class=\"accordion__body\" \r\n                role=\"region\"\r\n                aria-labelledby=\"accordion-header-post-2804\"\r\n                style=\"background:transparent;\"><p><span class=\"rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Reading Time: <\/span> <span class=\"rt-time\">7<\/span> <span class=\"rt-label rt-postfix\">minutes<\/span><\/span><span style=\"font-weight: 400\"><strong>A:<\/strong> If your database already has tables, you can use the \u201cUntracked Tables or Views\u201d section in Hasura\u2019s UI to track them, so they become part of the GraphQL schema. Similarly, you can establish foreign key relationships so GraphQL queries can traverse them.<\/span><span style=\"font-weight: 400\"><br \/>\n<\/span><\/p>\n<\/div><\/li><li class=\"accordion__item \"><div class=\"accordion__header \" \r\n                id=\"accordion-header-post-2805\"\r\n                role=\"button\"\r\n                aria-expanded=\"false\"\r\n                aria-controls=\"accordion-content-post-2805\"\r\n                data-id=\"post-2805\" \r\n                data-item=\"hfaq-post-2805\" \r\n                style=\"background:transparent;\" \r\n                data-tags=\"\"\r\n                tabindex=\"0\"><div class=\"accordion__title\">A: What are the pros and potential trade-offs of using Hasura?<\/div><\/div><div id=\"accordion-content-post-2805\" \r\n                class=\"accordion__body\" \r\n                role=\"region\"\r\n                aria-labelledby=\"accordion-header-post-2805\"\r\n                style=\"background:transparent;\"><p><span class=\"rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Reading Time: <\/span> <span class=\"rt-time\">7<\/span> <span class=\"rt-label rt-postfix\">minutes<\/span><\/span><\/p>\n<ol>\n<li style=\"font-weight: 400\"><b>Pros:<\/b><b>\n<p><\/b><\/li>\n<\/ol>\n<ul>\n<li><span style=\"font-weight: 400\">Fast setup; minimal server code.<\/span><span style=\"font-weight: 400\">\n<p><\/span><\/li>\n<li><span style=\"font-weight: 400\">GUI for schema management.<\/span><span style=\"font-weight: 400\">\n<p><\/span><\/li>\n<li><span style=\"font-weight: 400\">Real-time GraphQL operations and live queries\/subscriptions.<\/span><span style=\"font-weight: 400\"><br \/>\n<\/span> <b>Trade-offs \/ Considerations:<\/b><b><\/p>\n<p><\/b><\/li>\n<li><span style=\"font-weight: 400\">Less flexibility for very custom business logic (you may need remote schemas or actions).<\/span><span style=\"font-weight: 400\">\n<p><\/span><\/li>\n<li><span style=\"font-weight: 400\">Security &amp; authorization need to be properly configured externally or via Hasura features.<\/span><span style=\"font-weight: 400\">\n<p><\/span><\/li>\n<li><span style=\"font-weight: 400\">The free \/ tiny database tiers may have performance or size limitations.<\/span><\/li>\n<\/ul>\n<\/div><\/li><\/ul><\/div><\/div><\/article><\/section>\n","protected":false},"excerpt":{"rendered":"<p><span class=\"rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Reading Time: <\/span> <span class=\"rt-time\">7<\/span> <span class=\"rt-label rt-postfix\">minutes<\/span><\/span> To handle CRUD, authorization, and business logic, backend developers frequently need to write several lines of code. All of this code must be tested, debugged, and maintained for the duration of the project. This consumes a significant amount of time that developers could be used to create new features. This blog will demonstrate to you [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1681,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"spay_email":""},"categories":[288],"tags":[372,423,27,15,422,164,420,421,51,6],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.1 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Create a No-code GraphQL Server Using Hasura and PostgreSQL - The Workfall Blog<\/title>\n<meta name=\"description\" content=\"Hasura GraphQL Engine &amp; PostgreSQL databases are revolutionizing the speed of backend creation for mobile &amp; web apps, with no coding required\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Create a No-code GraphQL Server Using Hasura and PostgreSQL - The Workfall Blog\" \/>\n<meta property=\"og:description\" content=\"Hasura GraphQL Engine &amp; PostgreSQL databases are revolutionizing the speed of backend creation for mobile &amp; web apps, with no coding required\" \/>\n<meta property=\"og:url\" content=\"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/\" \/>\n<meta property=\"og:site_name\" content=\"The Workfall Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/facebook.com\/workfall\" \/>\n<meta property=\"article:published_time\" content=\"2023-03-28T10:38:44+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-09-19T03:58:46+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/03\/Cover-Images_Part2-1-3.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@workfall\" \/>\n<meta name=\"twitter:site\" content=\"@workfall\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Workfall\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/#organization\",\"name\":\"Workfall - Hire #Kickass Coders On Demand\",\"url\":\"https:\/\/learning.workfall.com\/learning\/blog\/\",\"sameAs\":[\"https:\/\/www.instagram.com\/workfall\/\",\"https:\/\/www.linkedin.com\/company\/workfall\/\",\"https:\/\/facebook.com\/workfall\",\"https:\/\/twitter.com\/workfall\"],\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/i1.wp.com\/18.141.20.153\/learning\/blog\/wp-content\/uploads\/2021\/10\/cropped-WF_logo.png?fit=400%2C400\",\"contentUrl\":\"https:\/\/i1.wp.com\/18.141.20.153\/learning\/blog\/wp-content\/uploads\/2021\/10\/cropped-WF_logo.png?fit=400%2C400\",\"width\":400,\"height\":400,\"caption\":\"Workfall - Hire #Kickass Coders On Demand\"},\"image\":{\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/#website\",\"url\":\"https:\/\/learning.workfall.com\/learning\/blog\/\",\"name\":\"The Workfall Blog\",\"description\":\"#Tech #Remote #Jobs\",\"publisher\":{\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/learning.workfall.com\/learning\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#primaryimage\",\"url\":\"https:\/\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/03\/Cover-Images_Part2-1-3.png\",\"contentUrl\":\"https:\/\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/03\/Cover-Images_Part2-1-3.png\",\"width\":1200,\"height\":628,\"caption\":\"No-code GraphQL Server Using Hasura and PostgreSQL\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#webpage\",\"url\":\"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/\",\"name\":\"Create a No-code GraphQL Server Using Hasura and PostgreSQL - The Workfall Blog\",\"isPartOf\":{\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#primaryimage\"},\"datePublished\":\"2023-03-28T10:38:44+00:00\",\"dateModified\":\"2025-09-19T03:58:46+00:00\",\"description\":\"Hasura GraphQL Engine & PostgreSQL databases are revolutionizing the speed of backend creation for mobile & web apps, with no coding required\",\"breadcrumb\":{\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/learning.workfall.com\/learning\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create a No-code GraphQL Server Using Hasura and PostgreSQL\"}]},{\"@type\":\"Article\",\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#webpage\"},\"author\":{\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/#\/schema\/person\/cab8236044692bc5b27606b13167794a\"},\"headline\":\"Create a No-code GraphQL Server Using Hasura and PostgreSQL\",\"datePublished\":\"2023-03-28T10:38:44+00:00\",\"dateModified\":\"2025-09-19T03:58:46+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#webpage\"},\"wordCount\":1365,\"publisher\":{\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/03\/Cover-Images_Part2-1-3.png\",\"keywords\":[\"backend\",\"CRUD\",\"Database\",\"docker\",\"ElephantSQL\",\"graphql\",\"Hasura\",\"NoCode\",\"postgresql\",\"workfall\"],\"articleSection\":[\"Backend Development\"],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/#\/schema\/person\/cab8236044692bc5b27606b13167794a\",\"name\":\"Workfall\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/learning.workfall.com\/learning\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/09\/avatar_user_1_1693914404-96x96.png\",\"contentUrl\":\"https:\/\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/09\/avatar_user_1_1693914404-96x96.png\",\"caption\":\"Workfall\"},\"sameAs\":[\"https:\/\/www.workfall.com\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Create a No-code GraphQL Server Using Hasura and PostgreSQL - The Workfall Blog","description":"Hasura GraphQL Engine & PostgreSQL databases are revolutionizing the speed of backend creation for mobile & web apps, with no coding required","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/","og_locale":"en_US","og_type":"article","og_title":"Create a No-code GraphQL Server Using Hasura and PostgreSQL - The Workfall Blog","og_description":"Hasura GraphQL Engine & PostgreSQL databases are revolutionizing the speed of backend creation for mobile & web apps, with no coding required","og_url":"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/","og_site_name":"The Workfall Blog","article_publisher":"https:\/\/facebook.com\/workfall","article_published_time":"2023-03-28T10:38:44+00:00","article_modified_time":"2025-09-19T03:58:46+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/03\/Cover-Images_Part2-1-3.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_creator":"@workfall","twitter_site":"@workfall","twitter_misc":{"Written by":"Workfall","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Organization","@id":"https:\/\/learning.workfall.com\/learning\/blog\/#organization","name":"Workfall - Hire #Kickass Coders On Demand","url":"https:\/\/learning.workfall.com\/learning\/blog\/","sameAs":["https:\/\/www.instagram.com\/workfall\/","https:\/\/www.linkedin.com\/company\/workfall\/","https:\/\/facebook.com\/workfall","https:\/\/twitter.com\/workfall"],"logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/learning.workfall.com\/learning\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/i1.wp.com\/18.141.20.153\/learning\/blog\/wp-content\/uploads\/2021\/10\/cropped-WF_logo.png?fit=400%2C400","contentUrl":"https:\/\/i1.wp.com\/18.141.20.153\/learning\/blog\/wp-content\/uploads\/2021\/10\/cropped-WF_logo.png?fit=400%2C400","width":400,"height":400,"caption":"Workfall - Hire #Kickass Coders On Demand"},"image":{"@id":"https:\/\/learning.workfall.com\/learning\/blog\/#\/schema\/logo\/image\/"}},{"@type":"WebSite","@id":"https:\/\/learning.workfall.com\/learning\/blog\/#website","url":"https:\/\/learning.workfall.com\/learning\/blog\/","name":"The Workfall Blog","description":"#Tech #Remote #Jobs","publisher":{"@id":"https:\/\/learning.workfall.com\/learning\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/learning.workfall.com\/learning\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#primaryimage","url":"https:\/\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/03\/Cover-Images_Part2-1-3.png","contentUrl":"https:\/\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/03\/Cover-Images_Part2-1-3.png","width":1200,"height":628,"caption":"No-code GraphQL Server Using Hasura and PostgreSQL"},{"@type":"WebPage","@id":"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#webpage","url":"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/","name":"Create a No-code GraphQL Server Using Hasura and PostgreSQL - The Workfall Blog","isPartOf":{"@id":"https:\/\/learning.workfall.com\/learning\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#primaryimage"},"datePublished":"2023-03-28T10:38:44+00:00","dateModified":"2025-09-19T03:58:46+00:00","description":"Hasura GraphQL Engine & PostgreSQL databases are revolutionizing the speed of backend creation for mobile & web apps, with no coding required","breadcrumb":{"@id":"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/learning.workfall.com\/learning\/blog\/"},{"@type":"ListItem","position":2,"name":"Create a No-code GraphQL Server Using Hasura and PostgreSQL"}]},{"@type":"Article","@id":"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#article","isPartOf":{"@id":"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#webpage"},"author":{"@id":"https:\/\/learning.workfall.com\/learning\/blog\/#\/schema\/person\/cab8236044692bc5b27606b13167794a"},"headline":"Create a No-code GraphQL Server Using Hasura and PostgreSQL","datePublished":"2023-03-28T10:38:44+00:00","dateModified":"2025-09-19T03:58:46+00:00","mainEntityOfPage":{"@id":"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#webpage"},"wordCount":1365,"publisher":{"@id":"https:\/\/learning.workfall.com\/learning\/blog\/#organization"},"image":{"@id":"https:\/\/learning.workfall.com\/learning\/blog\/create-a-no-code-graphql-server-using-hasura-and-postgresql\/#primaryimage"},"thumbnailUrl":"https:\/\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/03\/Cover-Images_Part2-1-3.png","keywords":["backend","CRUD","Database","docker","ElephantSQL","graphql","Hasura","NoCode","postgresql","workfall"],"articleSection":["Backend Development"],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/learning.workfall.com\/learning\/blog\/#\/schema\/person\/cab8236044692bc5b27606b13167794a","name":"Workfall","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/learning.workfall.com\/learning\/blog\/#\/schema\/person\/image\/","url":"https:\/\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/09\/avatar_user_1_1693914404-96x96.png","contentUrl":"https:\/\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/09\/avatar_user_1_1693914404-96x96.png","caption":"Workfall"},"sameAs":["https:\/\/www.workfall.com"]}]}},"jetpack_featured_media_url":"https:\/\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/03\/Cover-Images_Part2-1-3.png","jetpack-related-posts":[{"id":1684,"url":"https:\/\/learning.workfall.com\/learning\/blog\/building-real-time-apps-with-nestjs-and-graphql-subscriptions\/","url_meta":{"origin":1680,"position":0},"title":"Building Real-Time Apps with NestJS and GraphQL Subscriptions","date":"April 6, 2023","format":false,"excerpt":"Real-time applications are important in several instances. Especially in a scenario whereby immediate feedback is important such as messaging apps and IoT apps. Let\u2019s imagine a case in IoT whereby a smoke detector needs to relay information to water sprinklers in a burning building. This information has to be in\u2026","rel":"","context":"In &quot;Backend Development&quot;","img":{"alt_text":"Building Real-Time Apps with NestJS and GraphQL Subscriptions","src":"https:\/\/i1.wp.com\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/04\/Cover-Images_Part2-1.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":1671,"url":"https:\/\/learning.workfall.com\/learning\/blog\/use-surrealdb-to-persist-data-with-rocket-rest-api\/","url_meta":{"origin":1680,"position":1},"title":"Use SurrealDB to Persist Data with Rocket REST API","date":"March 21, 2023","format":false,"excerpt":"Databases are essential in web development for organizing data in various forms and shapes (both structured and unstructured). Their ultimate goal is for the stored data to be easily retrievable, updated, queried, and generally administered via a graphical user interface (GUI), dashboard, or even command line interface (CLI). We can\u2026","rel":"","context":"In &quot;Backend Development&quot;","img":{"alt_text":"SurrealDB","src":"https:\/\/i2.wp.com\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/03\/Cover-Images_Part2-1-2.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":1518,"url":"https:\/\/learning.workfall.com\/learning\/blog\/how-to-create-a-rest-api-with-rust-rocket-framework-and-diesel-middleware-with-postgresql-database\/","url_meta":{"origin":1680,"position":2},"title":"How to Create a REST API with Rust Rocket Framework and Diesel Middleware with PostgreSQL Database?","date":"November 22, 2022","format":false,"excerpt":"For many years, C and C++ have been the main low-level programming languages. C and C++ require manual deallocation of memory to prevent memory leaks which are the major cause of security breaches in Software. Rust comes in to offer memory safety and at the same time speed of execution\u2026","rel":"","context":"In &quot;Backend Development&quot;","img":{"alt_text":"How to Create a REST API with Rust Rocket Framework and Diesel Middleware with PostgreSQL Database?","src":"https:\/\/i2.wp.com\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2022\/11\/Cover-Images_Part2-1-1.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":1689,"url":"https:\/\/learning.workfall.com\/learning\/blog\/supercharge-your-react-app-with-real-time-graphql-subscriptions-apollo-client\/","url_meta":{"origin":1680,"position":3},"title":"Supercharge Your React App with Real-Time GraphQL Subscriptions & Apollo Client","date":"April 18, 2023","format":false,"excerpt":"Modern applications are getting more real-time. Notification updates, chat messaging applications, and financial market updates are all examples of real-time updates in online apps. With a feature called subscriptions, GraphQL makes it simple to create apps with low latency, and real-time updates. In this blog, we will discuss: PollingWebSocketsGraphQL SubscriptionsApollo\u2026","rel":"","context":"In &quot;Backend Development&quot;","img":{"alt_text":"Supercharge Your React App with Real-Time GraphQL Subscriptions & Apollo Client","src":"https:\/\/i1.wp.com\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2023\/04\/Cover-Images_Part2.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":523,"url":"https:\/\/learning.workfall.com\/learning\/blog\/how-to-create-an-api-endpoint-to-provision-a-dynamodb-table-using-aws-appsync-part-1\/","url_meta":{"origin":1680,"position":4},"title":"How to create an API endpoint to provision a DynamoDB table using AWS AppSync? (Part 1)","date":"November 10, 2021","format":false,"excerpt":"AppSync is an AWS-managed GraphQL layer that is built on the benefits of GraphQL and adds a few more cool features to its web and mobile SDKs. AppSync is the best of GraphQL with less complexity than before, which works out great for Serverless applications. You can refer to our\u2026","rel":"","context":"In &quot;AWS Cloud Computing&quot;","img":{"alt_text":"AWS AppSync - Integration with React Application","src":"https:\/\/i0.wp.com\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2021\/11\/CoverImages_1200x628px-1-1.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":221,"url":"https:\/\/learning.workfall.com\/learning\/blog\/how-to-migrate-rds-mysql-database-to-rds-postgresql-database-using-aws-database-migration-servicedms\/","url_meta":{"origin":1680,"position":5},"title":"How to migrate RDS MySQL database to RDS PostgreSQL database using AWS Database Migration Service(DMS)?","date":"October 27, 2021","format":false,"excerpt":"Do you want to migrate data from one type of DB engine (MySQL) to another type of DB engine(PostgreSQL) with little or no downtime? In today's fast-paced environment, application, and database availability must be considered 24 hours a day, seven days a week. Some of your applications may be unable\u2026","rel":"","context":"In &quot;AWS Cloud Computing&quot;","img":{"alt_text":"AWS Database Migration Service","src":"https:\/\/i1.wp.com\/learning.workfall.com\/learning\/blog\/wp-content\/uploads\/2021\/10\/DMS.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]}],"_links":{"self":[{"href":"https:\/\/learning.workfall.com\/learning\/blog\/wp-json\/wp\/v2\/posts\/1680"}],"collection":[{"href":"https:\/\/learning.workfall.com\/learning\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/learning.workfall.com\/learning\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/learning.workfall.com\/learning\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/learning.workfall.com\/learning\/blog\/wp-json\/wp\/v2\/comments?post=1680"}],"version-history":[{"count":3,"href":"https:\/\/learning.workfall.com\/learning\/blog\/wp-json\/wp\/v2\/posts\/1680\/revisions"}],"predecessor-version":[{"id":2807,"href":"https:\/\/learning.workfall.com\/learning\/blog\/wp-json\/wp\/v2\/posts\/1680\/revisions\/2807"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/learning.workfall.com\/learning\/blog\/wp-json\/wp\/v2\/media\/1681"}],"wp:attachment":[{"href":"https:\/\/learning.workfall.com\/learning\/blog\/wp-json\/wp\/v2\/media?parent=1680"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/learning.workfall.com\/learning\/blog\/wp-json\/wp\/v2\/categories?post=1680"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/learning.workfall.com\/learning\/blog\/wp-json\/wp\/v2\/tags?post=1680"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}