diff options
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | python-forgebox.spec | 571 | ||||
| -rw-r--r-- | sources | 1 |
3 files changed, 573 insertions, 0 deletions
@@ -0,0 +1 @@ +/forgebox-1.0.9.tar.gz diff --git a/python-forgebox.spec b/python-forgebox.spec new file mode 100644 index 0000000..0ba4bb5 --- /dev/null +++ b/python-forgebox.spec @@ -0,0 +1,571 @@ +%global _empty_manifest_terminate_build 0 +Name: python-forgebox +Version: 1.0.9 +Release: 1 +Summary: please add a summary manually as the author left a blank one +License: GPLv3+ +URL: https://github.com/raynardj/forgebox +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/dd/05/4cb9ed80633842e0f34ba1175caa3a421bf830c3e4b9102c588b0de66eda/forgebox-1.0.9.tar.gz +BuildArch: noarch + +Requires: python3-category + +%description +# ForgeBox + +[](https://pypi.org/project/forgebox/) + + + +[](https://github.com/raynardj/forgebox/actions/workflows/publish.yml) +[](https://github.com/raynardj/forgebox/actions/workflows/test.yml) + +> Data science comprehensive toolbox + +## Installation + +Easy simple installation in 1 line +```shell +pip install forgebox +``` + +If not specified, you need anaconda3 for most of the tools. + +See [nbs](./nbs) for most of the applications + +## Features 🚀 Briefing + +> This is a tool box with comprehensive **utilies**, to put it simply, I just hope most of my frequetyly used DIY tools in one place and can be easily **installed and imported** + +### Lazy, fast imports 🤯 + +The following command will import many frequent tools for data science, like **pd** for pandas, **np** for numpy, os, json, PIL.Image for image processing + +```python +from frogebox.imports import * +``` + +No more following verbosity +```python +import pandas as pd +import numpy as np +import os +import json +... +``` +### Get a dataframe of file details under a directory + +```python +from forgebox.files import file_detail +``` + +```python +file_detail("/Users/xiaochen.zhang/.cache/").sample(5) +``` + +<div> +<table border="1" class="dataframe"> + <thead> + <tr style="text-align: right;"> + <th></th> + <th>path</th> + <th>file_type</th> + <th>parent</th> + <th>depth</th> + </tr> + </thead> + <tbody> + <tr> + <td>36</td> + <td>/Users/xiaochen.zhang/.cache/torch/transformer...</td> + <td>json</td> + <td>transformers</td> + <td>7</td> + </tr> + <tr> + <td>13</td> + <td>/Users/xiaochen.zhang/.cache/torch/transformer...</td> + <td>json</td> + <td>transformers</td> + <td>7</td> + </tr> + <tr> + <td>51</td> + <td>/Users/xiaochen.zhang/.cache/langhuan/task_NER...</td> + <td>json</td> + <td>task_NER_210121_140513</td> + <td>7</td> + </tr> + <tr> + <td>32</td> + <td>/Users/xiaochen.zhang/.cache/torch/transformer...</td> + <td>lock</td> + <td>transformers</td> + <td>7</td> + </tr> + <tr> + <td>58</td> + <td>/Users/xiaochen.zhang/.cache/langhuan/task_Cla...</td> + <td>json</td> + <td>task_Classify_210128_164710</td> + <td>7</td> + </tr> + </tbody> +</table> +</div> + + +### HTML in notebook + +```python +from forgebox.html import DOM, list_group, list_group_kv +``` + +This will map a clear HTML table view of wild tree type json structure/ list + +```python +bands = ["police", "headpin", {"ac":"dc"}] +list_group(bands)() +``` + +#### Coding html in python + +```python +title = DOM("Title example","h5", kwargs={"style":"color:#3399EE"}) +ul = DOM("","ul"); +for i in range(5): + ul = ul.append(DOM(f"Line {i}", "li", kwargs={"style":"color:#EE33DD"})) + +title() +ul() +``` + + +<h5 style="color:#3399EE">Title example</h5> + + + +<ul><li style="color:#EE33DD">Line 0</li><li style="color:#EE33DD">Line 1</li><li style="color:#EE33DD">Line 2</li><li style="color:#EE33DD">Line 3</li><li style="color:#EE33DD">Line 4</li></ul> + + +### Interactive Widgets +> Interactive widgets work with in jupyter notebooks + +#### Search box 🔎 for dataframe +This will create an interactive text input box to search through the pandas dataframe, within the columns you set. + +if ```manual``` is set to False, the search will respond to **each of your key press**, it's fast but will suffer terrible user experience if the dataframe is huge in size. + +```python +from forgebox.widgets import search_box + +search_box(data_df, columns=["col1","col2"], manual=False) +``` + +#### paginate +You can browse through a pandas dataframe like fliping pages 📄. + +```python +# this will import many things like enhanced pandas +from forgebox.imports import * +df = pd.read_csv("xxxx.csv") +df.paginate() +``` + +```python +from forgebox.widgets import paginate + +paginate(your_dataframe, page_len=10) +``` + + +%package -n python3-forgebox +Summary: please add a summary manually as the author left a blank one +Provides: python-forgebox +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-forgebox +# ForgeBox + +[](https://pypi.org/project/forgebox/) + + + +[](https://github.com/raynardj/forgebox/actions/workflows/publish.yml) +[](https://github.com/raynardj/forgebox/actions/workflows/test.yml) + +> Data science comprehensive toolbox + +## Installation + +Easy simple installation in 1 line +```shell +pip install forgebox +``` + +If not specified, you need anaconda3 for most of the tools. + +See [nbs](./nbs) for most of the applications + +## Features 🚀 Briefing + +> This is a tool box with comprehensive **utilies**, to put it simply, I just hope most of my frequetyly used DIY tools in one place and can be easily **installed and imported** + +### Lazy, fast imports 🤯 + +The following command will import many frequent tools for data science, like **pd** for pandas, **np** for numpy, os, json, PIL.Image for image processing + +```python +from frogebox.imports import * +``` + +No more following verbosity +```python +import pandas as pd +import numpy as np +import os +import json +... +``` +### Get a dataframe of file details under a directory + +```python +from forgebox.files import file_detail +``` + +```python +file_detail("/Users/xiaochen.zhang/.cache/").sample(5) +``` + +<div> +<table border="1" class="dataframe"> + <thead> + <tr style="text-align: right;"> + <th></th> + <th>path</th> + <th>file_type</th> + <th>parent</th> + <th>depth</th> + </tr> + </thead> + <tbody> + <tr> + <td>36</td> + <td>/Users/xiaochen.zhang/.cache/torch/transformer...</td> + <td>json</td> + <td>transformers</td> + <td>7</td> + </tr> + <tr> + <td>13</td> + <td>/Users/xiaochen.zhang/.cache/torch/transformer...</td> + <td>json</td> + <td>transformers</td> + <td>7</td> + </tr> + <tr> + <td>51</td> + <td>/Users/xiaochen.zhang/.cache/langhuan/task_NER...</td> + <td>json</td> + <td>task_NER_210121_140513</td> + <td>7</td> + </tr> + <tr> + <td>32</td> + <td>/Users/xiaochen.zhang/.cache/torch/transformer...</td> + <td>lock</td> + <td>transformers</td> + <td>7</td> + </tr> + <tr> + <td>58</td> + <td>/Users/xiaochen.zhang/.cache/langhuan/task_Cla...</td> + <td>json</td> + <td>task_Classify_210128_164710</td> + <td>7</td> + </tr> + </tbody> +</table> +</div> + + +### HTML in notebook + +```python +from forgebox.html import DOM, list_group, list_group_kv +``` + +This will map a clear HTML table view of wild tree type json structure/ list + +```python +bands = ["police", "headpin", {"ac":"dc"}] +list_group(bands)() +``` + +#### Coding html in python + +```python +title = DOM("Title example","h5", kwargs={"style":"color:#3399EE"}) +ul = DOM("","ul"); +for i in range(5): + ul = ul.append(DOM(f"Line {i}", "li", kwargs={"style":"color:#EE33DD"})) + +title() +ul() +``` + + +<h5 style="color:#3399EE">Title example</h5> + + + +<ul><li style="color:#EE33DD">Line 0</li><li style="color:#EE33DD">Line 1</li><li style="color:#EE33DD">Line 2</li><li style="color:#EE33DD">Line 3</li><li style="color:#EE33DD">Line 4</li></ul> + + +### Interactive Widgets +> Interactive widgets work with in jupyter notebooks + +#### Search box 🔎 for dataframe +This will create an interactive text input box to search through the pandas dataframe, within the columns you set. + +if ```manual``` is set to False, the search will respond to **each of your key press**, it's fast but will suffer terrible user experience if the dataframe is huge in size. + +```python +from forgebox.widgets import search_box + +search_box(data_df, columns=["col1","col2"], manual=False) +``` + +#### paginate +You can browse through a pandas dataframe like fliping pages 📄. + +```python +# this will import many things like enhanced pandas +from forgebox.imports import * +df = pd.read_csv("xxxx.csv") +df.paginate() +``` + +```python +from forgebox.widgets import paginate + +paginate(your_dataframe, page_len=10) +``` + + +%package help +Summary: Development documents and examples for forgebox +Provides: python3-forgebox-doc +%description help +# ForgeBox + +[](https://pypi.org/project/forgebox/) + + + +[](https://github.com/raynardj/forgebox/actions/workflows/publish.yml) +[](https://github.com/raynardj/forgebox/actions/workflows/test.yml) + +> Data science comprehensive toolbox + +## Installation + +Easy simple installation in 1 line +```shell +pip install forgebox +``` + +If not specified, you need anaconda3 for most of the tools. + +See [nbs](./nbs) for most of the applications + +## Features 🚀 Briefing + +> This is a tool box with comprehensive **utilies**, to put it simply, I just hope most of my frequetyly used DIY tools in one place and can be easily **installed and imported** + +### Lazy, fast imports 🤯 + +The following command will import many frequent tools for data science, like **pd** for pandas, **np** for numpy, os, json, PIL.Image for image processing + +```python +from frogebox.imports import * +``` + +No more following verbosity +```python +import pandas as pd +import numpy as np +import os +import json +... +``` +### Get a dataframe of file details under a directory + +```python +from forgebox.files import file_detail +``` + +```python +file_detail("/Users/xiaochen.zhang/.cache/").sample(5) +``` + +<div> +<table border="1" class="dataframe"> + <thead> + <tr style="text-align: right;"> + <th></th> + <th>path</th> + <th>file_type</th> + <th>parent</th> + <th>depth</th> + </tr> + </thead> + <tbody> + <tr> + <td>36</td> + <td>/Users/xiaochen.zhang/.cache/torch/transformer...</td> + <td>json</td> + <td>transformers</td> + <td>7</td> + </tr> + <tr> + <td>13</td> + <td>/Users/xiaochen.zhang/.cache/torch/transformer...</td> + <td>json</td> + <td>transformers</td> + <td>7</td> + </tr> + <tr> + <td>51</td> + <td>/Users/xiaochen.zhang/.cache/langhuan/task_NER...</td> + <td>json</td> + <td>task_NER_210121_140513</td> + <td>7</td> + </tr> + <tr> + <td>32</td> + <td>/Users/xiaochen.zhang/.cache/torch/transformer...</td> + <td>lock</td> + <td>transformers</td> + <td>7</td> + </tr> + <tr> + <td>58</td> + <td>/Users/xiaochen.zhang/.cache/langhuan/task_Cla...</td> + <td>json</td> + <td>task_Classify_210128_164710</td> + <td>7</td> + </tr> + </tbody> +</table> +</div> + + +### HTML in notebook + +```python +from forgebox.html import DOM, list_group, list_group_kv +``` + +This will map a clear HTML table view of wild tree type json structure/ list + +```python +bands = ["police", "headpin", {"ac":"dc"}] +list_group(bands)() +``` + +#### Coding html in python + +```python +title = DOM("Title example","h5", kwargs={"style":"color:#3399EE"}) +ul = DOM("","ul"); +for i in range(5): + ul = ul.append(DOM(f"Line {i}", "li", kwargs={"style":"color:#EE33DD"})) + +title() +ul() +``` + + +<h5 style="color:#3399EE">Title example</h5> + + + +<ul><li style="color:#EE33DD">Line 0</li><li style="color:#EE33DD">Line 1</li><li style="color:#EE33DD">Line 2</li><li style="color:#EE33DD">Line 3</li><li style="color:#EE33DD">Line 4</li></ul> + + +### Interactive Widgets +> Interactive widgets work with in jupyter notebooks + +#### Search box 🔎 for dataframe +This will create an interactive text input box to search through the pandas dataframe, within the columns you set. + +if ```manual``` is set to False, the search will respond to **each of your key press**, it's fast but will suffer terrible user experience if the dataframe is huge in size. + +```python +from forgebox.widgets import search_box + +search_box(data_df, columns=["col1","col2"], manual=False) +``` + +#### paginate +You can browse through a pandas dataframe like fliping pages 📄. + +```python +# this will import many things like enhanced pandas +from forgebox.imports import * +df = pd.read_csv("xxxx.csv") +df.paginate() +``` + +```python +from forgebox.widgets import paginate + +paginate(your_dataframe, page_len=10) +``` + + +%prep +%autosetup -n forgebox-1.0.9 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-forgebox -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 1.0.9-1 +- Package Spec generated @@ -0,0 +1 @@ +c5e8e94603cbf5f831df6f214a87ca43 forgebox-1.0.9.tar.gz |
