Most important Open Source projects I've conceived, designed and developed from scratch, both personal or for third-party organizations in a professional basis.
Linter to check global quality of projects, based on my experience doing code auditories. Not only checks for code quality or best practices, but also has rules to validate project structure, file names conventions, complexity, documentation, tests...
This project also involved the development from scratch a project-level rules async engine and of a tasks runner with support for parallel execution and multiple optional alternatives, since none of them was available at that time.
Minimal operating system build on top of Linux kernel usingo Node.js as its user space and fully managed with npm. It's mostly focused for Cloud and Fog computing, at the same time for education and embeded systems, and has some unique features like isolated filesystems for each user (it was planned to isolate each one on its own LXC container) to allow full customization of the system by their users, or multiple flavors depending of the user needs (also as a single-process OS or bootable USB, and was planned support for networked GUI).
This project won the spanish national IX Free Software Universitary Championship, was my bachelor thesis (graduated with distinction), and I was also invited to give some keynotes at OpenExpoDay 2015 and JsDayEs 2017 conferences.
This project won the spanish national VII Free Software Universitary Championship and was invited to give a keynote at first spanish WebRTC summit at Politechnic University of Madrid, November 2012.
Modular filesystem build with Python and using SQLite to manage metadata, allowing to the user to customize its behaviour by using plugins, and inspired by other new generation filesystems like BeFS, ZFS or Ext4.
This was my first open source project with some public repercussion, and won the Madrid local edition of the spanish national V Free Software Universitary Championship and was Honorable Mention in the national edition, both in 2011.
Initially designed as a one-to-one high performance files transfer protocol based on WebRTC DataChannels, it evolved into a transport-agnostic streams-oriented communications protocol for general purpose heavily influenced and based by Node.js streams. Taking ideas from P2P architectures (conceptually, I consider it myself ShareIt! 2.0), it implements advanced features like asynchronous send and reception, flow control with backpressure, use multiple transports in parallel, or auto-recovering.
Node.js bindings for Orion IoT server.
Although it was initially requested to develop just only a one-to-one proxy
server between the
Orion IoT Server and other APIs like Google Spreadsheets or
Amazon DynamoDB, I took the initiative to a bottom-to-up development focused on
following Node.js best practices and standard protocols, and building an
expansible system based on reusable modules (the initially requested server
ended being just only 70 lines of code) with one-to-many publishing support in
half the initially estimated time. This is one of the projects I'm
professionally more proud of at various levels, but this would have not been
possible without a good in-detail documentation of the
Orion IoT Server, clear
requirements and objectives, and giving me creative liberty from their side.
This project was sponsored by Telefónica R&D division.
Kurento is the lead WebRTC media server, powering Skype web conferences or Facebook and WhatsApp multi-user videochats, thanks to its flexibility and performance. In contrast to other ones, it's focused on provide a thin low-level layer on top of GStreamer with an easy to use API instead of a high-level aproach that does everything that's needed to create a videoconference aplication. Kurento team was acquired by Twilio in 2016.
client APIs and its WebRTC
browser utilities, based on my
previous experience from developing ShareIt!. After that, in 2020 I
was sponsored by Veedeo.me to update
browser utilities package to make use of current WebRTC APIs and to follow newer