{"id":13583178,"url":"https://github.com/aMarcireau/origami","last_synced_at":"2025-04-06T18:32:00.846Z","repository":{"id":26902286,"uuid":"103294571","full_name":"aMarcireau/origami","owner":"aMarcireau","description":"An application to visualize scholar articles as an interactive graph","archived":false,"fork":false,"pushed_at":"2023-03-04T02:28:47.000Z","size":8206,"stargazers_count":19,"open_issues_count":19,"forks_count":1,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-11-05T23:41:33.033Z","etag":null,"topics":["doi","scholarly-articles","science","science-research"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aMarcireau.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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}},"created_at":"2017-09-12T16:23:09.000Z","updated_at":"2024-08-13T14:23:12.000Z","dependencies_parsed_at":"2024-04-08T16:58:57.837Z","dependency_job_id":"cd7438fe-a382-4445-9e38-74bbffedd329","html_url":"https://github.com/aMarcireau/origami","commit_stats":null,"previous_names":[],"tags_count":26,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aMarcireau%2Forigami","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aMarcireau%2Forigami/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aMarcireau%2Forigami/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aMarcireau%2Forigami/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aMarcireau","download_url":"https://codeload.github.com/aMarcireau/origami/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247531073,"owners_count":20953888,"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":["doi","scholarly-articles","science","science-research"],"created_at":"2024-08-01T15:03:18.611Z","updated_at":"2025-04-06T18:31:57.181Z","avatar_url":"https://github.com/aMarcireau.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003cimg src=\"images/banner.png\" width=\"400\"\u003e\n\u003c/p\u003e\n\nOrigami is an open-source research tool. It automatically scraps Google Scholar pages to retrieve \"cited by\" papers and presents the results as an interactive graph.\n\n![demo](images/demo.png \"A screenshot\")\n\n## Download\n\n| [\u003cdiv align=\"center\"\u003e\u003cimg src=\"images/linux.png\" width=\"50px\"/\u003e\u003c/div\u003e](https://github.com/aMarcireau/origami/releases/download/v0.11.1/Origami-linux-x64.zip) | [\u003cdiv align=\"center\"\u003e\u003cimg src=\"images/macos.png\" width=\"50px\"/\u003e\u003c/div\u003e](https://github.com/aMarcireau/origami/releases/download/v0.11.1/Origami-darwin-x64.zip) | [\u003cdiv align=\"center\"\u003e\u003cimg src=\"images/windows.png\" width=\"50px\"/\u003e\u003c/div\u003e](https://github.com/aMarcireau/origami/releases/download/v0.11.1/Origami-win32-x64.zip) |\n| ------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| [Download for Linux](https://github.com/aMarcireau/origami/releases/download/v0.11.1/Origami-linux-x64.zip)                                                   | [Download for macOS](https://github.com/aMarcireau/origami/releases/download/v0.11.1/Origami-darwin-x64.zip)                                                   | [Download for Windows](https://github.com/aMarcireau/origami/releases/download/v0.11.1/Origami-win32-x64.zip)                                                   |\n\nVisit the [Releases](https://github.com/aMarcireau/origami/releases) page to download Origami for other platforms.\n\n## Color theme\n\nTo change the color theme, edit `colors.json`. You can find it at:\n\n-   `Origami/resources/app/colors.json` on Linux\n-   `Origami.app/Contents/Resources/app/colors.json` on macOS (right-click on the app and choose _Show Package Contents_)\n-   `Origami\\resources\\app\\colors.json` on Windows\n\nThe `themes` directory of this repository contains several themes suggestions.\n\n## Formats\n\n### Multiple DOIs import\n\nOrigami can load several DOIs at once from a [JSON](https://www.json.org) formated file with the following structure:\n\n```yaml\n[\n    \"10.1109/biorob.2016.7523449\",\n    \"10.3389/fnins.2017.00350\",\n    \"10.3389/fnins.2017.00535\",\n    \"10.1109/tbcas.2017.2759700\",\n    \"10.3389/fnins.2016.00594\",\n    \"10.1007/s11263-017-1050-6\"\n]\n```\n\n### Saves\n\nOrigami saves and loads collections in [JSON](https://www.json.org) format. The generated files have the following structure:\n\n```yaml\n{\n  \"appVersion\": \"0.11.1\", # the version of the app used to generate this save\n  \"display\": 0, # the current display's index (0 for graph, 1 for list)\n  \"knownDois\": [\"10.1109/tpami.2016.2574707\"], # list of DOIs clicked at least once (used to highlight new publications)\n  \"crossref\": # pending requests to crossref.org\n    [\n      {\n        \"type\": \"CROSSREF_REQUEST_TYPE_VALIDATION\",\n        \"doi\": \"10.1038/nature06293\"\n      },\n      {\n        \"type\": \"CROSSREF_REQUEST_TYPE_CITER_METADATA\",\n        \"parentDoi\": \"10.1109/tpami.2016.2574707\",\n        \"title\": \"A Motion-Based Feature for Event-Based Pattern Recognition\",\n        \"authors\": [\"X Clady\", \"JM Maro\", \"S Barré\", \"RB Benosman\"],\n        \"dateAsString\": \"2017\"\n      },\n      {\n        \"type\": \"CROSSREF_REQUEST_TYPE_IMPORTED_METADATA\",\n        \"title\": \"EMVS: Event-Based Multi-View Stereo—3D Reconstruction with an Event Camera in Real-Time\",\n        \"authors\":\n          [\n            \"Henri Rebecq\",\n            \"Guillermo Gallego\",\n            \"Elias Mueggler\",\n            \"Davide Scaramuzza\"\n          ],\n        \"dateAsString\": \"2017\"\n      }\n    ],\n  \"doi\": [{ \"doi\": \"10.1038/nature06293\" }], # pending requests to doi.org\n  \"scholar\": [ # pending requests to scholar.google.com\n      \"requests\":\n        [\n          {\n            \"type\": \"SCHOLAR_REQUEST_TYPE_INITIALIZE\",\n            \"doi\": \"10.3389/fnins.2016.00594\",\n            \"url\": \"https://scholar.google.com/scholar?hl=en\u0026q=10.3389%2Ffnins.2016.00594\"\n          },\n          {\n            \"type\": \"SCHOLAR_REQUEST_TYPE_CITERS\",\n            \"doi\": \"10.1109/biorob.2016.7523449\",\n            \"url\": \"https://scholar.google.com/scholar?cites=3831926773876645447\u0026start=0\u0026hl=en\",\n            \"number\": 1,\n            \"total\": 1\n          }\n        ],\n      \"minimumRefractoryPeriod\": 2000, # minimum waiting time between scholar requests, in milliseconds\n      \"maximumRefractoryPeriod\": 8000 # maximum waiting time between scholar requests, in milliseconds\n    ],\n  \"graph\": {\n      \"threshold\": 1, # the current threshold used to filter suggestions, non-zero integer\n      \"zoom\": 0, # the current zoom level, integer in the range [-50, 50]\n      \"xOffset\": 0, # the current graph positions' x coordinate, float\n      \"yOffset\": 0, # the current graph positions' y coordinate, float\n      \"sticky\": false # false means that the 'sticky' box is unchecked\n    },\n  \"publications\": [ # list of known publications\n      [\n        # each publication is a two-elements list containg a string and an object\n        \"10.1109/tpami.2016.2574707\", # the publication's DOI\n        {\n          # object containing the publication's data\n          \"status\":\n            \"PUBLICATION_STATUS_IN_COLLECTION\" # the publication's status in Origami, which can be:\n            #     \"PUBLICATION_STATUS_UNVALIDATED\": the DOI was added, but not validated\n            #     \"PUBLICATION_STATUS_DEFAULT\": suggested publication\n            #     \"PUBLICATION_STATUS_IN_COLLECTION\": in-collection publication,\n          \"title\": \"HOTS: A Hierarchy of Event-Based Time-Surfaces for Pattern Recognition\",\n          \"authors\":\n            [\n              \"Xavier Lagorce\",\n              \"Garrick Orchard\",\n              \"Francesco Galluppi\",\n              \"Bertram E. Shi\",\n              \"Ryad B. Benosman\"\n            ],\n          \"journal\": \"Institute of Electrical and Electronics Engineers (IEEE)\",\n          \"date\": [2016, 7, 14], # the publication's release date, list of one to three integer values (optional month and day)\n          \"citers\":\n            [\n              \"10.1109/biorob.2016.7523449\",\n              \"10.3389/fnins.2017.00350\",\n              \"10.3389/fnins.2017.00535\",\n              \"10.1109/tbcas.2017.2759700\",\n              \"10.3389/fnins.2016.00594\",\n              \"10.1007/s11263-017-1050-6\"\n            ],\n          \"updated\": 1513430331442, # last metadata update, in milliseconds since 1970-01-01\n          \"selected\":\n            false # false means that the publication is not selected\n                  # only one publication can be selected\n          \"bibtex\": \"@article{...}\", # the article's BibTeX as a string\n          \"x\": 1.0813568646326681, # the publication's node position's x coordinate in the graph, float\n          \"y\": -1.563450690825733, # the publication's node position's y coordinate in the graph, float\n          \"locked\": false, # false means that the publication's node's position is not stuck\n        }\n      ]\n    ],\n  \"search\": \"\", # the current regular expression in the search input\n  \"tabs\": 0, # the active tab (0 for information, 1 for search, 2 for warnings)\n  \"warnings\": # list of warnings\n    [\n      {\n        \"title\": \"The Crossref request for 'Poker-DVS and MNIST-DVS. Their history, how they were made, and other details' failed\",\n        \"subtitle\": \"The returned article was older than the cited one (10.1109/tpami.2016.2574707)\",\n        \"level\": \"warning\"\n      }\n    ]\n}\n```\n\n## Contribute\n\n### Install\n\nOrigami is build with [Electron](https://electronjs.org), [React](https://reactjs.org) and [Redux](https://redux.js.org).\n\nFollow these steps to download the source code, edit and build Origami:\n\n1. install [Node.js](https://nodejs.org)\n2. clone the repository by running from a terminal `git clone https://github.com/aMarcireau/origami.git`\n3. go to the created _origami_ folder and run `npm install`\n\nFor development, run the command `npm run-script watch` from the _origami_ folder. A development build is triggered every time a file in the _souce_ directory is modified.\n\nTo create a new release:\n\n1. create a personal access token (see https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)\n2. create a file auth.json in the _origami_ directory with the following structure:\n\n```json\n{\n    \"username\": \"Github username\",\n    \"token\": \"personal access token\"\n}\n```\n\n3. generate a production build for each supported platform with `npm run-script build`\n4. create a new Github release (requires administration rights on this repository) with `npm run-script release`\n\nTo build Windows apps with macOS Catalina, one must patch Wine (see https://github.com/electron/node-rcedit/issues/51#issuecomment-546234084).\n\nCode documentation: [Wiki](https://github.com/aMarcireau/origami/wiki).\n\n## License\n\nSee the [LICENSE](LICENSE.txt) file for license rights and limitations (MIT).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FaMarcireau%2Forigami","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FaMarcireau%2Forigami","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FaMarcireau%2Forigami/lists"}