⚠ Skadi Cloud has been shut down. This page is preserved for archival purposes.

about

Skadi was a MPS playground in the browser. It was built as a demo of what was possible with JetBrains Projector and MPS. It was not a real service like Codespaces by GitHub or similar — it was a tech demo and was treated as such. Users were able to play around with MPS without installing anything. Skadi included a bunch of samples including KernelF to explore MPS.

KernelF was a functional base language for building domain specific languages on top of it. Skadi was built using JetBrains Projector, a framework for remote access to Java applications, Kubernetes and JetBrains Meta Programming System.

faq

Why was this built?

As a demo to the community, as an impulse to get new ideas and discussions started. A while back I wrote down my ideas how Projector and MPS could be used together and this was essentially the implementation of one of those ideas.

Why was this free?

As mentioned this was a demo to the community and not a commercial service. The running costs were paid out of pocket. The demo has now been shut down.

Should I have used this for real projects?

Definitely NOT. This playground was more of a proof of concept to show what was possible with Projector, Kubernetes and MPS. Data could get deleted at any time and the playground could be shut down.

What's that name?

Skadi is the Norse giant goddess of winter, hunting, and skiing.

Could I use this on my iPad/Phone/Tablet?

Yes. But it was highly recommended to use a physical keyboard. Key mappings could get weird and might not work as expected. Especially on iOS keyboard shortcuts tended to behave strangely.

Were there bugs?

Most likely. This was a proof of concept and implemented as such. Projector, the underlying technology used to give access to the IDE, was young technology and likely also contained bugs. It was a playground for experimenting with non-sensitive data.

Was the connection to the IDE safe?

While the connection was encrypted there was no additional authentication in place. If the link, including the token, to an instance got leaked, anyone with the link could connect to it. The playground list provided two links: one that granted full access and one that was read only.

Could I access GitHub?

Yes, but the JetBrains plugins for GitHub did not work. The authentication workflow would fail because it assumed you were on your own machine and not in a browser. Personal access tokens could be used as a workaround.

How big could my project get?

Users had 10GB of persistent storage in the user directory

/home/projector-user

. Everything else was not persisted and would be deleted if the instance was shut down or restarted. 10GB was plenty of space for playing around with MPS.

What was the skadi-cloud plugin in the IDE?

The plugin was responsible for detecting whether a user was connected to the IDE or not. If there was no connection to a playground for more than 30 minutes the playground was shut down automatically. Users could start it again from the playground overview and reconnect.

How long was data stored?

Playgrounds were kept for 30 days after being shut down. After 30 days of inactivity the playground was deleted entirely.