{"id":19210795,"url":"https://github.com/flekschas/sbb","last_synced_at":"2025-05-12T19:26:07.463Z","repository":{"id":19107388,"uuid":"22336013","full_name":"flekschas/sbb","owner":"flekschas","description":"Semantic Body Browser - a tool for graphically exploring an organism's body.","archived":false,"fork":false,"pushed_at":"2023-09-11T14:08:42.000Z","size":6253,"stargazers_count":36,"open_issues_count":0,"forks_count":12,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-04-20T17:37:47.703Z","etag":null,"topics":["body","human","javascript","mouse","semantic-web","svg"],"latest_commit_sha":null,"homepage":"http://sbb.cellfinder.org","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flekschas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.bib","codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2014-07-28T08:33:21.000Z","updated_at":"2025-03-28T01:35:58.000Z","dependencies_parsed_at":"2022-07-16T07:30:39.006Z","dependency_job_id":"735dd66d-c1f9-4804-8471-23c88dfcf085","html_url":"https://github.com/flekschas/sbb","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flekschas%2Fsbb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flekschas%2Fsbb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flekschas%2Fsbb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flekschas%2Fsbb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flekschas","download_url":"https://codeload.github.com/flekschas/sbb/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253807149,"owners_count":21967306,"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":["body","human","javascript","mouse","semantic-web","svg"],"created_at":"2024-11-09T13:38:04.072Z","updated_at":"2025-05-12T19:26:07.436Z","avatar_url":"https://github.com/flekschas.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Semantic Body Browser\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"http://semantic-body-browser.lekschas.de/images/teaser.jpg\"\n       alt=\"Semantic Body Browser\" /\u003e\n\u003c/p\u003e\n\nThis is the repository of the [Semantic Body Browser][sbb] web application. More\nbackground information about the project can be found on the project's\n[about][about] page.\n\n\n## Abstract\n\nThe Semantic Body Browser (SBB) is a web application for intuitively exploring\nthe body of an organism from the organ to the sub-cellular level and visualising\nexpression profiles by means of semantically annotated illustrations. It is used\nto comprehend biological and medical data related to the different body\nstructures while relying on the strong pattern recognition capabilities of human\nusers.\n\n\n## Installation\n\n### Requirements\n\nIn order to set up the Semantic Body Browser locally you need to have the\nfollowing up and running:\n\n* [Apache web server][ape] with [mod_rewrite][mrw] enabled\n* [Node.js][nodejs] with [NPM][npm]\n* [Sass][sass] (requires Ruby)\n* Internet connection\n* Modern [web browser][wb]\n\n### Install\n\n1. Check out the repository somewhere into your Apache document root directory:\n\n   `git clone https://github.com/flekschas/sbb /path/to/apache/root/somewhere`\n\n2. Edit `build.config.json` and set `apache_root` to your Apache document root\n   directory. (e.g. `/path/to/apache/root`)\n\n4. Install Grunt, Bower and Karma:\n  * `npm install -g grunt-cli bower`\n  * `npm install`\n  * `bower install`\n\n5. Build and compile the application:\n   `grunt`\n\n6. Point your favourite browser to `localhost/somewhere/bin`.\n\n7. Be happy and start exploring!\n\n\n## Contributions \u0026 Hacking\n\nIf you feel like hacking the SBB the easiest way to do so is to run\n`grunt watch`, open `localhost/somewhere/build` and activate [live reload][lr].\nAny changed to the source code will invoke the linting and testing and reload\nthe page automatically.\n\nIf you found bugs or have suggestions please let us know by [filing an issue][i]\non GitHub. In case you are so great and already fixed bugs or implemented a new\nfeature please send a [pull request][p].\n\n\n## Implementation\n\nThe Semantic Body Browser is a JavaScript web application build with Angular.\nWe make use of the following great frameworks and libraries:\n\n* [Angular][ng]\n* [Raphaël][rp]\n* [jQuery][jq]\n* [BindOnce][bo]\n* [Mousewheel][mw]\n* [Hammer.js][ha]\n* [FileSaver][fs]\n* [Blob][bl]\n* [Spin.js][sp]\n* [isMobile][im]\n\n### Folder Structure\n\nWe organise code by the *[folders-by-features][fbf]* directory structure and\nstick to the [LIFT][lift] paradigm.\n\n    app/\n        about/\n            directives/\n                directiveOne.html\n                directiveOne.js\n                directiveOne.spec.js\n                ...\n            filters/\n                filterOne.js\n                filterOne.spec.js\n                ...\n            services/\n                serviceOne.js\n                serviceOne.spec.js\n                ...\n            partials/\n                snippetOne.html\n                ...\n            controller.js\n            controller.spec.js\n            module.js\n            module.spec.js\n            route.js\n            template.html\n        browser/\n            ...\n        common/\n            ...\n        home/\n            ...\n        legals/\n            ...\n        app.config.js\n        app.controller.js\n        app.controller.spec.js\n        app.libraries.js\n        app.module.js\n        app.module.spec.js\n        app.settings.js\n    assets/\n        fonts/\n        illustrations/\n        images/\n    common/\n        directives/\n            directiveOne/\n                directiveOne.html\n                directiveOne.js\n                directiveOne.spec.js\n            ...\n        filters/\n            filterOne/\n                filterOne.js\n                filterOne.spec.js\n            ...\n        services/\n            serviceOne/\n                serviceOne.js\n                serviceOne.spec.js\n            ...\n    styles/\n        app.scss\n        ...\n    .htaccess\n    index.html\n\nIn general we omit prefixes for file names as they only make names longer\nwithout adding information that isn't already given by the folder structure. So\ninstead of for example `sbbAboutDirectiveNameOne.js` we just call them\n`nameOne.js`. Having said that the actual name of the directive, filter or\nservice keeps the prefix the same.\n\nAlso, we distinguish between directives, services and filter specific for:\n\n* a feature\n* the application\n* or are generic\n\n### Build System\n\nWe use [Grunt][grunt] for our build system and based it on \n[ngBoilerplate ][ngbp] and [Yeoman][yo].\n\n\n## License\n\nWeb application is licensed under [GNU General Public License (GPL) Version 3.0][gnu].\nUnless otherwise stated content is licensed under [Creative Commons BY-SA 4.0][cc].\n\nCopyright © 2012-2014 Lekschas et al.\n\n### Publication\n\nLekschas et al. (2015) **Semantic Body Browser: Graphical exploration of an\norganism and spatially resolved expression data visualization.**\n*Bioinformatics*, 31, 5, 794-796. [doi: 10.1093/bioinformatics/btu707][doi].\n\n[about]: http://sbb.cellfinder.org/about\n[ape]: https://httpd.apache.org/\n[bl]: https://github.com/eligrey/Blob.js\n[bo]: https://github.com/Pasvaz/bindonce\n[cc]: https://creativecommons.org/licenses/by-sa/4.0/\n[doi]: http://dx.doi.org/10.1093/bioinformatics/btu707\n[fbf]: https://github.com/johnpapa/angularjs-styleguide#application-structure-lift-principle\n[fs]: https://github.com/eligrey/FileSaver.js\n[gnu]: LICENSE\n[grunt]: http://gruntjs.com/\n[ha]: https://github.com/hammerjs/hammer.js\n[i]: https://github.com/flekschas/sbb/issues\n[im]: https://github.com/kaimallea/isMobile\n[jq]: https://github.com/jquery/jquery\n[lift]: https://github.com/johnpapa/angularjs-styleguide#application-structure-lift-principle\n[lr]: http://livereload.com/\n[mrw]: https://httpd.apache.org/docs/current/mod/mod_rewrite.html\n[mw]: https://github.com/brandonaaron/jquery-mousewheel\n[ng]: https://github.com/angular/angular.js\n[ngbp]: https://github.com/ngbp/ngbp\n[nodejs]: http://nodejs.org/\n[npm]: https://www.npmjs.org/\n[p]: https://github.com/flekschas/sbb/pulls\n[rp]: https://github.com/DmitryBaranovskiy/raphael/\n[sass]: http://sass-lang.com\n[sbb]: http://sbb.cellfinder.org\n[sp]: https://github.com/fgnass/spin.js\n[wb]: http://sbb.cellfinder.org/about#compatability\n[yo]: https://github.com/yeoman/generator-angular\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflekschas%2Fsbb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflekschas%2Fsbb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflekschas%2Fsbb/lists"}