An experiment with Projector to put JetBrains MPS into the browser.
Skadi is a MPS playground in the browser. It’s build as a demo of what is possible with JetBrains projector and MPS. This isn’t a real service like codespaces by Github or similar. It’s a tech demo and should be treated like that. You can use it to play around with MPS without installing anything. Skadi includes a bunch of samples including KernelF that you can use to explore MPS.
By logging in you agree with this website using cookies and storing personal information see here for more details.
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 is essentially the implementation of one of those ideas.
As mentioned this is a demo to the community and not commercial service. I’m paying for the cost of running this out of my own pocket. That said the demo might get shutdown at some point in the future.
Definitely NOT. This playground is more of a prove of concept to show what is possible with Projector, Kubernetes and MPS. Your data might get deleted at any time and the playground might be shutdown. Do not store anything important in it.
Skadi is the Norse Norse giant goddess of winter, hunting, and skiing.
Yes you can. But it's highly recommended to use a physical keyboard. Although key mappings can get weird and might now work as expected. Especially on iOS keyboard shortcuts tend to behave strange.
Most likely. This is a prove of concept and implemented like that. Projector, the underlying technology used to give you access to the IDE, is very young technology and likely also contains bugs. Expect this to be a playground for experimenting with none sensitive data that you can afford to loose.
Yes as long as you don't share the link. While the connection is encrypted there is no additional authentication in place. If the link, that includes the token, to your instance gets leaked anyone with the link can connect to it. The playground list gives your two links one that grants full access and one that is read only. Right now there is no way regenerate the token for an existing instance. If you need a new link you have to delete the instance and create new one.
Yes you can, but the JetBrains plugins for Github won’t work. The authentication workflow will fail because it assumes that you are on your machine and not in your browser. You can of course use personal access tokens. Keep in mind that if somebody gains access to the IDE instance they also gain access to your Github token.
When the underlying infrastructure gets busy more computing resources are added on demand. Adding new resources to infrastructure happens automatically but can take some time. Usually a playground should be up within a minute but it can sometimes take 10 minutes when new resources need to be added to the infrastructure.
You get 10GB of persistent storage in your user directory
/home/projector-user
everything else is not persisted and will get deleted if the instance is shutdown or restarted. 10GB should be plenty of space for playing around with MPS. Other resources like CPU and memory are limited as well but should be enough for even larger experiments. You won’t be able to use the playground to work with really large project like mbeddr.
The plugin is responsible for detecting if you are connected to the IDE or not. In case there is no connection to a playground for more than 30 minutes the playground is shutdown. You can start it again from the playground overview and reconnect. If you disable the plugin your playground will shutdown automatically after 30 minutes.
Your playground is kept for 30 day after its been showdown. After 30 days of inactivity the playground is delete entirely. This might change at any time.
Information in accordance with Section 5 TMG
Kolja Dummann
Rüderner Str. 2
70329 Stuttgart
Once you login via Github this service uses cookies to store your login information. The service does not use cookies for tracking but given the current law I have to tell you that it uses cookies. 🤷♂️
This service stores personal information after you logged in:
These information is not shared with any third party. The email address is only used for contacting you for information regarding the service or for investigation of technical issues with your instances. The email is not used to marketing purposes.