1-click BOM is a browser extension that fills your shopping carts for you on
sites like Digikey and Mouser. Its main purpose is to work with the electronic
project sharing site kitspace.org. But you can also use it
from a spreadsheet or load an online .tsv
file from any other site.
Currently supported distributors are:
Check the roadmap for more details on planned features.
.csv
in a spreadsheet program (LibreOffice, Excel). Select a semi-colon seperator when importing..tsv
extension and UTF-8 encoding.Tools -> Generate Bill of Materials
then Add Plugin
and then Generate
Select:
You can copy and paste into the extension from a text editor or spread sheet program (LibreOffice, Excel). You must have a column for references, one for the quantity and at least one of: decription, part number or a distributor column. You can have multiple part number columns for specifying multiple possible manufacturer part numbers per schematic reference.
When saving files from your external editor or spreadsheet save them as
tab-seperated values with a .tsv
extension with UTF-8 encoding.
Here is a small example:
References | Qty | Description | Part Number |
---|---|---|---|
C1 | 1 | 1uF 0603 X5R | |
C2 | 1 | 10uF 0603 X5R | |
D1 | 1 | 1N4148WS | |
Q1 | 1 | IRF7309PBF | |
R1 | 1 | 10k 0603 | |
R2,R4 | 2 | 100k 0603 | |
R3 | 1 | 300k 0603 | |
SW1 | 1 | 4-1437565-1 |
You can find this and other examples in TSV format in the examples directory.
The examples are mostly in the format that the extension will output. Reading
is less strict. Below are tables of title aliases 1-click-BOM recognizes. If
you have any more suggestions please get in touch. (Capitalisation
is ignored, characters within brackets, like(s)
, denote they are optional.)
References | Quantity | Description | MPN |
---|---|---|---|
ref(s) | qty(s) | comment(s) | part(-)number(s) |
reference(s) | quantity(s) | description(s) | partnumber(s) |
line-note(s) | cmnt(s) | part number(s) | |
line note(s) | descr(s) | m(/)f part(s) | |
part(s) | manuf(.) part(s) | ||
mpn(s) | |||
m(/)f part number(s) | |||
manuf(.) part number(s) | |||
manufacturer part(s) | |||
manufacturer part number(s) |
Digikey | Mouser | RS | Newark | Farnell |
---|---|---|---|---|
digi(-)key | mouser | rs | newark | farnell |
rs(-)online | fec | |||
rs(-)delivers | premier | |||
radio( )spares | element14 | |||
rs( )components |
If you visit a page on kitspace.org or one that ends in
.tsv
and has data in the right format available 1clickBOM will show a blue
badge and button with an arrow. Clicking the blue button will load the data
into the extension.
Once the data is added you can use 1clickBOM to add the items to your carts using the buttons on the popup. You can also quickly view and empty your carts.
1-click BOM can try and complete an incomplete BOM for you by selecting resistors and capacitors from the CPL and searching Octopart and Findchips. A complete BOM is where every part has a manufacturer part number and a part number for every distributor. Simply press the button labeled 'Complete' and 1clickBOM will use other fields to search for the fields that are left blank. You should always check over the parts it has selected for you.
Auto-completion works best if you have limited text in the description. Try and reduce the description column down to the bare-minimum or add an MPN field. "1uF 0603 X5R" is a good description while "C Capacitor 1uF 1 micro Farad SM0603 0603 SMD" isn't.
If you need any help or think you found a bug please get in touch via GitHub, email or visit the Kitspace chat room.
1.8
1.9
1.10
2.0
3.0
4.0
The code is available on GitHub. To get started you will need:
The rest of the dependencies can be retrieved via yarn install
.
yarn install
yarn build
chrome://extensions
and load the unpacked extension from build/chrome
about:debugging#addons
select "Load Temporary Add-on" and load the build/chrome/manifest.json
Tests are written in QUnit 1.11 and can only be run in Chrome/Chromium.
Open a console on background page and execute Test()
or test a specific
module, e.g. Farnell, with Test('Farnell')
Most of the tests are functional tests that require interaction with the various distributor sites and they make a lot of network requests to test across all the different possible locations. Sometimes they will fail because they are not an accurate representation of actual extension use. If a test fails or doesn't complete, run it again before investigating. Try and re-create the issue manually before trying to fix it.
1clickBOM is free and open source software. It is licensed under a CPAL license which means you are free to use the code in your own applications (even proprietary ones) as long as you display appropriate attribution and share your code-improvements to 1clickBOM itself under the CPAL as well. This also applies to software you are solely making available to users over a network i.e. software as a service. See the LICENSE file for details.