Skip to content
Flying Animal

Jupyter Forge Library Released

🕒 Published at:

🍫Description

Jupyter Forge is a powerful library that seamlessly integrates Autodesk Platform Services with Jupyter Notebooks, enabling interactive 3D viewing and exploration within your notebook environment.

⚡Features

🦞Installation

bash
pip install jupyter-forge --upgrade

🙋🏻‍♂️Requirements

  • Python 3.9+

  • Setting Environment Variables, see Tutorial Create an App

Set Environment Variables

bash
APS_CLIENT_ID=your_client_id
APS_CLIENT_SECRET=your_client_secret

🍽️Usage

python
from jupyter_forge import JupyterForge
from aps_toolkit import Auth

urn = "dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLlFsa1ZtVU5RUmYtanMtd3dLQ2dLM1E_dmVyc2lvbj0x"
token = Auth().auth2leg()
forge_viewer = JupyterForge(urn, token)

## CASE 1 : NONE OBJECTS IDS ISOLATE VIEWER
forge_viewer.show(width=800, height=600)
## CASE 2 : OBJECTS IDS ISOLATE VIEWER
# object id from derivative api
object_ids = [123, 456]
forge_viewer.show(object_ids, width=800, height=600)

©️License

This project is licensed under the Apache License.

💥Contributing

This is project just research in my free time and don't have any power to keep it up to date. If you want to contribute, please feel free to fork and submit a pull request.

🎁 Sponsors

Thanks JetBrains for providing a free All product IDE for this project.

Knowledge

Q&A

How can I get URN input?
  1. You can use aps-toolkit library to get URN of the item latest version.
python
from aps_toolkit import *

token = Auth().auth2leg()
bim360 = BIM360(token)
urn = bim360.get_latest_derivative_urn("<project_id>", "<folder_id>")
  1. You can batch report urn to dataframe from BIM360 class in aps-toolkit library.
python
from aps_toolkit import BIM360
from aps_toolkit import Auth

token = Auth().auth3leg()
bim360 = BIM360(token)
df = bim360.batch_report_items("<project_id>", "<folder_id>", ['.rvt'], is_sub_folder=False)

Developers

Test Data Readme

python
pip
install - e.

Fix server not starting

bash
# start a server with dir 
python -m http.server 54364 --directory D:\API\Forge\jupyter-forge\src\template

Kill Port

bash
netstat -ano | findstr :54364
taskkill /F /PID 21008
  • Kill all port relate to 54364
bash
taskkill /F /PID 21008