{"id":"gamef200/graphite","name":"graphite","scope":"gamef200","platform":"roblox","description":"Graphite Network library","version":"0.2.0","latest":"0.2.0","versions":["0.1.1","0.2.0"],"license":"Apache-2.0","licenseRating":"safe","licenseCaveats":["Modified files must carry a notice of changes. If the package ships a NOTICE file, its attributions must be preserved.","License identified from the packaged LICENSE file; the manifest declared none."],"licenseVerified":true,"dependencies":{},"integrity":"1c71e113494bfa461359d0cb55f9c74057fc6c1a9814873f35dc6c665494625f","likes":0,"downloads":0,"install":"forest install gamef200/graphite","url":"https://forest.dev/p/roblox/gamef200/graphite","files":"https://api.forest.dev/ai/package/roblox/gamef200/graphite/files","readme":"# Graphite \r\n\r\nMake your networking easy, fast, predictable.\r\n\r\n## [      GitHub Repo]()   |   [Creator Store](https://create.roblox.com/store/asset/123588415222554/Graphite) \r\n\r\n---\r\n</div>\r\n\r\n## About\r\nGraphite is a continue of [Quartz Project](https://devforum.roblox.com/t/deprecated-quartz-quick-networking-library/4069336) Designed to make networking like a flow.\r\nGraphite using CC(Congestion control) called `QNC (Queue Network Control)` which using technologies like PI/PID and CoDel\r\n\r\n##  Features:\r\n* Very easy API with builder pattern\r\n* Type safe networking, Graphite using Validator\r\n* Compact, structure binary serialization with no type tags\r\n* `Slice batching`, Not just naive batching, only advanced\r\n* `QNC` - Smart Congestion control algorithm \r\n\r\n#  Basic Usage(Client):\r\n```\r\nlocal Graphite = require(path.to.Graphite)\r\n\r\nlocal Event = Graphite.Event(\"Test\")\r\n      .type(Graphite.Bool)\r\n      .droppable()\r\n      .build()\r\n\r\nEvent.Fire(false)\r\nEvent.OnClientEvent(function(bool: boolean)\r\n    print(\"got from server:\".. bool)\r\nend)\r\n-- autocomplete fully working!\r\n```\r\n# Server:\r\n```\r\nlocal Graphite = require(path.to.Graphite)\r\n\r\nlocal Event = Graphite.Event(\"Test\")\r\n    .type(Graphite.Bool)\r\n    .droppable()\r\n    .build()\r\n```","readmeTruncated":false}