semvec/pypi-packages huggingface dataset:
nbtty 1.1.1
Run web tty from jupyter notebooks

# NB TTY
### Web :globe_with_meridians: terminal :computer: for jupyter notebooks :notebook:.

Today many cloud services provide jupyter notebooks as a service to users, e.g. Google colab, Kaggle Kernel, Microsoft Azure Notebooks ... These services are great, easy to use, people do not have to install jupyter, CUDA, or GPU driver themselves. However without access to the shell, my data science workflow is quite inefficient because I use commandline heavily.

So I create this little tool.  It starts a web shell (gotty) locally and exposes the shell to the ngrok. Then you can use the in  the browser, gotty is pretty powerful and the user experience is very similar to the real terminal.

## Usage
1. Install nbtty inside a jupyter notebook like other Python packages:
```
！pip install nbtty
```

3. Start the web tty, it will print the url of the web shell when service is ready:
```python
from nbtty import TTY
TTY().start()
```
## Screenshots
![alt text](https://github.com/glasslion/nbtty/raw/master/assets/images/Screenshot_20190321_174407.png)
![alt text](https://github.com/glasslion/nbtty/raw/master/assets/images/Screenshot_20190321_174544.png)
![alt text](https://raw.githubusercontent.com/glasslion/nbtty/master/assets/images/Screenshot_20190321_174627.png)

## Acknowledgments
- ngrok
- [gotty](https://github.com/yudai/gotty)
BSMILES 0.0.1
transformation between smiles and bsmiles

# transformation between smiles and bsmiles
All chemical molecules can be represented by SMILES notation. But from SMILES notation, can not seperate molecules into fragments directly. Here I create a new notation called BSMILES which is easier to check each fragment.

Example:

  SMILES notation: O(=C1CSC(c4ccccn4)N(c2ccc3c(cccc3)c2)1)   

  BSMILES notation: O{0=C!CSCN!{4c%ccc!c(cccc!)c%}{3c!ccccn!}}

  ## how to convert SMILES to BSMILES
    from BSMILES.BSMILES import encode 

     bsmiles = encode(smiles)

  ## how to convert BSMILES back to SMILES
    from BSMILES.B_to_smiles import convertB 

    smiles = convertB(bsmiles)

  ## how to get fragments from BSMILES notation
  1. input one file then got one output file
    from BSMILES.B_to_smiles import bsmiles_to_frag 

    inputfile_name ="bsmiles"
    outputfile_name="fragment"
    bsmiles_to_frag(inputfile_name,outputfile_name)

  2. input one bsmiles string return two vectors, the second one contains fragments.
    from BSMILES.B_to_smiles import getFragments

    bsmiles = "any_kind_of_bsmiles"
    visited = []#contain all unique fragments from bsmiles
    fragments = []#contain all fragments
    visited,bsmiles = getFragments(visited,bsmiles)
scvf 1.1.2
a framework that wraps opencv for our needs in FRC

# Spikes ComputerVision Framework

Spikes ComputerVision Framework, or scvf for short,
  is a framework that is made to make programming CV for the FRC easier
  
This framework wraps [opencv](www.opencv.org) and pipelines generated by [grip](https://wpiroboticsprojects.github.io/GRIP/#/)
in a way that is efficient and elegant.

Installation Instructions:

```
$ python3 -m pip install scvf
```
## API

#### communication through network tables
use the ```pipeline_name``` key to send the pipeline_name <br/>
use the ```camera_id``` key to send the camera id <br/>
use the ```exposure``` key to send the exposure for the camera

#### pipeline compatibility
Though we recommend grip as the main tool to generate cv2 pipelines
using grip is not strictly required <br/>
You can provide any object to server as a pipeline as long as it contains the next two methods: <br>
```process()``` - a method that processes a given image <br/>
```get_output()``` - a method that returns the output of the processing

#### IO functions 
scvf receives two functions that are responsible for communications with external data sources. <br/>
1. ```settings_supplier(callback)``` this function receives settings and supplies them to callback provided to it.
2. ```output_consumer(output)``` this function sends the output of the image processing to it's next destination
## Notes

#### GRIP and SCVF compatibility
if you are using [grip](https://wpiroboticsprojects.github.io/GRIP/#/)
to generate your pipelines keep in mind that the pipelines generated from it
 aren't compatible with scvf out of the box due to differences between python3 and python2
 
as of now, these changes are required:

* change the enum for the [blur](https://docs.opencv.org/2.4/doc/tutorials/imgproc/gausian_median_blur_bilateral_filter/gausian_median_blur_bilateral_filter.html) type to a [python3-enum](https://docs.python.org/3/library/enum.html)
* change the findContours function as instructed [here](https://stackoverflow.com/questions/25504964/opencv-python-valueerror-too-many-values-to-unpack)
* add a ```get_output()``` method that is compatible with the API specified above

##### Opencv 4
* Switch between the `im2` and contour `contours` variables in the `filter_contours` function of your pipeline
#### IO implementations
* make sure that your custom ```output_consumer``` is compatible with the output provided by your pipelines.