webcontainer-core
Prosody IM
webcontainer-core | Prosody IM | |
---|---|---|
20 | 23 | |
3,622 | 590 | |
0.8% | - | |
2.0 | 9.4 | |
about 1 year ago | 5 months ago | |
Lua | ||
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
webcontainer-core
-
API Security Academy dedicated to GraphQL security
How does it work? There is no backend whatsoever. The API Security Academy leverages WebContainers, a new technology that allows running full-blown node instances directly in the browser. Each WebContainer contains a live GraphQL application, so you'll not only understand why a vulnerability is risky, but also how to exploit it and, most importantly, how to fix it.
-
Node on Web. Use Nodejs freely in your browser with Linux infrastructure.
StackBlitz made the claim "... run Node.js, entirely inside your browser" #658, then had to revise it's claim to "We currently do not expose a way to use WebContainer outside of StackBlitz.com,".
-
Lua: The Little Language That Could
> Wasm though seems like the likely general heir, and will have many different offerings for how to do that (Deno being one!).
I was recently blown away by some ideas that StackBlitz [0] apply based on WebContainers. The idea of a "server in the browser", they allow you to run Node-based environment like that via Wasm.
[0] https://stackblitz.com/
[1] https://webcontainers.io/
-
How repl.it and online code editors are built?
See https://webcontainers.io.
-
Blog Post: Reasonable Bootstrap
This very simple fact is well known flaw, which was already often criticized and asked for solutions by users. It doesn't only affect this kind of very exotic bootstrap applications but also significantly limits rusts usefulness in many other areas. Pure browser based scientific code documentation and example notebooks (e.g. jupyterLite) and sandboxed CI and IDE solutions (e.g. web containers) as available for many other languages are simply not available for rust because of this very fundamental issue.
-
WebContainer API
Looks like they plan to open it. From the FAQ section of README (https://github.com/stackblitz/webcontainer-core#faqs):
> Is there a developer API?
-
[AskJS] Is there an JavaScript engine agnostic server module that can be imported into Bun, QuickJS, Deno, and Node.js?
I'm skeptical about stackblitz claims. The last time I checked that is closed source code https://github.com/stackblitz/webcontainer-core/issues/658.
-
Use SSH in browser
StackBlitz claimed https://blog.stackblitz.com/posts/introducing-webcontainers/ to have implemented Node.js in the browser, though I have not observed any evidence of that being true and correct https://github.com/stackblitz/webcontainer-core/issues/658.
- Node.js in Chrome extension
-
Docker Desktop Requires A Paid Subscription, Now What?
The other honorable mention is StackBlitz, a web-based web editor for making containers that run Javascript applications. Interestingly, StackBlitz is championing WebContainers, a technology that allows developers to start NodeJS servers within the browser. The downside is, this technology only works with Javascript-based projects (NodeJS, NextJS, etc). I include it here because WebContainers could easily be extended to support other languages via WASM, like Ruby. I’ll also add in Buildah, a tool for building OCI images. I won’t say much about this tool because it’s designed for building images; you still need another service, like Podman, to actually create the containers.
Prosody IM
-
My collection of Ansible roles for self-hosting everything with Rocky Linux and FreeIPA
XMPP server using Prosody
-
Lua: The Little Language That Could
lua on its own right can be fun too! If you are looking for a project to contribute to, there's for instance the Prosody XMPP server that's written in it, and contributes to the betterment of internet by promoting federated protocols.
There's also the http://prosody.im/ XMPP server that's written in Lua, and it's very successful there. The other major XMPP server implementation is in Erlang and they are equally praised, so that should tell something about Lua's versatility.
-
VoceChat server is ready! Rust written 17MB open sourced chat server--the easiest to host/intergrate chat server you can find.
Take your pick. Or just look here.
- Chat Server
-
A History of Lua
You can write largish standalone application in Lua and it is not always a poor choice - Prosody [1] first comes to mind. But qualities which make it a good embedded language make it less _attractive_ for other uses.
Lua has very simple syntax and small stdlib which allows its implementation to be very small - you can add Lua to your application and not increase its size significantly. But when the size is not a concern most programmers prefer languages with rich, powerful syntax lots of features and batteries-included stdlib (which is completely opposite of Lua).
[1] https://prosody.im/
-
Chat app to allow messaging between my daughter and I?
If you are really set on a LAN-only setup you could look at Prosody (combined with an Android app such as Conversations) which Snikket is based upon. It's not as "ready to go, out of the box" as Snikket and therefore requires a slightly higher skill level, but in exchange it is a lot more customizable and adaptable to different kinds of deployment scenarios.
-
Google Chat through Matrix questions
Selfhosting XMPP is pretty simple with https://prosody.im/
- Need Advice on Instant Messaging
-
Ask HN: What is your recommended stack for real time chat?
My choice, because it's the stack I know very well, would be Prosody ( https://prosody.im/ - I'm one of the devs) and a web client such as Converse.js ( https://conversejs.org/ ). XMPP is highly extensible, Prosody is highly modular, which make them a good foundation for building on top of.
That said, the right stack is generally the one that matches your requirements, and (if this isn't primarily a learning exercise) whatever you're most familiar with. The hardest part of building a Discord or Slack-like in 2022 is actually not the technical stuff. There are many comprehensive open-source products already out there that compete with these companies, such as Mattermost, RocketChat and Element.
What are some alternatives?
wasmer - 🚀 The leading Wasm Runtime supporting WASIX, WASI and Emscripten
ejabberd - Robust, Ubiquitous and Massively Scalable Messaging Platform (XMPP, MQTT, SIP Server)
standards-positions
Openfire - An XMPP server licensed under the Open Source Apache License.
wasm-clang - Running Clang/LLD in WebAssembly Demo
Metronome IM - Metronome IM, lightweight xmpp server with advanced microblogging features.
threads - Threads and Atomics in WebAssembly
Tigase - Tigase XMPP server patched for Kontalk
joystick - A full-stack JavaScript framework for building stable, easy-to-maintain apps and websites.
matterbridge - bridge between mattermost, IRC, gitter, xmpp, slack, discord, telegram, rocketchat, twitch, ssh-chat, zulip, whatsapp, keybase, matrix, microsoft teams, nextcloud, mumble, vk and more with REST API (mattermost not required!)
openvscode-server - Run upstream VS Code on a remote machine with access through a modern web browser from any device, anywhere.
jackal - 💬 Instant messaging server for the Extensible Messaging and Presence Protocol (XMPP).