Please describe your proposed solution.
The ouroboros-network stack is the component that allows some program to directly communicate with any cardano-node implementation, either locally (on the same machine) or over the network (node-to-node communications).
A Zig implementation would allow for one of the most efficient implementations of the node communications, which can then be used to build (or improve) new (or existing) extremely efficient tools; such as indexers, cli interfaces, databases, etc…
the intent of the project is to be the base tool on top of which new incredible tools will be built.
Why Zig?
The choice of Zig as a language is mostly due to the incredible performances it can achieve (often comparable to C) with a strong focus on memory safety and best practices (errors as values, no hidden control flow, etc.);
Despite being a relatively young language (Zig development started in 2017) the characteristics of the language are allowing it to easily be adopted by the industry with lots of exciting projects, including the blazingly fast javascript runtme "Bun" with over 42k stars on GitHub.
TL;DR: adopting Zig means making sure that Cardano stays at the forefront of industry standards.
How does your proposed solution address the challenge and what benefits will this bring to the Cardano ecosystem?
In the challange description, one of the "possible directions" specified is;
> Developing common tools, frameworks, core infrastructures, or proof of concepts
which matches the idea of the proposal to create a tool that can work as a base for any other project who intends to use the library.
How do you intend to measure the success of your project?
The final goal is to have an open-source library to be reused across the ecosystem.
As an open-source project, the most direct way would be the number of stars the project will receive on GitHub; indicative of the people interested in it.
As a library, the number of dependents projects (directly or indirectly) will be an incredibly useful metric.
Please describe your plans to share the outputs and results of your project?
So far Twitter has been mainly used to communicate the progress of the various projects.
Mainly the (personal) MicheleHarmonic account will be alongside the HarmonicLabs account where appropriate.
Twitter has proven itself a useful tool to share the progress and it will still be used.
for any unreported progress, the project itself has always been open source, and anyone interested should be able to use GitHub to stay updated; the repository can be found at: ( TODO insert link of repo )