Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/athos/igv-client
Clojure implementation of IGV client to control IGV via its Port Commands
https://github.com/athos/igv-client
clojure igv
Last synced: about 1 month ago
JSON representation
Clojure implementation of IGV client to control IGV via its Port Commands
- Host: GitHub
- URL: https://github.com/athos/igv-client
- Owner: athos
- License: epl-2.0
- Created: 2019-01-18T06:48:35.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-11-20T21:15:22.000Z (about 1 year ago)
- Last Synced: 2024-08-16T16:24:15.651Z (4 months ago)
- Topics: clojure, igv
- Language: Clojure
- Size: 16.6 KB
- Stars: 4
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# igv-client
[![Clojars Project](https://img.shields.io/clojars/v/igv-client.svg)](https://clojars.org/igv-client)
[![CircleCI](https://circleci.com/gh/athos/igv-client.svg?style=shield)](https://circleci.com/gh/athos/igv-client)Clojure implementation of IGV client to control [IGV](http://software.broadinstitute.org/software/igv/) via its [Port Commands](https://igv.org/doc/desktop/#UserGuide/advanced/external_control/#port-commands)
## Installation
Add the following to your `:dependencies`:
[![Clojars Project](https://clojars.org/igv-client/latest-version.svg)](https://clojars.org/igv-client)
## Usage
```clojure
(require '[igv-client.core :as igv])(def client (igv/connect "127.0.0.1" 60151))
(igv/set-snapshot-dir! client "/path/to/snapshot/dir")(igv/reset client)
(igv/load-file client "/path/to/your/input/file")
(igv/goto client "chr1" 123456)
(igv/collapse client)
(igv/snapshot client)
(.close client);; or you can also write the same thing with the threading macro:
(-> client
igv/reset
(igv/load-file "/path/to/your/input/file")
(igv/goto "chr1" 123456)
igv/collapse
igv/snapshot
.close)
```## Available Commands
Following is the list of commands available:
| Command Name | Function Signature |
|-----------------------|-----------------------------------------|
| `version` | `(version )` |
| `new`/`reset`/`clear` | `(reset )` |
| `load`/`loadfile` | `(load-file )` |
| `remove` | `(remove )` |
| `genome` | `(genome )` |
| `goto` | `(goto )` |
| | `(goto )` |
| `gototrack` | `(goto-track )` |
| `setsleepinterval` | `(set-sleep-interval! )` |
| `snapshotdirectory` | `(set-snapshot-dir! )` |
| `snapshot` | `(snapshot )` |
| `zoomin` | `(zoom-in )` |
| `zoomout` | `(zoom-out )` |
| `collapse` | `(collapse [])` |
| `expand` | `(expand [])` |
| `squish` | `(squish [])` |
| `tofront` | `(bring-to-front! )` |## License
Copyright © 2019 Shogo Ohta
This program and the accompanying materials are made available under the
terms of the Eclipse Public License 2.0 which is available at
http://www.eclipse.org/legal/epl-2.0.This Source Code may also be made available under the following Secondary
Licenses when the conditions for such availability set forth in the Eclipse
Public License, v. 2.0 are satisfied: GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or (at your
option) any later version, with the GNU Classpath Exception which is available
at https://www.gnu.org/software/classpath/license.html.