January 2024 Newsletter
- written by Roland BOLE (Instructor)
This edition of the #icAcademy newsletter includes a summary of the latest blog posts, the announcement of our free quizzes, learnings of the month, an update of our first course, and a brief preview of our upcoming course "How to develop applications for the Internet Computer".
Blog image

Hello 👋 and welcome to this newsletter.

We are pleased to present the monthly updates on IC Academy activities.

This edition of the #icAcademy newsletter includes a summary of the latest blog posts, the announcement of our free quizzes, learnings of the month, an update of our first course, and a brief preview of our upcoming course “How to develop applications for the Internet Computer”.

Let’s start with a recap

In this section we would like to give you a summary of the latest blog posts, in case you have missed it.

In this first post of the month we have published a starter kit for Svelte frontend projects. The reason for that was a lack of starter kits provided by the official examples from the Internet Computer repository at that time. Although there were some starter kits available, most of them have outdated npm packages and were not ready to use for my use case.

Later, we also published a SvelteKit starter kit on our public Github organisation because of the routing topic. For our next online course “Application Development on the Internet Computer”, we have prepared a supporting material example for authenticated routing. In this example we use the Internet Identity to protect some routes and make it only available for authenticated users. For this, we used the file-based routing system of SvelteKit because it works out of the box.

Our final public post concludes with a discussion on Astro + Svelte within the Internet Computer framework. As our course “Master Deployments of Static Websites on the Internet Computer” is centered around Astro, it delves into the process of hosting static websites on the Internet Computer. Throughout the course participants gain insights about how to benefit from the inherent security features of a blockchain-based infrastructure for static websites.

To take a step further, we want to look at how we could use a Svelte component to interact with a backend Motoko canister on the Internet Computer. For this purpose, we implemented a small glossary service that could be queried from the frontend.

This example goes a little beyond the typical HelloWorld example and shows the use of a stable hash map and the handling of Motoko Result types. In the Web2 world it is a storage variant for an object array. With a little bit of imagination you can do a few things with it.

Free Quizzes

We have also updated our free quizzes section on blog.icacademy.at. Currently, one quiz is available. We are working on a second one which will be delivered on this new platform as soon as possible.

Learnings

As a developer, especially as an experienced developer, you often have concerns about talking about what you have learned. Because you might think that other people may be surprised about what you did not know before or you assume that everyone should know that. So, this section is for all, because in the field of IT nobody knows everything.

This month I have picked two learnings:

The first learning was the importance of understanding how VITE works as a build tool, especially when dealing with environmental variables. So, grab a cup of coffee, take this time and study the VITE documentation. They have an excellent website, it is definitely worth checking it out. vitejs.dev

The second learning was about what happens with false or unavailable routes in the project on the Internet Computer, to be precise on an Asset canister. This is a common scenario because in some cases you have to deal with custom error pages. Well, from my observation, the behaviour is slightly different between local, playground and IC mainnet deployment. According to the documentation and a post in the dfinity forum a false URL should be routed automatically to the index.html file of the Asset canister.

In the same blog post a Dfinity team member pointed out that he is working on a library that would allow developers to create their own custom-build asset canister. With that you would be able to write any kind of routing logic that your application needs. Let’s see. forum.dfinity.org/t/sveltekit-with-staticadapter-and…

Course Usage

We are very happy that our first course Master Deployments of Static Websites on the Internet Computer has a growing number of participants all over the world. Thanks to VERIABLE, a qualification and certification platform based in the heart of Europe, for supporting automated and seamless registration, enrollment and learning processes.

Also we would like to thank you to all the course participants, you are so powerful, we are very proud of you for taking this course.

Course Development

This section provides a short update of the current course production status of the IC Academy.

Currently, we are still working on the course “How to Develop Applications on the Internet Computer”.

The Internet Computer provides a way to replace traditional centralised IT infrastructure with a decentralised infrastructure. In this course we are going to show you how this could be done, with tools provided by the Internet Computer itself, not using a third party tool.

We are working on module 1 treating how you can set up your development environment by yourself by using a SvelteKit application including a local Internet Identity replica.

Enjoying our content? Don’t forget to forward and share it with your friends!

Best Regards BOLE Roland