firefly-boot
deepstream.io
firefly-boot | deepstream.io | |
---|---|---|
12 | 7 | |
48 | 7,128 | |
- | 0.2% | |
9.8 | 5.6 | |
5 days ago | about 2 months ago | |
JavaScript | TypeScript | |
MIT License | MIT License |
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.
firefly-boot
-
What's the syntax of lambda expressions in your language?
Firefly, curly braces:
-
January 2022 monthly "What are you working on?" thread
I'm still working on Firefly, a language with first class capabilities.
-
Ask HN: Who Wants to Collaborate?
Since there's no other way for `deleteDirectory` to obtain capabilities than to recieve them as arguments, `deleteDirectory` only has access to the file system.
[1] https://github.com/Ahnfelt/firefly-boot/tree/master/compiler
-
Preventing Log4j with Capabilities
> Do you have more to share, like resources about capability-safe languages, or your ongoing work?
I can share an example from the main function of the [self hosting Firefly compiler](https://github.com/Ahnfelt/firefly-boot/tree/master/compiler):
main(system: System): Unit {
-
What are some simple but powerful compile-to-JS languages I might not know about, or that you are working on (not Elm, Reason, PureScript, or ClojureScript)?
I'm working on Firefly, which will compile to JS once bootstrapping is complete (almost there).
-
June 2021 monthly "What are you working on?" thread
Still working on typechecking Firefly with the help of a friend.
-
March 2021 monthly "What are you working on?" thread
Working on the type inference for Firefly. I don't have a lot of free time at the moment, so it's coming along slowly.
-
Alternative to monads for enforcing purity?
Firefly uses object capabilities for enforcing purity:
-
Generalizing Ruby block syntax in static languages with currying
In Firefly, this is done without macros:
-
February 2021 Monthly What Are You Working On
Firefly - self hosting, working on the type inference.
deepstream.io
- Ask HN: Who wants to be hired? (January 2023)
-
7 Useful JavaScript Libraries To Build a Real-Time Web App
Deepstream is an open-source library for real-time web application development. The library, which is built with Node.js and Engine.io, helps developers build frontend web applications that perform real-time updates while requiring minimal backend code.
-
Ask HN: Who Wants to Collaborate?
I'm working on a few projects, from one/two days to platforms.
The first is OS and is a simple nodeJS environment to deploy applications via lambda and express quickly. Sort of like nestJS except less decorators and more functional (https://vramework.io/). I already know of a few other colleagues that rolled their own propriety versions of this to support enterprise and cloud deployments so decided to OS it.
The other OS project is a strongly typed postgres/mysql driver. The idea is to generate typescript definitions directly from postgres (https://github.com/vramework/schemats) and then have a think layer ontop of pg-node that gives you strongly typed queries (https://github.com/vramework/postgres-typed).
An open-source project I spent a few years on the core team is https://deepstream.io/, a realtime-server that allows you to mix and match multiple streaming protocols (mqtt/websocket/others) and allow those clients to talk to each other using pub-sub and records. I'm not longer working for it but wanted to give it a shout out!
On a non OS project, I have been working on an immersive audio platform for a while now. The main goal is to allow users to pick and choose how audio books progress, and also have a live session mode which allows users to record their pulse / answer questions and a few other metrics and associate it with sentences. I pretty much built and deployed all of it but require some advice/brainstorming on how to proceed now. I built it to satisfy an itch when I was practicing shamanism during the first lockdown when I was in-between contracts / taking time off.
I also want to build a simple web-pages strategy game based around eco-education, but don't have the bandwidth . If anyone is interested in mixing together gamification and eco-village building might be a fun conversion to bounce ideas!
All the OS projects above were used to support my personal/a couple professional projects over the last few years.
Email in profile
-
Ask HN: Freelancer? Seeking freelancer? (August 2021)
I'm currently looking for a contract that is part-time that is focused on consultancy or smaller projects (such as setting up containerized AWS environments)
I am looking for part-time contract or freelance/consulting opportunities at the moment (up to 20 hours/week).
GitHub: https://github.com/yasserf
OS projects I am/was core maintainer of: https://vramework.io/ and https://deepstream.io/
LinkedIn: https://uk.linkedin.com/in/yasserfadl
Email: [email protected]
-
Crossbar.io – an open source platform for distributed and microservice apps
https://deepstream.io is the closest and has a richer feature set (including a replicating document store), however it seems to have a small ecosystem / community / limited support options, and permissions do not seem as advanced.
https://nats.io is close but lower level. Has a large community and rich ecosystem however.
Then you can also mix and match lowever level technologies to achieve the particular set of tradeoffs you need. MQTT, AMQP as the protocol, mosquitto / rabbitmq/zeromq, then json-rpc on top ...
-
Which self hosted Pub/Sub realtime technology (websockets etc) do you use and why?
I can find socket.io, faye, deepstream.io , autobahn-js and nchan, centrifugo. Can you also explain why you chose it and if you had troubles with some other solution?
- Some good example projects
What are some alternatives?
xvm - Ecstasy and XVM
Socket.io - Realtime application framework (Node.JS server)
konna - A fast functional language based on two level type theory
SocketCluster - Highly scalable realtime pub/sub and RPC framework
cubiml-demo - A simple ML-like programming language with subtyping and full type inference.
Primus - :zap: Primus, the creator god of the transformers & an abstraction layer for real-time to prevent module lock-in.
starlight - JS engine in Rust
SockJS - WebSocket emulation - Node.js server
IntercalScript - The IntercalScript programming language
HPI - Human Programming Interface 🧑👽🤖
Matrix - Easy-to-use Scientific Computing library in/for C++ available for Linux and Windows.
Straw - Realtime processing framework for Node.js