[![pipeline status](https://gitlab.com/nicolalandro/obj2html/badges/main/pipeline.svg)](https://gitlab.com/nicolalandro/obj2html/-/commits/main)
[![coverage report](https://gitlab.com/nicolalandro/obj2html/badges/main/coverage.svg)](https://gitlab.com/nicolalandro/obj2html/-/commits/main)

# Obj2Html
This lib is able to transform an .obj file to HTML that use three.js.
In this way it is possible to have an interactive 3D view that can be used on the browser or into a jupyter notebook.

* run into jupyter notebook
```
!pip install obj2html
from obj2html import obj2html
from IPython.display import display, HTML

obj_path = 'model.obj'
obj2html(obj_path, 'index.html')

display(HTML('index.html'))
```

## Features

- [x] .obj files support
- [ ] pipy delivery
- [ ] guide for notebook
- [ ] edit html positions and other 3D params
- [ ] load three.js as static file
- [ ] .mat files support

# Dev
```
python3.8 -m unittest discover


pip install coverage
python3.8 -m coverage run --source=src -m unittest discover
python3.8 -m coverage report -m
```

# References
In this chapter I add at least a link for each of the knowledge needed for develop this project.
* python
* git
* [how to write a setup.py](https://medium.com/@joel.barmettler/how-to-upload-your-python-package-to-pypi-65edc5fe9c56)
* python test
* coverage
* gitlab ci/cd
* three.js
