Kokon
A free, local alternative to Nano Banana and Generative Fill. Brush an area, type the change, and your own GPU does the edit. One installer for Windows, Mac and Linux.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗Convert Circuit JSON to STEP format for CAD integration.
npm install circuit-json-to-step
# or
bun add circuit-json-to-step
import { circuitJsonToStep } from "circuit-json-to-step"
const circuitJson = [
{
type: "pcb_board",
pcb_board_id: "pcb_board_1",
width: 20,
height: 15,
thickness: 1.6,
center: { x: 0, y: 0 },
},
{
type: "pcb_hole",
pcb_hole_id: "pcb_hole_1",
hole_shape: "circle",
hole_diameter: 3.2,
x: 2.5,
y: 2.5,
},
]
const stepText = await circuitJsonToStep(circuitJson, {
boardWidth: 20,
boardHeight: 15,
boardThickness: 1.6,
productName: "MyPCB",
})
await Bun.write("output.step", stepText)
circuitJsonToStep(circuitJson) exports the complete design by default and always
returns one STEP string. The file contains one named parent assembly with
separate named children for the PCB, printed parts, ordinary assembly parts, and
PCB component models. Touching parts remain separate bodies. The converter does
not create ZIP archives or filename-to-content maps.
const stepText = await circuitJsonToStep(circuitJson, {
productName: "My device",
fsMap: { "./models/bracket.step": preloadedStepText },
})
await Bun.write("my-device.step", stepText)
JSCAD and imported STEP parts retain their geometry, colors, model origins,
uniform unit scales, rotations, and placements. Each CAD model becomes a named
child; multiple models can share the same part name. PCB components and imported
STL, OBJ, GLB, and GLTF printed parts use the existing scene geometry converter.
Mesh bodies share their vertices and edges. Failed external meshes, unsupported
or missing geometry produce an error instead of a partial assembly. Relative
STEP paths must be provided as plain STEP text in fsMap, keyed
by the exact model_step_url; uncached STEP files require an HTTP(S) URL.
Imported STEP files that contain their own assembly occurrences are rejected
with the offending part name; nested imported assembly hierarchies are not yet
supported.
Multi-board assemblies include every board, named by its pcb_board_id; a single
board retains the name "PCB". Holes use explicit board/subcircuit ownership when
available, or their location when exactly one board contains them. Ambiguous hole
ownership is an error. PCB components infer board thickness from a unique
subcircuit match; ambiguous ownership with different board thicknesses is an
error.
Omitting exportMode always selects the complete assembly, including PCB-only
designs with component models, mixed PCB and assembly designs, printed-only
designs, multiple boards, and CAD models without source components. No special
part tags or component-inclusion flags are required for the default export.
Passing exportMode: "assembly" is equivalent to omitting it.
exportMode: "pcb" retains the existing PCB behavior. includeComponents and
includeExternalMeshes default to false in PCB mode. Assembly mode includes all
CAD parts and PCB components; includeExternalMeshes defaults to true for its
non-STEP mesh fallback. productName defaults to "PCB" in PCB mode and "Combined
Assembly" in assembly mode. Empty assemblies produce an error.
This changes the assembly-mode return type from Record<string, string> to
string. Consumers should download that string as a single .step file.
MIT