{"id":7739,"date":"2021-11-25T20:09:22","date_gmt":"2021-11-25T20:09:22","guid":{"rendered":"https:\/\/max-drake.cc\/?p=7739"},"modified":"2021-11-26T22:59:04","modified_gmt":"2021-11-26T22:59:04","slug":"appgyver-tutorials-exploring-data-sources-airtables-restdb-io-firebase-google-sheets-via-sheet-best-odata-integration","status":"publish","type":"post","link":"https:\/\/max-drake.cc\/?p=7739","title":{"rendered":"AppGyver tutorials exploring data sources,  airtables, restDB.io, Firebase, Google Sheets (via Sheet.best) &#038; oData integration"},"content":{"rendered":"\n<p>I typed in tutorial for AppGyver and this one popped up. As Glideapps are looking to use Airtable as a backend, and I have an Airtable account I thought I&#8217;d give it a crack. <\/p>\n\n\n\n<h3 class=\"has-luminous-vivid-amber-background-color has-background wp-block-heading\">Creating Dataset in Airtables and calling it in AppGyver<\/h3>\n\n\n\n<p>It uses rest api calls to Airtable to get the information, so that is a useful tool to learn. On with the tutorial<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"AppGyver + AirTable: How To Build An App | AppGyver Tutorial for Beginners 2021\" width=\"678\" height=\"381\" data-src=\"https:\/\/www.youtube.com\/embed\/bsQeQnOpMro?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" data-load-mode=\"1\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>A good tutorial, I was able to follow along pretty well, a couple of parts he was quite fast over but I got there. <\/p>\n\n\n\n<p>I added a couple of columns later Like tickbox &amp; Rating 1to 5. I was able to add these to the schema and so get access to the fields but couldn&#8217;t create a drag\/drop item that would access the boolean one (like). Apparently images are a challenge too. <\/p>\n\n\n\n<figure class=\"wp-block-gallery columns-2 is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><img decoding=\"async\" width=\"839\" height=\"1024\" data-src=\"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-839x1024.jpg\" alt=\"\" data-id=\"7744\" data-full-url=\"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1.jpg\" data-link=\"https:\/\/max-drake.cc\/?attachment_id=7744\" class=\"wp-image-7744 lazyload\" data-srcset=\"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-839x1024.jpg 839w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-246x300.jpg 246w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-768x937.jpg 768w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-50x61.jpg 50w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-41x50.jpg 41w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-100x122.jpg 100w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-82x100.jpg 82w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-524x640.jpg 524w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-640x781.jpg 640w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-629x768.jpg 629w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-1024x1250.jpg 1024w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-885x1080.jpg 885w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1.jpg 1076w\" data-sizes=\"(max-width: 839px) 100vw, 839px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 839px; --smush-placeholder-aspect-ratio: 839\/1024;\" \/><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img decoding=\"async\" width=\"770\" height=\"1024\" data-src=\"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1-770x1024.jpg\" alt=\"\" data-id=\"7745\" data-full-url=\"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1.jpg\" data-link=\"https:\/\/max-drake.cc\/?attachment_id=7745\" class=\"wp-image-7745 lazyload\" data-srcset=\"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1-770x1024.jpg 770w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1-226x300.jpg 226w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1-768x1021.jpg 768w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1-50x66.jpg 50w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1-38x50.jpg 38w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1-100x133.jpg 100w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1-75x100.jpg 75w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1-481x640.jpg 481w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1-640x851.jpg 640w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1-577x768.jpg 577w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1-1024x1362.jpg 1024w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1-812x1080.jpg 812w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-09-58-64_9e80c54808f362c192751ed39813e577-1.jpg 1073w\" data-sizes=\"(max-width: 770px) 100vw, 770px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 770px; --smush-placeholder-aspect-ratio: 770\/1024;\" \/><\/figure><\/li><\/ul><\/figure>\n\n\n\n<p>This was a tutorial on pulling data. You&#8217;d need to create a form to capture and update a field. I may investigate that later. <\/p>\n\n\n\n<h2 class=\"has-luminous-vivid-amber-background-color has-background wp-block-heading\">Todo list tutorial- trying to link- no success with restDB.io, AppGyver Cloud Storage &amp; On-Device Storage<\/h2>\n\n\n\n<p>I then tried the Todo list tutorial  from James NoCode but ran into problems with the restDB.io call. His video was pretty swift on the dB seup but I worked through and got that running, and when I did a get items request in the browser it worked fine, but when trying to test it in AppGyver it just said error. I couldn&#8217;t seem to fix that<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"AppGyver Making A Simple ToDo App with REST JSON API | AppGyver  Tutorial for Beginners\" width=\"678\" height=\"381\" data-src=\"https:\/\/www.youtube.com\/embed\/GpCypTISDBg?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" data-load-mode=\"1\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>I was considering trying to use that tutorial to update the Movies with airtable and would like to be able to add an item to the airtable list later. <\/p>\n\n\n\n<p>I came across this todo list tutorial from AppGyver and it uses a different data source,  an AppGyver cloud storage, but I don&#8217;t seem to have that resource on the free community version. <\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"AppGyver - Creating a No-code Todo App\" width=\"678\" height=\"381\" data-src=\"https:\/\/www.youtube.com\/embed\/HEqK2duu2QA?list=PLV9VMatP3XOgQiCupR9YsRSiWs7TLr7E3\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" data-load-mode=\"1\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>At the end I couldn&#8217;t get the connection to work with restDB.io and the  AppGyver cloud storage  is not available on the free community version.<\/p>\n\n\n\n<p>I also tried making an On Device Storage but that kept crashing, I&#8217;m not sure why. Maybe for a Web App it doesn&#8217;t like it. Something to investigate later<\/p>\n\n\n\n<h3 class=\"has-luminous-vivid-amber-background-color has-background wp-block-heading\">Google Sheets Link as Rest API<\/h3>\n\n\n\n<p>I wondered about linking to Google sheets, as that is where a lot of my GlideApps are pushing created data, so it would be interesting if I could link to that. <\/p>\n\n\n\n<p>My initial explore was to use a Google cloud service with an API but that was getting painful trying to set up. <\/p>\n\n\n\n<p>The next attempt was via the method in the video below:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"Using Google Spreadsheets as an API in under 4 minutes!\" width=\"678\" height=\"509\" data-src=\"https:\/\/www.youtube.com\/embed\/MDKph2XhqXc?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" data-load-mode=\"1\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>This looked like a nice simple method, but when I tried it with the structure he suggests: <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>spreadsheets.google.com\/feeds\/worksheets\/spreadsheetID\/public\/basic?alt=json<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"420\" data-src=\"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-25-11_46_07-Page-not-found-\u2014-Mozilla-Firefox-1024x420.jpg\" alt=\"\" class=\"wp-image-7750 lazyload\" data-srcset=\"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-25-11_46_07-Page-not-found-\u2014-Mozilla-Firefox-1024x420.jpg 1024w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-25-11_46_07-Page-not-found-\u2014-Mozilla-Firefox-300x123.jpg 300w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-25-11_46_07-Page-not-found-\u2014-Mozilla-Firefox-768x315.jpg 768w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-25-11_46_07-Page-not-found-\u2014-Mozilla-Firefox-1536x631.jpg 1536w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-25-11_46_07-Page-not-found-\u2014-Mozilla-Firefox-50x21.jpg 50w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-25-11_46_07-Page-not-found-\u2014-Mozilla-Firefox-122x50.jpg 122w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-25-11_46_07-Page-not-found-\u2014-Mozilla-Firefox-100x41.jpg 100w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-25-11_46_07-Page-not-found-\u2014-Mozilla-Firefox-244x100.jpg 244w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-25-11_46_07-Page-not-found-\u2014-Mozilla-Firefox-1559x640.jpg 1559w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-25-11_46_07-Page-not-found-\u2014-Mozilla-Firefox-640x263.jpg 640w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-25-11_46_07-Page-not-found-\u2014-Mozilla-Firefox-scaled.jpg 1600w\" data-sizes=\"(max-width: 1024px) 100vw, 1024px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1024px; --smush-placeholder-aspect-ratio: 1024\/420;\" \/><\/figure>\n\n\n\n<p>The video was recorded in March 2020 so that is superseded now and you have to use a different API and so I had to try and make a different Google account and that required a website and it ddidn&#8217;t like my website so it rejected allowing me an account. <\/p>\n\n\n\n<p>I then saw this video that uses <strong><a rel=\"noreferrer noopener\" href=\"https:\/\/sheet.best\/\" target=\"_blank\">sheet.best <\/a><\/strong>that allows you to link to a google sheet:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"Turn a Google SpreadSheet into a REST API\" width=\"678\" height=\"381\" data-src=\"https:\/\/www.youtube.com\/embed\/PM6S27tCvio?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" data-load-mode=\"1\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>So I can now get to the api and I can generate a test inside AppGyver but I can&#8217;t get a single field out of the row of data ferom the spreadsheet. So I can get a row by putting \/1 , \/2 \/3 (to get 2nd, 3rd, 4th) rows of data out but I can&#8217;t seem to get into the next part, so \/1\/2, or \/1[1].1 or other variations, it just won&#8217;t return me anything.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;{\"0\":\"Sht 3-GlideApps\",\"1\":\"49\",\"2\":\"48,227\",\"3\":\"\",\"4\":\"48,227\",\"5\":\"0\",\"6\":\"\",\"7\":\"48,227\",\"8\":\"60.08%\"}]<\/code><\/pre>\n\n\n\n<p>I&#8217;ve been looking up JSON calls and of course its all in JS so that is code verbose. I just can&#8217;t seem to get the syntax right for accessing the data. As its all numbers that seems to make getting info more difficult. <\/p>\n\n\n\n<p>I just keep on getting something similar to below:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><td><\/td><td><\/td><\/tr><\/thead><tbody><tr><td>detail<\/td><td>&#8220;Wrong format for index: invalid literal for int() with base 10: &#8216;1[0]'&#8221;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>So after wasting a few hours on this I&#8217;ll drop it for the time being. I&#8217;m not moving forward. It seems its picking the first sheet and giving me the row info but I can&#8217;t drill any further down. For another day.<\/p>\n\n\n\n<h2 class=\"has-luminous-vivid-amber-background-color has-background wp-block-heading\">FireStore ToDo list<\/h2>\n\n\n\n<p>The video below is for setting up Firestore as backend. You have to setup a connector for a web app and android app separately and an iOS app separately as well. I set it up like this but it didn&#8217;t work, so I went back to CodeRed videos that used a RestAPI setting for the firebase instead<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"How To Set Up Appgyver And Firebase - The New Connector\" width=\"678\" height=\"381\" data-src=\"https:\/\/www.youtube.com\/embed\/432nfbVk1hc?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" data-load-mode=\"1\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>The codeRed video playlist:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"Appgyver \/ Firebase CRUD - 4 Create Todo in Appgyver\" width=\"678\" height=\"381\" data-src=\"https:\/\/www.youtube.com\/embed\/t7PqZYvJhe4?list=PLt7u_y_QC1noJ_HkNhCm-r32usYvKazqf\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" data-load-mode=\"1\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<h3 class=\"has-luminous-vivid-amber-background-color has-background wp-block-heading\">oData integration<\/h3>\n\n\n\n<p>Basic <strong><a rel=\"noreferrer noopener\" href=\"https:\/\/www.odata.org\/getting-started\/basic-tutorial\/\" target=\"_blank\">oData tutorial page<\/a><\/strong> to show how it works with TripPin data API. This is good for inside companies where you want people to access part of a general DB , only a few tables say, with a pre-setup API. So good for SAP &amp; Microsoft and other corporate providers. <\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><img decoding=\"async\" width=\"1015\" height=\"730\" data-src=\"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-07_52_13-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1.jpg\" alt=\"\" class=\"wp-image-7768 lazyload\" data-srcset=\"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-07_52_13-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1.jpg 1015w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-07_52_13-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-300x216.jpg 300w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-07_52_13-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-768x552.jpg 768w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-07_52_13-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-50x36.jpg 50w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-07_52_13-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-70x50.jpg 70w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-07_52_13-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-100x72.jpg 100w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-07_52_13-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-139x100.jpg 139w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-07_52_13-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-890x640.jpg 890w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-07_52_13-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-640x460.jpg 640w\" data-sizes=\"(max-width: 1015px) 100vw, 1015px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1015px; --smush-placeholder-aspect-ratio: 1015\/730;\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><img decoding=\"async\" width=\"1015\" height=\"767\" data-src=\"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_35-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1.jpg\" alt=\"\" class=\"wp-image-7769 lazyload\" data-srcset=\"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_35-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1.jpg 1015w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_35-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-300x227.jpg 300w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_35-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-768x580.jpg 768w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_35-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-50x38.jpg 50w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_35-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-66x50.jpg 66w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_35-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-100x76.jpg 100w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_35-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-132x100.jpg 132w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_35-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-847x640.jpg 847w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_35-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-640x484.jpg 640w\" data-sizes=\"(max-width: 1015px) 100vw, 1015px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1015px; --smush-placeholder-aspect-ratio: 1015\/767;\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img decoding=\"async\" width=\"1024\" height=\"736\" data-src=\"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_48-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-1024x736.jpg\" alt=\"\" class=\"wp-image-7770 lazyload\" data-srcset=\"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_48-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-1024x736.jpg 1024w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_48-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-300x216.jpg 300w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_48-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-768x552.jpg 768w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_48-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-50x36.jpg 50w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_48-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-70x50.jpg 70w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_48-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-100x72.jpg 100w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_48-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-139x100.jpg 139w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_48-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-891x640.jpg 891w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_48-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1-640x460.jpg 640w, https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/2021-11-26-08_00_48-Vid-Views-GSheets-_-Composer-Pro-_-platform.appgyver.com-\u2014-Mozilla-Firefox-1.jpg 1062w\" data-sizes=\"(max-width: 1024px) 100vw, 1024px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1024px; --smush-placeholder-aspect-ratio: 1024\/736;\" \/><\/figure>\n\n\n\n<h3 class=\"has-luminous-vivid-amber-background-color has-background wp-block-heading\">End comment 1<\/h3>\n\n\n\n<p>AppGyver can wire up to different data sources but I haven&#8217;t seen a simple file save\/write like AutoHotKey  which is disappointing as if you just wanted to pull a bit of data quickly across or store locally then its not that great. But it is an app so I suppose its got to be accessible in a more general fashion, in which case the best for the simple so far is airtables. <\/p>\n\n\n\n<p>Some of the Connections to data worked, others didn&#8217;t but overall a reasonable amount of options. <\/p>\n\n\n\n<p>A shame I could only get the basic GSheet to work, I&#8217;ll have to think about that. <\/p>\n\n\n\n<p>So there are a few options for Data connections but I need more confidence in connecting and doing basic CRUD operations with them. So more exercises on Data connections. <\/p>\n\n\n\n<p>At the end of a couple of days playing with data sources and looking at a couple of ToDo app tutorials (a bit like &#8220;hello world&#8221;) I still don&#8217;t have a functioning todo app. The only one that actually works is pulling data from Airtable for movie App. <\/p>\n\n\n\n<p>The more I play with AppGyver  the more complicated it is. For a simple no code app glideapps wins hands down, but there is more power at the back of AppGyver  but you have to spend a lot more time to set it up. <\/p>\n\n\n\n<p>In respect to PWA&#8217;s and AppGyver  I think they are both challenging. AppGyver  for a &#8220;NO CODE&#8221; process is pretty complicated and you have to have a good understanding of the logic to get things working. <\/p>\n\n\n\n<p>I like the overall reach of PWA&#8217;s and the idea of building once for all devices. With AppGyver  you&#8217;ve got to build different interfaces for Tablets and Phones and web pages, so a lot more variations. <\/p>\n\n\n\n<p>Overall a semi- successful bit of tutorialing. <\/p>\n\n\n\n<h3 class=\"has-luminous-vivid-amber-background-color has-background wp-block-heading\">End comment 2<\/h3>\n\n\n\n<p>This is a rich featured program but complicated. Why would you move away from glideapps to build an app like this? <\/p>\n\n\n\n<p>I think maybe if you wanted to sell your app in a store then it might be worth getting into to create a serious app for free but there is a big, steep learning curve to it and you&#8217;d have to have pretty clear reasons for getting into it. <\/p>\n\n\n\n<p>I think I&#8217;m hesitant to go further on this at the moment, the reason is maybe PWA&#8217;s are a better avenue. If I&#8217;m going to do complexity then what is the benefit of this over PWA&#8217;s? It hasn&#8217;t shown itself to be reliable so far, with initial start and now focus item not being accessible. Things that should work but don&#8217;t sort of make you uncomfortable. I&#8217;m sure there is a workaround for this (maybe a 3 column repeat element) but it means committing and diving down this rabbit hole. Ok, its &#8220;NO CODE&#8221; but I can code, to a point.<\/p>\n\n\n\n<p>So do I want to learn this? If so, what do I get? At this point I&#8217;m not sure that this is a solution to an issue that I have. <\/p>\n\n\n\n<p>I&#8217;m glad to have explored it and also reviewed the data connectors, but I see no immediate use for it at the moment. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>I typed in tutorial for AppGyver and this one popped up. As Glideapps are looking to use Airtable as a backend, and I have an Airtable account I thought I&#8217;d give it a crack. Creating Dataset in Airtables and calling it in AppGyver It uses rest api calls to Airtable to get the information, so [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":7744,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[204,417,29],"tags":[],"class_list":["post-7739","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-automation","category-mobile","category-web"],"featured_image_src":"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-600x400.jpg","featured_image_src_square":"https:\/\/max-drake.cc\/wp-content\/uploads\/2021\/11\/Screenshot_2021-11-24-15-10-43-92_9e80c54808f362c192751ed39813e577-1-600x600.jpg","author_info":{"display_name":"Max Drake","author_link":"https:\/\/max-drake.cc\/?author=1"},"_links":{"self":[{"href":"https:\/\/max-drake.cc\/index.php?rest_route=\/wp\/v2\/posts\/7739","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/max-drake.cc\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/max-drake.cc\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/max-drake.cc\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/max-drake.cc\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=7739"}],"version-history":[{"count":0,"href":"https:\/\/max-drake.cc\/index.php?rest_route=\/wp\/v2\/posts\/7739\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/max-drake.cc\/index.php?rest_route=\/wp\/v2\/media\/7744"}],"wp:attachment":[{"href":"https:\/\/max-drake.cc\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=7739"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/max-drake.cc\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=7739"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/max-drake.cc\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=7739"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}