- Видео 299
- Просмотров 150 407
ProstDev
Канада
Добавлен 6 ноя 2019
ProstDev provides different levels of expertise and knowledge to those who want to keep up with the IT world. Read our blog or watch our videos to learn more about DevOps, Testing, IoT (Internet of Things), APIs, Sorting Algorithms, Networks, Integration Technologies like MuleSoft, programming languages like DataWeave, Python, Java, or Groovy; software tools like Postman, Azure, Salesforce, NetSuite, Docker, and more!
Not only you can find information about different technologies, we also help you to get started in content creation so you can share your knowledge with the rest of the community. Contact us for more details about contributing, or send us your article for publishing!
Not only you can find information about different technologies, we also help you to get started in content creation so you can share your knowledge with the rest of the community. Contact us for more details about contributing, or send us your article for publishing!
How to upsert fields from an object in an array with the update operator in DataWeave 2.0 | Mule 4
In this video, we'll learn how to use the update operator along with the upsert and conditional options. We'll also learn different ways of handling null values for our fields.
In the article version of this video, you can follow along by clicking on the "Open in Playground" buttons to see how the code is being developed and to try it out yourself!
Article: www.prostdev.com/post/upsert-object-from-array
---
📚 FOLLOW US
Read more posts: www.prostdev.com/blog
Watch more videos: ruclips.net/user/ProstDev
Find my stuff: www.alexmartinez.ca/
Video chapters:
00:00 Intro
00:10 Use case
01:11 map function - Iterate through the array and match the user to update
02:33 update operator - Update each field with...
In the article version of this video, you can follow along by clicking on the "Open in Playground" buttons to see how the code is being developed and to try it out yourself!
Article: www.prostdev.com/post/upsert-object-from-array
---
📚 FOLLOW US
Read more posts: www.prostdev.com/blog
Watch more videos: ruclips.net/user/ProstDev
Find my stuff: www.alexmartinez.ca/
Video chapters:
00:00 Intro
00:10 Use case
01:11 map function - Iterate through the array and match the user to update
02:33 update operator - Update each field with...
Просмотров: 222
Видео
Data Cloud/MuleSoft Integration Part 5: Insert Data with the BULK operations
Просмотров 3513 месяца назад
Hello, hello! By this point, you should already have a full Mule application running in CloudHub and you have been able to call the Query/Streaming operations. In July 2024, I released a new JAR (version 2.1.0) where I added the Bulk operations. Let's take a look at what other updates have been done to this version! 🔗 TUTORIAL www.prostdev.com/post/part-5-data-cloud-mulesoft-integration 💻 REPO ...
How to manually authenticate to Salesforce Data Cloud through a MuleSoft integration
Просмотров 2843 месяца назад
Ok, so I was really trying to just use the Salesforce Data Cloud Connector - Mule 4, but I wasn't able to find the Get All Jobs operation. Because of that, I had two options: 1. To create my own connector to do *just* that operation (which would be deprecated as soon as the operation came out in a new version of the DC connector) 2. To manually authenticate to Data Cloud and call the API using ...
Part 6: CI/CD pipeline with MuleSoft and GitHub Actions - Deploying to CloudHub 2.0
Просмотров 8046 месяцев назад
We already learned how to set up secured properties, MUnit coverage, and even a connected app to authenticate when you're using Multi-Factor Authentication (MFA) in your Anypoint Platform account. From now on, we will continue authenticating using a connected app for best practices. What are we missing then? Well, we haven't learned how to enable the CI/CD pipelines for a CloudHub 2.0 deploymen...
Interactive MuleSoft tutorial: Anypoint Platform API Catalog by Rolando Carrasco | UAPIM | Exchange
Просмотров 3166 месяцев назад
Have you ever wanted to do some interactive tutorials while learning MuleSoft? There are not a lot of options out there for this purpose. However, MuleSoft Ambassador Rolando Carrasco took the time to create one for us! Watch the video or follow through the article to learn how to use this awesome platform called Killercoda to learn more about API Catalog. FOLLOW ROLANDO www.linkedin.com/in/rol...
Exposing DataWeave: Map+Filter vs. Reduce - which is faster?
Просмотров 4217 месяцев назад
I was working on some code that was using both map and filter together and I started thinking if there was a better way to refactor this code to make it more performant. If some milliseconds are a difference for your use case, time your approaches before assuming! 🔗 TUTORIAL www.prostdev.com/post/exposing-dataweave-map-filter-vs-reduce-which-is-faster 📚 FOLLOW US Read more posts: www.prostdev.c...
Data Cloud/MuleSoft Integration Part 4: Secure your API with basic authentication in API Manager
Просмотров 4798 месяцев назад
We already finished our Data Cloud integration with MuleSoft. We have everything deployed and running in CloudHub, and we know how to call this integration to query, insert, or delete records from/to Data Cloud. However, our integration has a fatal flaw: we have no security. In Part 2 of this series, we learned that we should not share the CloudHub URL because everyone had access to our Data Cl...
Data Cloud/MuleSoft Integration Part 3: Call your integration with Postman
Просмотров 5528 месяцев назад
A little bird told me that deleting records in Data Cloud is actually not that easy to do. So, I did my research and came up with a Mule application for you all to reuse to (hopefully) make your lives easier when dealing with Data Cloud! In this third part, we'll learn how to use our integration. We'll use Postman for this article, but you can use any other REST client like Thunder Client, cURL...
Data Cloud/MuleSoft Integration Part 2: Deploy your own Mule app on Anypoint Platform (CloudHub)
Просмотров 7868 месяцев назад
A little bird told me that deleting records in Data Cloud is actually not that easy to do. So, I did my research and came up with a Mule application for you all to reuse to (hopefully) make your lives easier when dealing with Data Cloud! In this second part, we'll go through the MuleSoft side of the integration and you'll deploy your own Mule app to CloudHub. You do not have to know MuleSoft be...
Data Cloud/MuleSoft Integration Part 1: Connected App, Ingestion API, & Data Stream (Salesforce)
Просмотров 1,7 тыс.9 месяцев назад
A little bird told me that deleting records in Data Cloud is actually not that easy to do. So, I did my research and came up with a Mule application for you all to reuse to (hopefully) make your lives easier when dealing with Data Cloud! In this first part, we'll go through the Salesforce/Data Cloud settings that we need to set up before even calling Data Cloud through the Mule app. 🔗 TUTORIAL ...
How to add JVM/Command-line arguments to the Mule 4 Runtime in Anypoint Code Builder (ACB)
Просмотров 4509 месяцев назад
How to add JVM/Command-line arguments to the Mule 4 Runtime in Anypoint Code Builder (ACB)
Export a Mule project as a deployable JAR file in Anypoint Code Builder | #Codetober 2023 Day 31
Просмотров 556Год назад
Export a Mule project as a deployable JAR file in Anypoint Code Builder | #Codetober 2023 Day 31
Differences between the DataWeave extension & Anypoint Code Builder | #Codetober 2023 Day 30
Просмотров 167Год назад
Differences between the DataWeave extension & Anypoint Code Builder | #Codetober 2023 Day 30
Enable Multi-Factor Authentication in MuleSoft with the Salesforce App | #Codetober 2023 Day 29
Просмотров 169Год назад
Enable Multi-Factor Authentication in MuleSoft with the Salesforce App | #Codetober 2023 Day 29
Testing Mule flows with the MUnit recorder in Anypoint Studio | #Codetober 2023 Day 28
Просмотров 375Год назад
Testing Mule flows with the MUnit recorder in Anypoint Studio | #Codetober 2023 Day 28
Using branches in Design Center & Anypoint Code Builder for API specs | #Codetober 2023 Day 27
Просмотров 139Год назад
Using branches in Design Center & Anypoint Code Builder for API specs | #Codetober 2023 Day 27
Using the Transform Message component (DataWeave) in Anypoint Code Builder | #Codetober 2023 Day 26
Просмотров 356Год назад
Using the Transform Message component (DataWeave) in Anypoint Code Builder | #Codetober 2023 Day 26
Implement & test a GraphQL API in Anypoint Code Builder (ACB) | #Codetober 2023 Day 25
Просмотров 220Год назад
Implement & test a GraphQL API in Anypoint Code Builder (ACB) | #Codetober 2023 Day 25
Debugging the American Flights App in Anypoint Code Builder (ACB) | #Codetober 2023 Day 24
Просмотров 78Год назад
Debugging the American Flights App in Anypoint Code Builder (ACB) | #Codetober 2023 Day 24
Implementing the American Flights API Spec in Anypoint Code Builder (ACB) | #Codetober 2023 Day 23
Просмотров 92Год назад
Implementing the American Flights API Spec in Anypoint Code Builder (ACB) | #Codetober 2023 Day 23
Transforming Flight Data with DataWeave in Anypoint Code Builder (ACB) | #Codetober 2023 Day 22
Просмотров 98Год назад
Transforming Flight Data with DataWeave in Anypoint Code Builder (ACB) | #Codetober 2023 Day 22
Connecting to a Database from the Mule app in Anypoint Code Builder (ACB) | #Codetober 2023 Day 21
Просмотров 93Год назад
Connecting to a Database from the Mule app in Anypoint Code Builder (ACB) | #Codetober 2023 Day 21
Integrating American Flights Processes in Anypoint Code Builder (ACB) | #Codetober 2023 Day 20
Просмотров 102Год назад
Integrating American Flights Processes in Anypoint Code Builder (ACB) | #Codetober 2023 Day 20
Testing, syncing, and publishing an API in Anypoint Code Builder (ACB) | #Codetober 2023 Day 19
Просмотров 144Год назад
Testing, syncing, and publishing an API in Anypoint Code Builder (ACB) | #Codetober 2023 Day 19
Designing the American Flights API Spec in Anypoint Code Builder (ACB) | #Codetober 2023 Day 18
Просмотров 180Год назад
Designing the American Flights API Spec in Anypoint Code Builder (ACB) | #Codetober 2023 Day 18
Deploy Experience, Process, & System API layers to CloudHub 2.0 from Studio | #Codetober 2023 Day 17
Просмотров 155Год назад
Deploy Experience, Process, & System API layers to CloudHub 2.0 from Studio | #Codetober 2023 Day 17
How to debug several Mule applications in Anypoint Studio at the same time | #Codetober 2023 Day 16
Просмотров 224Год назад
How to debug several Mule applications in Anypoint Studio at the same time | #Codetober 2023 Day 16
Setting up HTTP Requests for Experience, Process, & System layers in Mule 4 | #Codetober 2023 Day 15
Просмотров 314Год назад
Setting up HTTP Requests for Experience, Process, & System layers in Mule 4 | #Codetober 2023 Day 15
Best practices in Mule apps: global elements & properties files per env | #Codetober 2023 Day 14
Просмотров 213Год назад
Best practices in Mule apps: global elements & properties files per env | #Codetober 2023 Day 14
Session 9: Test your Mule app with MUnit testing | MuleSoft from Start: A Beginner's Guide
Просмотров 4,5 тыс.Год назад
Session 9: Test your Mule app with MUnit testing | MuleSoft from Start: A Beginner's Guide
Hi Alex, thanks for useful series, we have CI/CD for Mulesoft working in our Environment after taking useful tips from your series. However we wanted to standardise our Parent POM and stucked on the error below despite trying multiple things. Even the solutions from Mulesoft Help Article is not helping. status code: 412, reason phrase: Precondition Failed (412)
I have never seen that before. I found this link, maybe it's useful? help.salesforce.com/s/articleView?id=001120384&type=1 You can add me on Discord with my username: DevAlexMartinez to discuss this further via chat!
Awesome video for starter! Help me so much, Thank you! FYI, IF we donnot want to change version of the deploying api, we could change build.yml -DmuleDeploy command with below -DmuleDeploy -s .maven/settings.xml -f pom.xml --batch-mode --update-snapshots verify
thank you!
Legend. Thank you.
Glad it helped
Good videos, thank you so much for sharing
Glad you like them!
Hello Martinez. I followed the steps, but I'm getting the following error: Failed to deploy populate-tables-app: Could not deploy application. Caused by: org.mule.tools.client.core.exception.ClientException: 403 Forbidden: {"timestamp":"","status":403,"error":"Forbidden","path":""} My server is US East (N. Virginia), so I am use <target>Cloudhub-US-East-1</target> Could you advise me what my problem would be?
try deploying it manually first to see if you have access to that region. if you are using a free trial account you only have access to us east 2
hello @ProstDev, it's not a trial account, I can publish directly through anypoint studio normally, I've done this several times.
the other thing that i can think of is bad credentials or missing permissions on the connected app?
Good afternoon everybody. I ended up redoing the project, I followed the step by step from the beginning and this time it worked, I don't know where I went wrong. Thank you all very much.
phew! ok glad to hear :)
really useful video and in depth too
Glad you liked it
@ still struggling to do it at client side though I can do CICD in my free environment
what are you struggling with?
Cool stuff you're showing us here, Alex! Keep these videos coming!
Thanks! Will do!
Great session. Appreciate sharing this.
Glad you enjoyed it!
Awesome!. in pom.xml what is the need of specifying client.id and client.secret? where it is used and from where these values are passed?
cause we are authenticating via a Connected App instead of username/password
%dw 2.0 output application/json --- max(payload splitBy " " map ((item, index) -> sum(item splitBy " ")) )
awesome!!
Can you also create a tutorial on how we can integrate Mulesoft to visual studio?
hmmm can you elaborate on that? I'm not sure what you mean
cool, do you demo for RTF platform with GitHub actions?
no :( I don't have any RTF content
Dear Alex, thank you so much for your content. I would try to answer the homework 😃
My pleasure!
Really cool video Alex!
thank you!!
"Imagine if you fall in love with Einstein" IM NOT GAY ALRIGHT?
😂😂😂
Why the fuck are you she/they it's supposed to be she/her and why will I be gay with Einstein
I love how you break it down, really helpful videos. Thanks
Glad it was helpful!
The button "New Request" not work v2.24.13
I have been using it lately and it works with the latest version
I have an interesting issue - I follow your steps very judiciously, but when I try to deploy my application it gives my 500 - Internal Server Error with no much details. Mind giving an idea on what can the issue?
Have you tried checking if you have enough vcores?
@jaymaniar1278 could you resolve this issue? I've been trying to fix it all day.
Could you resolve this issue? I've been trying to fix it all day.
@@BoboSiebenschlaefer108 do you have any more details on the configuration/error?
So for this session I needed to have the project in a git repository and maven installed in the path already?
Yes. The rest of the project is created during the previous sessions
Thank you so much sathish for having session on this topic!!!
Satish rocks!
Alex, your content and presentation style are the most helpful I have seen and came at just the right time for me. Thank you for all the effort you have put into all of your videos!
thank youuuu!
Informative👏👏👏
Thanks 🙂
Is this correct? %dw 2.0 output application/json var accumulator = 1 fun factorialOf(item, accumulator) = if(item <= 0) accumulator else factorialOf(item - 1, accumulator*item) var ans = payload splitBy " " map ((item, index) -> factorialOf(item as Number, accumulator)) reduce ($+$$) as String --- ans[20 to 25] as Number
that is correct!! amazing!
CHALLENGE COMPLETED!! I CODE FOR NON-STOP 3 HOURS FOR THIS, JUST TOOK THE REGEX TO REMOVE ALPHANUMERICS FROM INTERNET!! TOTAL LINES < 40 %dw 2.0 output application/json import * from dw::core::Strings var splitedPayload = payload splitBy " " fun replaceAlphanumerics(str: String): String = str splitBy "" map ((c) -> if (c contains /[a-zA-Z0-9]/) "" else c) joinBy "" var punctuationWordIndex = flatten(splitedPayload map ((item, index1) -> item splitBy " " map ((word, index2) -> if(sizeOf(replaceAlphanumerics(word)) > 0) {lineIndex: index1, wordIndex : index2, punctuationWord : replaceAlphanumerics((word))} else ("NULL")))) filter ((item, index) -> item != "NULL") var punctuationFreeData = splitedPayload map ((item, index1) -> item splitBy " " map ((word, index2) -> if((word contains replaceAlphanumerics(word))) (word remove replaceAlphanumerics(word)) else (word))) fun addPunctuationToWord(word, lineIndex, wordIndex) = do { punctuationWordIndex map ((item, index) -> if((item.lineIndex ~= lineIndex as String) and (item.wordIndex ~= wordIndex as String)) (word ++ item.punctuationWord) else ("") ) filter ((item, index) -> !isBlank(item)) } --- punctuationFreeData map ((item, index) -> reverse(item joinBy " ") splitBy " " map ((item2, index2) -> if(!isEmpty(addPunctuationToWord(reverse(item2), index, index2))) (addPunctuationToWord(reverse(item2), index, index2)) joinBy "" else reverse(item2) ) joinBy " ")
awesome!!! glad you didn't give up!
Thanks! I don't see the Ingestion Api section. Need help. @ProstDev
hello! did you go to the settings?
@@ProstDev Hello, yes I search "Data Cloud" but I not found it.
that probably means you don't have access to Data Cloud on your Salesforce org. I believe it doesn't come with the free subscription, you'd have to check with an org admin who pays for salesforce
Hi I enjoyed your videos … are you ok is there a reason why you haven’t uploaded any in a while??? And can you help me practice creating apis 🙏
I've just been very swamped lately! But hoping to upload stuff soon :)
Hello Alex! Thank you for this information. It's very rare these days to find useful information in English that you can understand. Please keep going!
thank you!! glad it helps
learned many things from your videos😍 alex
Thank you!!
Hay videos en español?
Hola! Por lo pronto no tengo muchos videos en español. Los de principiantes están en inglés
%dw 2.0 output application/json import * from dw::core::Strings fun removeEverythingExceptAlphaNumerics(item) = lower(item) replace /[^a-zA-Z0-9]/ with "" --- /* Expected output: 148 */ splitBy(payload, " ") map ((item, index) -> if(removeEverythingExceptAlphaNumerics(item) == reverse(removeEverythingExceptAlphaNumerics(item)))(sizeOf(item)) else (item)) filter ((item, index) -> item is Number) reduce ($+$$)
Awesome! Thank you for sharing!
%dw 2.0 output application/json --- /* Expected output: 30 */ //ans sum(splitBy(payload, " ") map ((item, index) -> splitBy(item, " ")) map ((item, index) -> { a:item[0], b:item[1] }) map ((item, index) -> if(item.a == item.b) (3) else ( if((item.a == "R" and item.b == "S") or (item.a == "P" and item.b == "S") or (item.a == "S" and item.b == "P")) (6) else (0) ) ))
that's awesome!! thanks for sharing!
%dw 2.0 output application/json var sumArray = payload replace " " with(",") splitBy "," map ((item, index) -> splitBy(item, " ") reduce ((item, accumulator) -> accumulator + (item as Number))) --- /* Expected output: 29 */ max(sumArray map ((item, index) -> item as Number)) done without looking anywhere. :) You're doing a very important work for the community.
thank you for sharing! i'm glad it's been helpful!
Hi Alex. First, thank you very much for creating these videos - they are a big help. I would add a suggestion if you didn't mind. Please make sure to show all the details - do not skip anything, no matter how small those details are. For the folks totally new to "mule" those are vital.
I really appreciate your feedback! Unfortunately, this series was recorded live and then cut-down for the RUclips videos, so it makes sense that the details are missing :( you will be able to find them in the live-stream recordings on Twitch tho! I will be working on a refresh of this series to include more to-the-point content and also to refresh the information to the latest. Could you please let me know exactly which details I missed so I can be sure to add them in the new series?
@@ProstDev First of all, thank you so much for your response. I do enjoy your informative videos. The place that I wish you'd be a bit clearer is at 24:50. You said you'd create another global property where you'd reference the key name for the object store. I am still not quite sure, do we need yet another configuration properties file for that? I am going to go ahead and assume - yes. So sounds like we have ended up with 2(two) Configuration properties files: one for the Environment (like Dev or Local) and the other for the default.properties. Am I correct?
that is what I personally prefer to do with my projects but it doesn't mean it's necessarily the 'best practice'. If you prefer to have just the environment files (dev/local), you can use those and keep copy/pasting the values. A lot of projects do that to avoid creating the default.properties, which is entirely fine. Some things are more up to people's preference. For example, you can also use .yaml or .properties for your properties files and it just depends on personal preference which one to use. Thank you for being so detailed!
I am a beginner and need to transition my career. I would like help with resources and training to become a Mulesoft Engineer/analyst
hello! this playlist is the right place for you! let me know if you have questions
Hello Alex - thanks for this great series! I was wondering if you might be able to help - we are getting an error duing the deployment build step. I tried posting the full error earlier but youtube didn't like it and removed the comment. The error we are getting looks something like this: Unresolveable build extension: Plugin org.mule.tools.maven:mule-maven-plugin:4.2.0 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.mule.tools.maven:mule-maven-plugin:jar:4.2.0: Could not transfer artifact org.mule.tools.maven:mule-maven-plugin:pom:4.2.0 from/to maven-default-http-blocker. Blocked mirror for repositories: It then lists the mulesoft-releases and mulesoft-snapshot repositories. Do you have any idea what this error message could be related to? Many thanks!
I'm not really sure... Were you trying to deploy to cloudhub 2? and, can you try using maven 4.1.1 instead? see if that works
Excelente. Gracias.
que bueno que te sirvio!
Me ha servido mucho tu video. Tuve que usar otras formas al final, pero me ayudaste bastante a entender. Ya me funciona el proyecto en el que venía trabajando.
Me alegra! Es un proyecto algo viejo, me imagino que habia varias cosas que cambiar. Que bueno que lo resolviste!
Hey, I think you may know me :P I'm watching your videos now! Good job, schoen!
Hello!! Thank you :D
Update videos about blog. Click not on others but on guides and go to page 4 ^^ have fun
Loved the content that you are generating. Thanks for clearing my understanding of MuleSoft and plz don't stop uploading videos of Mulesoft.
Thank you! Feel free to send me any suggestions on more content :)
Hai i am facing this error while i deploy to cloudhub2.0 i am using window 11 Unknown lifecycle phase ".id=***". You must specify a valid lifecycle phase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal>. Available lifecycle phases are: validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy, pre-clean, clean, post-clean, pre-site, site, post-site, site-deploy. -> [Help 1] cloud you tell what is this error
Awesome !! In next blog please guide on adding the API to API Manager and adding policies as part of CI/CD pipeline
thanks for the suggestion! I'm not sure if this is possible to do with CI/CD though. Because you need to create the API in API Manager, retrieve the api id, and add the id to your Mule application. The policies could be automated through the UI, no need for CI/CD
Woow thanks a lot! Last 3 days I am struggling with huge binary file splitting.
Awesome!!
Which is the configuration directing the maven to pick the version from exchange rather than build the code again?
I think you mean the <version> tag? but I'm not 100% sure what you mean. Is that it?
hi, can i get your contact details
Thanks for this amazing video, if I want to import the whole folder including types to postman, it didn’t work out, did you encounter this as well. Second question, by mentioning only ‘items’, is it a short way to say it’s a type of array? (Type array is redundant?)
You need to import only the JSON file to postman. The one under the postman folder. The items refer to what is the type of the things inside the array. Array of Strings, Array of Objects, Array of Numbers, etc. The items are Strings, Objects, Numbers, and so on.
Well, that is exactly what I was trying to do! I’m still trying to figure out how to set a custom name for the issues created, but apparently, it is not possible yet. I also took a look at Sentry API, but I didn’t catch any useful endpoint for that. This is definitely something they should improve
glad the video helped!
@@ProstDev if it can help someone, it seems that setting a custom name is not feasible. However, a workaround is to pass a text/plain payload to the log with the error description in the first line and a custom json starting from the second line. Not that great, but better. One more thing: it is possibile to set up environments in sentry by configuring sentry.properties file in our src>main>resources with just a property ‘environment=dev’. In that way, sentry will create a ‘dev’ env on our dashboard. That’s all I discovered 🤣
oh that's great! tysm for sharing it :D
currently CDP connector version is 1.1.0 and we dont have any fresh release in recent months. CDP connector supports JDK 8 and 11. Can we expect CDP connector latest version with JDK17 support or higher version?
Hello! I do not have an answer for that, unfortunately. I don't have visibility into the future product features :(
@@ProstDev hi Alex, one more question, cdp connector does not require any special license right? it is open source correct?
@@brucewayne-xe7rf it's not "open source" but yes, you can use it with any Anypoint Platform account. It can be a free account.
Been a few weeks learning and developing a Mule app for my company to connect to Snowflake using OData and setting some basic security over the important secrets. Thanks to all your videos (and the documentation, of course) I manged to finish the proof of concept today. Thank you very much!! Some of your old vids are a bit misleading now a days, but luckily, the comment sections of them include solutions for most of the problems. Thanks again for your work!
I'm glad to hear that! Thank you for taking the time to write this <3