{"id":20197764,"url":"https://github.com/mohamedelashri/jaggedcpp","last_synced_at":"2026-05-10T11:52:58.681Z","repository":{"id":193243118,"uuid":"688408109","full_name":"MohamedElashri/jaggedcpp","owner":"MohamedElashri","description":"C++ Jagged Array library","archived":false,"fork":false,"pushed_at":"2023-09-21T13:34:06.000Z","size":33,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-13T19:46:39.713Z","etag":null,"topics":["jagged-array"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MohamedElashri.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":"2023-09-07T09:34:46.000Z","updated_at":"2023-09-07T09:37:27.000Z","dependencies_parsed_at":"2025-01-13T19:42:13.639Z","dependency_job_id":"9a83ab29-2178-4bbd-b302-6955ad0729ac","html_url":"https://github.com/MohamedElashri/jaggedcpp","commit_stats":null,"previous_names":["mohamedelashri/jaggedcpp"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MohamedElashri%2Fjaggedcpp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MohamedElashri%2Fjaggedcpp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MohamedElashri%2Fjaggedcpp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MohamedElashri%2Fjaggedcpp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MohamedElashri","download_url":"https://codeload.github.com/MohamedElashri/jaggedcpp/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241630799,"owners_count":19993888,"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":["jagged-array"],"created_at":"2024-11-14T04:28:09.562Z","updated_at":"2025-11-29T12:06:27.092Z","avatar_url":"https://github.com/MohamedElashri.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Makefile Examples CI](https://github.com/MohamedElashri/jaggedcpp/actions/workflows/build.yml/badge.svg)](https://github.com/MohamedElashri/jaggedcpp/actions/workflows/build.yml)\n\n# Jagged Array C++ Library\n\n## Description\n\nThis project aims to provide a C++ library for handling jagged arrays, similar to the functionality offered by the Awkward Array library in Python. The library supports various operations, including element access, appending, flattening, reshaping, padding, and clipping. It also provides several reduction methods and statistical functions like mean, variance, and standard deviation.\n\n\nThis is still in early development and while the goal is to implement as much as possible from awkward array, there are still a lot of things to do. I mainly work on these as I need them in a project so if you need something that is not implemented yet, feel free to open an issue or a pull request. I focus mainly on methods that I need for my personal projects, but I am open to suggestions.\n\n\nNo documentation is available yet, but I am working on it. For now, you can check out the examples in the `examples` folder to get an idea of how to use the library.\n## Features\n\n- Element-wise access and modification\n- Support for various jagged array operations\n- Reduction methods (`all`, `any`, `sum`, `prod`, `max`, `min`)\n- Statistical methods (`moment`, `mean`, `var`, `std`)\n\n## Prerequisites\n\n- C++ Compiler with support for C++17 (e.g., `g++`)\n\n## Compilation\n\nThis project uses a Makefile to automate the compilation process. To compile all example files, navigate to the project's root directory and execute:\n\n```bash\nmake all\n```\n\nThis will compile all example files located in the `examples` folder and store the compiled executables in `examples/obj`.\n\nTo compile a specific example, run:\n\n```bash\nmake \u003cexample_name_without_extension\u003e\n```\n\nTo clean up and remove all compiled files, execute:\n\n```bash\nmake clean\n```\n\n\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE.md] file for details.\n\n## Acknowledgments\n\nThis project was inspired by the python [Awkward Array library](https://awkward-array.org/doc/main/index.html) .\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmohamedelashri%2Fjaggedcpp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmohamedelashri%2Fjaggedcpp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmohamedelashri%2Fjaggedcpp/lists"}