{"id":27349635,"url":"https://github.com/ixpantia/orbweaver-r","last_synced_at":"2025-04-12T19:26:54.050Z","repository":{"id":205920670,"uuid":"715335500","full_name":"ixpantia/orbweaver-r","owner":"ixpantia","description":"Orbweaver is an R package that optimizes the processing of graph data structures.","archived":false,"fork":false,"pushed_at":"2025-03-14T18:07:42.000Z","size":100176,"stargazers_count":16,"open_issues_count":1,"forks_count":9,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-14T19:22:07.726Z","etag":null,"topics":["graph-algorithms","orbweaver","r","rextendr","rust"],"latest_commit_sha":null,"homepage":"https://ixpantia.github.io/orbweaver-r/","language":"R","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ixpantia.png","metadata":{"files":{"readme":"README.Rmd","changelog":"NEWS.md","contributing":".github/CONTRIBUTING.md","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-11-06T23:54:41.000Z","updated_at":"2025-03-14T18:03:44.000Z","dependencies_parsed_at":"2024-06-20T02:40:42.221Z","dependency_job_id":"7e513547-effc-4650-93c6-a939c4a1a086","html_url":"https://github.com/ixpantia/orbweaver-r","commit_stats":null,"previous_names":["ixpantia/orbweaver"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ixpantia%2Forbweaver-r","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ixpantia%2Forbweaver-r/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ixpantia%2Forbweaver-r/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ixpantia%2Forbweaver-r/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ixpantia","download_url":"https://codeload.github.com/ixpantia/orbweaver-r/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248620330,"owners_count":21134619,"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":["graph-algorithms","orbweaver","r","rextendr","rust"],"created_at":"2025-04-12T19:26:51.551Z","updated_at":"2025-04-12T19:26:54.027Z","avatar_url":"https://github.com/ixpantia.png","language":"R","funding_links":[],"categories":[],"sub_categories":[],"readme":"---\noutput: github_document\n---\n\n\u003c!-- README.md is generated from README.Rmd. Please edit that file --\u003e\n\n```{r, include = FALSE}\nknitr::opts_chunk$set(\n  collapse = TRUE,\n  comment = \"#\u003e\",\n  fig.path = \"man/figures/README-\",\n  out.width = \"100%\"\n)\n```\n\n# orbweaver \u003ca\u003e\u003cimg src=\"https://storage.googleapis.com/ix-paquetes-internos/logo-orbweaver.png\" align=\"right\" width=\"30%\"\u003e\u003c/a\u003e\n\n\u003c!-- badges: start --\u003e\n[![CRAN status](https://www.r-pkg.org/badges/version/orbweaver)](https://cran.r-project.org/package=orbweaver)\n[![R-CMD-check](https://github.com/ixpantia/orbweaver-r/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/ixpantia/orbweaver-r/actions/workflows/R-CMD-check.yaml)\n\u003c!-- badges: end --\u003e\n\n## Overview\n\nA fast R library for working with Nodes in a graph.\n\n## Features\n\n - Find shortest paths between nodes in a graph\n - Find the common parents between selected nodes\n - Directed Graph\n - Directed Acyclic Graph\n - It is quite fast\n\n## Why not igraph?\n\n[igraph](https://igraph.org/) is an amazing network analysis package.\nigraph is much more mature and orbweaver focuses on extreme performance\nand low latency operations. If you need super high performance\nand do not require weighted graphs, orbweaver may be for you.\n\n![igraph vs orbweaver benchmark](man/figures/benchmark.png)\n\n\u003e We may add weighted graph in the future but for not\n\u003e it is not in the short-term road map.\n\n## Installation\n\n### Rust Toolchain\n\nBefore installing this package, you will need to install the\nRust toolchain. \n\n#### Mac or Linux\n\nIf you are on Mac or Linux, you can do this\nby running the following command in your terminal:\n\n```bash\ncurl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh\n```\n\n#### Windows\n\nIf you are on Windows, you can download the installer from\n[here](https://www.rust-lang.org/tools/install).\n\nIn order to compile this package manually, you will need the\n**GNU ABI** used by the **GCC toolchain**. This is not the\ndefault on Windows, so you will need to install the\ntoolchain manually. You can do this by running the following\ncommand in your terminal:\n\n```bash\nrustup toolchain install stable-gnu\n```\n\nIf you are on Windows you may need to install `Rtools` as\nwell. You can download the installer from\n[here](https://cran.r-project.org/bin/windows/Rtools/).\n\n### R Package\n\nYou can install orbweaver from CRAN with:\n\n```R\ninstall.packages(\"orbweaver\")\n```\n\nYou can install orbweaver from GitHub with:\n\n```R\n# install.packages(\"remotes\")\nremotes::install_github(\"ixpantia/orbweaver-r\")\n```\n\n## Example\n\n```{r}\nlibrary(orbweaver)\n\nedges \u003c- data.frame(\n  parent = c(\"A\", \"B\", \"C\", \"C\", \"F\"),\n  child = c(\"B\", \"C\", \"D\", \"E\", \"D\")\n)\n\ngraph \u003c- graph_builder() |\u003e\n  populate_edges(edges, \"parent\", \"child\") |\u003e\n  build_directed()\n\ngraph\n\ngraph |\u003e find_all_paths(from = \"A\", to = \"D\")\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fixpantia%2Forbweaver-r","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fixpantia%2Forbweaver-r","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fixpantia%2Forbweaver-r/lists"}