# 🌀 ferfereh
🌀 `ferfereh` is a 3d-printed piece of graffiti with a cloud-generated [map](https://raw.githubusercontent.com/kamangir/ferfereh/main/coords.geojson).
```bash
pip install ferfereh
```
```bash
> ferfereh help
ferfereh cleanup
. cleanup ferfereh.
ferfereh exif get \
[-] \
<filename.jpg>
. get exif.
ferfereh exif install
. install exif.
ferfereh exif put \
[~backup,dryrun,lat=<lat>,lon=<lon>,validate] \
<filename.jpg>
. put exif.
ferfereh publish coords \
[~downloads]
. publish ferfereh coords.
ferfereh publish 3d-files
. publish ferfereh 3d-files.
```
| [![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/gen5.jpg)](#gen5) | [![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/gen6-c2.jpg)](#gen6) | [![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/gen6-s.jpg)](#gen6) | [![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/gen7-2.jpg)](#gen7) |
| ------------------------------------ | --------------------------------------- | -------------------------------------- | -------------------------------------- |
# brackets
## gen5
![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/gen5.png)
- [gen5.stl](https://raw.githubusercontent.com/kamangir/ferfereh/main/3d/gen5.stl)
## gen6
![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/gen6.png)
- [gen6-c4](https://raw.githubusercontent.com/kamangir/ferfereh/main/3d/gen6-c4.stl)
- [gen6-d32](https://raw.githubusercontent.com/kamangir/ferfereh/main/3d/gen6-d32.stl)
- [gen6-s4](https://raw.githubusercontent.com/kamangir/ferfereh/main/3d/gen6-s4.stl)
## gen7
![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/gen7.png)
- [gen7-2](https://raw.githubusercontent.com/kamangir/ferfereh/main/3d/gen7-2.stl)
# tools & materials
| item | image | examples |
| ------------------------------------------------------------------------- | --------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
| 2 mm solid brass rods | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/solid-brass-bars.jpeg) | https://www.amazon.ca/gp/product/B089LDXN22 |
| aviation snips | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/aviation-snips.jpeg) | |
| (multiple) bags to carry the brackets, tools, and other materials to site | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/bags.jpeg) | |
| cutting nippers | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/cutting-nippers.jpeg) | |
| mini pliers | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/mini-pliers.jpeg) | |
| propeller fan | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/propellers.jpeg) | https://www.adafruit.com/product/3896, https://www.amazon.ca/gp/product/B091TBQ7CK |
| double-sided, outdoor, water-resistant, mounting tape | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/mounting-tape.jpeg) | |
| multi bit electronics screwdriver | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/multi-bit-electronics-screwdriver.jpeg) | |
| precision craft knife w/ spare blade | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/precision-craft-knife.jpeg) | |
| small hammer | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/small-hammer.jpeg) | |
| M3 Nylon Machine Screws | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/screws.jpg) | https://www.amazon.ca/gp/product/B012TACIBC |
---
[![PyPI version](https://img.shields.io/pypi/v/ferfereh.svg)](https://pypi.org/project/ferfereh/)
Raw data
{
"_id": null,
"home_page": "https://github.com/kamangir/ferfereh",
"name": "ferfereh",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": null,
"author": "Arash Abadpour (Kamangir)",
"author_email": "arash@kamangir.net",
"download_url": "https://files.pythonhosted.org/packages/9f/58/3516aaa0bf9d2f3ea4df427622b57464df1f947f8cb3404bb4e5a0516217/ferfereh-1.148.1.tar.gz",
"platform": null,
"description": "# \ud83c\udf00 ferfereh\n\n\ud83c\udf00 `ferfereh` is a 3d-printed piece of graffiti with a cloud-generated [map](https://raw.githubusercontent.com/kamangir/ferfereh/main/coords.geojson).\n\n```bash\npip install ferfereh\n```\n\n```bash\n > ferfereh help\nferfereh cleanup\n . cleanup ferfereh.\nferfereh exif get \\\n\t[-] \\\n\t<filename.jpg>\n . get exif.\nferfereh exif install\n . install exif.\nferfereh exif put \\\n\t[~backup,dryrun,lat=<lat>,lon=<lon>,validate] \\\n\t<filename.jpg>\n . put exif.\nferfereh publish coords \\\n\t[~downloads]\n . publish ferfereh coords.\nferfereh publish 3d-files\n . publish ferfereh 3d-files.\n```\n\n| [![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/gen5.jpg)](#gen5) | [![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/gen6-c2.jpg)](#gen6) | [![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/gen6-s.jpg)](#gen6) | [![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/gen7-2.jpg)](#gen7) |\n| ------------------------------------ | --------------------------------------- | -------------------------------------- | -------------------------------------- |\n\n# brackets\n\n## gen5\n\n![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/gen5.png)\n\n- [gen5.stl](https://raw.githubusercontent.com/kamangir/ferfereh/main/3d/gen5.stl)\n\n## gen6\n\n![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/gen6.png)\n\n- [gen6-c4](https://raw.githubusercontent.com/kamangir/ferfereh/main/3d/gen6-c4.stl)\n- [gen6-d32](https://raw.githubusercontent.com/kamangir/ferfereh/main/3d/gen6-d32.stl)\n- [gen6-s4](https://raw.githubusercontent.com/kamangir/ferfereh/main/3d/gen6-s4.stl)\n\n## gen7\n\n![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/gen7.png)\n\n- [gen7-2](https://raw.githubusercontent.com/kamangir/ferfereh/main/3d/gen7-2.stl)\n\n# tools & materials\n\n| item | image | examples |\n| ------------------------------------------------------------------------- | --------------------------------------------------------------- | ---------------------------------------------------------------------------------- |\n| 2 mm solid brass rods | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/solid-brass-bars.jpeg) | https://www.amazon.ca/gp/product/B089LDXN22 |\n| aviation snips | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/aviation-snips.jpeg) | |\n| (multiple) bags to carry the brackets, tools, and other materials to site | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/bags.jpeg) | |\n| cutting nippers | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/cutting-nippers.jpeg) | |\n| mini pliers | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/mini-pliers.jpeg) | |\n| propeller fan | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/propellers.jpeg) | https://www.adafruit.com/product/3896, https://www.amazon.ca/gp/product/B091TBQ7CK |\n| double-sided, outdoor, water-resistant, mounting tape | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/mounting-tape.jpeg) | |\n| multi bit electronics screwdriver | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/multi-bit-electronics-screwdriver.jpeg) | |\n| precision craft knife w/ spare blade | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/precision-craft-knife.jpeg) | |\n| small hammer | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/small-hammer.jpeg) | |\n| M3 Nylon Machine Screws | ![image](https://raw.githubusercontent.com/kamangir/ferfereh/main/images/tools/screws.jpg) | https://www.amazon.ca/gp/product/B012TACIBC |\n\n---\n\n[![PyPI version](https://img.shields.io/pypi/v/ferfereh.svg)](https://pypi.org/project/ferfereh/)\n",
"bugtrack_url": null,
"license": "Public Domain",
"summary": "\ud83c\udf00 3d-printed graffiti.",
"version": "1.148.1",
"project_urls": {
"Homepage": "https://github.com/kamangir/ferfereh"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "3651a3d157fd6636e78db8ba5aa6631536ebaf6392d4501a012d3b1e9c7a4002",
"md5": "eaef79f95bbc59c7f0a70b0cc8cb83fc",
"sha256": "b990d17fe3bb3c2a7621fe62177b47ad611c4ffd13cc63dd16a83af2ac84de19"
},
"downloads": -1,
"filename": "ferfereh-1.148.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "eaef79f95bbc59c7f0a70b0cc8cb83fc",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 7880,
"upload_time": "2024-10-13T20:07:58",
"upload_time_iso_8601": "2024-10-13T20:07:58.739932Z",
"url": "https://files.pythonhosted.org/packages/36/51/a3d157fd6636e78db8ba5aa6631536ebaf6392d4501a012d3b1e9c7a4002/ferfereh-1.148.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9f583516aaa0bf9d2f3ea4df427622b57464df1f947f8cb3404bb4e5a0516217",
"md5": "131aabba511b20272149651d207936bb",
"sha256": "fdf784d74a3d65e02f74daf76f155cf551ff1c291424ed972721ae6fe2a11658"
},
"downloads": -1,
"filename": "ferfereh-1.148.1.tar.gz",
"has_sig": false,
"md5_digest": "131aabba511b20272149651d207936bb",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7131,
"upload_time": "2024-10-13T20:07:59",
"upload_time_iso_8601": "2024-10-13T20:07:59.708012Z",
"url": "https://files.pythonhosted.org/packages/9f/58/3516aaa0bf9d2f3ea4df427622b57464df1f947f8cb3404bb4e5a0516217/ferfereh-1.148.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-13 20:07:59",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "kamangir",
"github_project": "ferfereh",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "blueness",
"specs": []
},
{
"name": "abcli",
"specs": []
},
{
"name": "boto3",
"specs": []
},
{
"name": "geojson",
"specs": []
},
{
"name": "geopandas",
"specs": []
},
{
"name": "matplotlib",
"specs": []
},
{
"name": "opencv-python",
"specs": []
},
{
"name": "pymysql",
"specs": [
[
"==",
"0.10.1"
]
]
},
{
"name": "pyyaml",
"specs": []
},
{
"name": "pylint",
"specs": []
},
{
"name": "pytest",
"specs": []
},
{
"name": "python-dotenv",
"specs": []
},
{
"name": "tqdm",
"specs": []
}
],
"lcname": "ferfereh"
}