Giter VIP home page Giter VIP logo

easyeda-ibom-extension's Introduction

Hero

iBom for EasyEDA is a native extension for EasyEDA and LCEDA: Standard Edition. It is based on the awesome project called InteractiveHtmlBom designed and built by qu1ck.

Although InteractiveHtmlBom already supports generation of interactive BOMs from EasyEDA projects, but it involves messing with Python scripts and requires to host the generated html files somewhere. Since my knowledge of Python === null, and my favorite tool for designing electronics is EasyEDA - I decided to give it a shot and port it as a native extension.

Comparing to original solution, iBom for EasyEDA is available right within EasyEDA itself:

  • There is no need to run any Python scripts.
  • No need to host the produced html files.
  • iBom is always accessible by clicking a single menu button from your PCB document!
  • It also provides an ability to generate a stand-alone HTML representation the same way InteractiveHtmlBom does out of the box.

NOTE: This extension is still in ALPHA/BETA stage - a lot of things should be done in order to make it fully compatible with EasyEDA.

Installation

  1. Download easyeda-ibom-v0.1.2.zip
  2. Un-zip the downloaded archive on your hard drive.
  3. Go to Extension Settings dialog by using main menu Advanced -> Extensions -> Extensions Settings....
  4. Click Load Extension... button and add all the files in from the extracted folder using Select Files... button.
  5. Click Load Extension and close the Extension Settings dialog.

iBom Installation

Usage

Within EasyEDA

In order to launch iBom within the editor itself - just click on iBom -> Launch... menu item:

iBom Demo

You can always dismiss the iBom view by clicking on the little close button located in the right-top corner of the panel.

Generating stand-alone HTML representation

Just click iBom -> Generate & Download HTML menu item in order to get the stand-alone representation of your PCB document:

iBom Demo

Note: In case the downloaded file doesn't have .html extension - just add it manually. It is some sort of weird browser behaviour for the case to be investigated.

Feedback

If you discover any issue or have any suggestions for improvement of the plugin, please open an issue or find me on twitter @turbobabr.

Credits

This solution uses:

  • InteractiveHtmlBom as a core component.
  • A "hackable" nature of EasyEDA/LCEDA - thank you guys for allowing us messing with the product! 👏
  • svg-path-bbox for calculating various bounding boxes during EasyEDA -> InteractiveHTMLBOM data conversions.

License

MIT License

Copyright (c) 2021 Andrey Shakhmin

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

easyeda-ibom-extension's People

Contributors

rehack avatar turbobabr avatar xsrf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

easyeda-ibom-extension's Issues

Ibom is summarizing components with the same value, but different part number

In my case, i have many different 1k resistors with different accuracy. one is a 1%, another a 5%.

But Ibom put them in the same group. thats uncool for placing the components, because Ibom is not making any difference of it.

the partnumers of the resistors are different, so why it is putting them in the same group?

Can u fix that plz?

extension cannot be loaded

Using EasyEDA Standard 6.5.23 under Windows, I cannot load the extension.

AFAIU it should be the directory containing manifest.json that all files
should be selected from for loading the extension

However loading all
files from the directory
easyeda-ibom-extension-0.1.2\src\platform
yields the error message (translated by me...)
One or more js files not found

On loading all files from the directory
easyeda-ibom-extension-0.1.2\src
instead I receive an error msessage like
manifest.json not found
same for the directory
easyeda-ibom-extension-0.1.2

What am I possibly missing or doing wrong?

Click to Select vs Mouse Over behavior in data grid

I think that the default mouse over to highlight items behavior is sort of bad in term of UX. It would be cool to have an option to replace it with selection variant, but it's a good idea to keep the default one as an option.

Copper features inside footprints not rendered

Footprints can have their own Tracks, solid regions or Images (SVGNodes) potentially containing copper or silkscreen. At the moment these are not rendered at all which makes some footprints hard to identify on the pcb preview.
I think these features should just be rendered as if they were part of the PCB itself.

Since the datamodel of these features is the same as for the features on the PCB itself, they could just be copied from the footprint to the PCB data before rendering.

2021-06-06 21_50_45-EasyEDA(Standard) - A Simple and Powerful Electronic Circuit Design Tool

iBOM doesn't save HTML files

Awesome extension which is very useful!

I want to make an HTML reference library of iBOMs for my boards for easy reference, but when I click "Generate and save HTLM", no file is saved, even without an extension.

I'm using EasyEDA V6.5.9 on Windows 11 Home.

Any suggestions? Thanks,

Wrong bbox for board outlines

Default bbox object provided by EasyEDA source is calculated based on all the shapes contained in a document, e.g. for the following pcb all the measuring tools and coppers areas are taken into account:

image

As a result iBom renders board with extra margins around it:
image

It worth implementing a dedicated bbox calculator based only on shapes met on BoardOutlines layer.

Add orphan pads support

InteractiveHTMLBom doesn't support orphan pads placed directly on a pcb, but EasyEDA has such feature:

image

update local.txt

Can you update the local.txt? I would like to help tp update the i18n

thanks

Images cover pads and holes

Images are covering pads and holes in the preview (if not highlighted). Pads and holes should be drawn after the images.

2021-06-08 20_17_33-EasyEDA(Standard) - A Simple and Powerful Electronic Circuit Design Tool
2021-06-08 20_18_05-EasyEDA(Standard) - A Simple and Powerful Electronic Circuit Design Tool

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.