{"id":20054086,"url":"https://github.com/thesnowfield/bytelizer","last_synced_at":"2025-05-05T13:31:02.105Z","repository":{"id":231246957,"uuid":"780766321","full_name":"TheSnowfield/bytelizer","owner":"TheSnowfield","description":"Bytelizer is a binary packaging/unpack library written in modern c, focusing on performance and lightweight.","archived":false,"fork":false,"pushed_at":"2024-08-08T23:27:39.000Z","size":75,"stargazers_count":3,"open_issues_count":2,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-08-10T04:03:34.821Z","etag":null,"topics":["c","protobuf","protocol","serialization"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TheSnowfield.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-02T05:50:53.000Z","updated_at":"2024-08-08T23:27:43.000Z","dependencies_parsed_at":"2024-06-03T12:42:24.489Z","dependency_job_id":null,"html_url":"https://github.com/TheSnowfield/bytelizer","commit_stats":null,"previous_names":["thesnowfield/bytelizer"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheSnowfield%2Fbytelizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheSnowfield%2Fbytelizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheSnowfield%2Fbytelizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheSnowfield%2Fbytelizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TheSnowfield","download_url":"https://codeload.github.com/TheSnowfield/bytelizer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224449384,"owners_count":17313245,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","protobuf","protocol","serialization"],"created_at":"2024-11-13T12:32:28.507Z","updated_at":"2024-11-13T12:32:29.166Z","avatar_url":"https://github.com/TheSnowfield.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Bytelizer\nBytelizer is a binary packaging/unpack library written in modern c,  \nfocusing on performance and lightweight.\n\nFeature:\n - Anchor for late data insert/fill\n - Barrier (or segment/packet)\n - Length prefix support\n - Static Protobuf structure declaration\n - Endianess\n\nAlmost all functions and variants are macrolized or inlined for compiler static optimization.\n\n[![frost](https://img.shields.io/badge/BYTELIZER-OwO-cea7ff)](#)\n[![license](https://img.shields.io/badge/LICENSE-GPLv2-greeen)](./blob/main/LICENSE)\n\n## Quick Guide\n```c\ntypedef struct {\n  uint16_t a;\n  uint16_t b;\n  uint32_t c;\n} example_t;\n\n// the generic way in c\nexample_t _example = {\n  .a = 0x1234,\n  .b = 0x5678,\n  .c = 0xDEADBEEF\n};\n\n// the equivalent in bytelizer,\n// allocates 64 bytes on the stack.\nbytelizer_alloc(_ctx, 64); {\n  bytelizer_put_uint16(_ctx, 0x1234);\n  bytelizer_put_uint16(_ctx, 0x5678);\n  bytelizer_put_uint32(_ctx, 0xDEADBEEF);\n}\nbytelizer_destroy(_ctx);\n\n```\n\n## LICENSE\nLicensed under GPLv2 with ❤.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthesnowfield%2Fbytelizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthesnowfield%2Fbytelizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthesnowfield%2Fbytelizer/lists"}