Git Product home page Git Product logo

boolr's Introduction

BOOLR

A digital logic simulator
Download BOOLR: http://boolr.me

Running in development

Either npm or yarn can be used to fetch Electron as dependency and run scripts.

# Fetch dependencies
npm install

# Run in development
npm start

boolr's People

Contributors

confiks avatar ggbrw avatar jaadec 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

boolr's Issues

cant scroll saved components list

Hi. I have created serveral components. but in the components list, I cant scroll to bottom to access all of my component. I think this is a bug.

image

Undo/Redo Wires State doesnt change

Ive found a Bug. If you undo an than redo a wire placement, it's state isnt updated at redo. And it seems like some Wires arent effected by Undo.

I didn't see a guide for console commands,

I didn't see a board or community to ask such things, so I'll mention it here: there doesn't seem to be a guide specifically for more in depth commands in console window.

Is this something that's planned?

I'm loving the rest of the software, and will help me visualize.

LED matrix

Could you please add some sort of LED matrix, so we can create screens?

Keeps deleting my projects

So far i love this program it has helped me in a lot of ways but sometimes i can make a mistake that deletes my work and just crashes the program. As long as i save i'm usually good but occasionally it will change my file name to name.board then lock me out of accessing it. I have lost several hours of work several times because of this. Please fix this problem or tell me what i'm doing wrong. Thank you.

Some Quality-of-Life Improvements

Hi! I've been using this project for fun, and I found some little things that could improve the usabillity of the app:

  • On renaming the label of a component, open the window with the text field already selected
  • When trying to delete a saved component, ask for confirmation
  • When adding a component with a name that already exists, ask for confirmation to override (app shouldn't allow two equal named components)

If these suggestions are valid, I can try to find a fix for them ๐Ÿ˜„

Two TypeErrors

image
image

The first one was me connecting the input gate to the NOT gate, moving the NOT gate around a bit... reconnecting them, moving the gate around a bit. So that the NOT gate input was over the input gate output.

The second one, I honestly have no idea. I moved the NOT gate and there was some red circle below it, I right clicked it and it apparently was a waypoint or something. I clicked on create waypoint, then right clicked and clicked go to waypoint.. and clicked the X on the created waypoint at the red dot.

I just don't know what went wrong... ๐Ÿ˜ข

On Windows 10 cannot create new board unless running as admin

The title says it all. Basically, it will not allow you to create a new board unless you have the permissions. That is fine but maybe a notification, when it cannot create a file, would be nice. At first, I clicked the "create" button "three times with no feedback before I switched to "Run as administrator" and got it working.

It is a cool project BTW. Keep it up!

Redraw problems on OS X

When moving connected things around, the redraw is wrong on OS X (10.10.5):

fail

Maybe use Apple-R for manual redraw ?

Can't create new board on mac

Menu opens up when I launch and I press 'new board'. I then type "testboard" and click "Create", but nothing happens. This is in version 1.0.3

No Gate Delay

Implementation of gate delay is missing. And so does not an SR Latch work. Adding gate delay is needed for SR Latches to work

New does nothing

Just downloaded and tried to run this. after typing in the name and clicking create, it does nothing.

Suggestion: Instruction/Comment Component

It'd be nice to have a Instruction/Comment Component, something to put on the board with the purpose to tell something to the user, just simple text. The schematics done in this app can be a little complex, so instructions would be a nice way to tell the user what something is doing or explaing how to setup the board, for instance.

Slepend selecteren

Het zou heerlijk zijn als je kon selecteren door je linkermuisknop ingedrukt te houden en dan je muis te bewegen ipv helemaal de shift erbij gebruiken. Weet trouwens niet in hoeverre dit makkelijk en mogelijk is.

Saving while inside a component deletes rest of project

This is pretty self explanatory, Saving while inside a component deletes rest of project.

How to replicate:
Create new board
Create any circuit in the main area
Then, make a component and enter it.
Once inside the component, add at least 1 input and output, and connect them.
Then, while still inside the component, save and close the window
Re-Open the project, and now what was inside the component will now be in the main window, and what used to be in the main window will have been deleted

This has caused me to lose a lot of work, especially if the program happens to crash while inside of a component.

Flatpak PoC packaging

This looks like a fun project so I thought I might just try to see if I can get it to work in a Flatpak.
Also, development seems to have halted so this might help users that miss some of the outdated libs.
I'm not really using the app so I'm not sure how well this is working and at least opening a file dialog doesn't seem to work though I'm not sure if it supposed to.
I had to patch saves.js so it will be in a writable location.

The Flatpak manifest is here.
If you look in the history you'll notice that I use the apply-extra step to incorporate the binary release itself in the package but I switched away from this in order to make the Flatpak bundle work. If someone is considering publishing to Flathub then any of the methods is suitable due to the GPL license.

A Flatpak bundle can be downloaded from here. This is for users who just want to install the app and not looking to build it.

I don't plan to publish to Flathub, anyone who wishes to can use my manifest as a startup point.

Work inside of components lost

I'm running v1.0.3 on Ubuntu 16.04, and have hit an issue several times where I lose some of the design inside a component. Generally the flow I was following was:

  • Make a new component
  • Enter the component and start working on a design
  • Exit the component to test it on the board
  • Enter back into the component and the state is not as I left it

I hit this today while working on a seven segment driver; I built most of my design in the component, backed out to verify it was displaying numbers properly, and when I entered into the component many components and connections were gone, and one component I had deleted had returned. All of my input and output components did seem to remain in their place.

Mac UI/UX issues

I've tested this app on Macbook and found some issues:

  • Move around is very unusable using TouchPad and ctrl button
  • Zoom In/Out is very fast because of scroll inertness
  • Delete objects doesn't work because Mac keyboards doesn't have Del button (only Backspace)
  • Key shortcuts isn't good for mac users, it should be with Cmd key, instead of Ctrl

Knipperlicht

Als je te snel naar elkaar componenten verbind, knippert de overeenkomst de tweede keer niet.

Feature Suggestion: Component testing

The first thing I didn't find when looking for it, was a way to create a test for a component. I'd personally imagine it in the form of a truth table to be manually completed by the user (maybe support importing/exporting to CSV?), and having it associated with a component when saving the component.

Electron hogging cpu

Hi,
Each time i run the app i get 3 or 4instances of electron with 100% cpu usage.Is this normal for boolr?
Thanks

Install FEDORA 20

npm ERR! install Couldn't read dependencies
npm ERR! Linux 3.11.10-301.fc20.i686
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "install"
npm ERR! node v4.2.1
npm ERR! npm v2.14.7
npm ERR! path /home/josbaney/Descargas/BOOLR-linux-ia32/package.json
npm ERR! code ENOPACKAGEJSON
npm ERR! errno -2
npm ERR! syscall open
npm ERR! package.json ENOENT: no such file or directory, open '/home/josbaney/Descargas/BOOLR-linux-ia32/package.json'
npm ERR! package.json This is most likely not a problem with npm itself.
npm ERR! package.json npm can't find a package.json file in your current directory.
npm ERR! Please include the following file with any support request:
/home/josbaney/Descargas/BOOLR-linux-ia32/npm-debug.log

Edit after deleting object

It is possible to create a type error in the system via the following process:

  1. Create an object
  2. Right click the object to bring up the action pane
  3. Hover over the object and press the delete key
  4. The action pane re-mains open, clicking edit (or other actions) will produce a type error

The error is handled gracefully, however I believe that the deletion of an object should check if there is an open action pane for that object and close the action pane if needed. This will prevent exposing the error to the user.

Custom component output LEDs

In order to visualize correctly a custom component, it would be very helpful to have it show little LEDs the same way it routes outputs to output pins. In my opinion a black rectangle is a waste of screen real state.

It would be even better if it could show entire segment or LED array displays.

Add wire grouping/bus line

It would be a nice addition to be able to group multiple inputs/outputs into a bus to simplify connecting many pins on components.

Can create a broken wire:

I can create a broken wire which appears to no longer carry signal. To reproduce:

  1. Place a clock

  2. Place a Counter (I'm calling this A)

  3. Place a second Counter (I'm Calling this B)

  4. Connect the clock to counter A

  5. Connect Counter B to the a middle section of wire
    image

  6. Create a loop in the wire connecting Counter B back the wire between the clock and A.
    image

The wire is now broken, and neither counter will update.

V1.0.3 Windows

VHDL import / export ?

Hey :)

Thanks for this amazing piece of software.
Looks nice, rather stable and quite fast!

So this is not an issue, more like a question/suggestion:
What do you think about making your software open to other languages? Such as HDL/VHDL?
The idea would be to have some kind of import/export possibility in BOOLR to/from VHDL.
I guess export is easier to code than import :)

I think it would be amazing :)

Also what about being able to use tools like gtkwave to read an output produced by BOOLR.
This would mean that in BOOLR the user creates a design
Then BOOLR sends a set of inputs in the design
And BOOLR outputs in a file the results
And then we can visualize the behavior of the design in gtkwave (and also in BOOLR of course :) )

++

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.