Help with API design for open source byte buffer repo

Hello, I require help figuring out the API design for a ByteBuffer implementation. I have a repo in which I based from SwiftNIO's repository and aimed to make the internal implementation clear to me.

This actually started as a way to understand what was going under the hood and tried to "put in my own words". Also I asked, and NIO's team mentioned they preferred to see what the community created in this domain.

So, for some reason the readable and writable bytes paradigm that SwiftNIO's buffer works with strikes me as odd and tried to do it... different. I'm not sure if I ended up making it more complicated and I'm not completely sold on it (like, am I actually taking into consideration all basic use cases or am I overthinking it) but I opted for a different API and now I'd like to do so peer/community review so this can become better shaped for everybody through the eyes of a bigger group than me, myself and I.

I appreciate any help with this project and hope it turns out really cool. Let's chat, DM, video call, you name it.

This is the link: GitHub - ajotaos/swift-bytes