GithubHelp home page GithubHelp logo

simple-project-estimates's People

Contributors

acrosman avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

simple-project-estimates's Issues

Make images saveable

Currently the graphs are rendered as SVG with D3 which browsers see as many small elements not an image and so the images cannot be directly saved. The tool should have elements to allow saving of images.

Obvious Options:

  1. Switch to Canvas for rendering.
  2. Add a mechanism to export the generated SVG to a file.

Task List of 1 Fails

While not super meaningful, the tool should never fail under simple conditions. Right now if you put in a task list of length 1 you get fairly useless responses:

Task was 36-73 hours, price of $200

Result:
Median Time: 0
Likely Range: NaN - NaN
Max Time: 146
Min Time: 0
Standard Deviation: NaN

Median cost: $0.00
Likely Range: $NaN - $NaN
Max cost: $29,200.00
Min cost: $0.00
Standard Deviation: NaN

With no graphs.

Lots of console messages that read:
Error: <circle> attribute cy: Expected length, "NaN".

Keyboard Navigation on New Task

When navigating by keyboard it would be good if after activating the new Task button the focus was shifted to the new task name control. Currently it requires using shift-tab several times to get to that field which is nearly always where you want to go next.

Fix or replace babel rewire for tests

Babel Rewire is included in the project but not working properly during Jest testing (may be related to current ESM support setup). So to test internal functions of the simulation module they are being exported to the test class can reach them. Fixing the setup of Babel and Jest to allow these features to work would be better.

If you attempt a __get__() call in simulation.test.js you will get an error.

Replacing rewire with some alternate solution would be fine.

Add some form of indicator when the simulator is running

When you click "Run Simulation" if the number of iterations is very large it takes awhile, but there is nothing to indicate that it has responded. Some degree of greying out the button and showing a spinner of some kind would be helpful.

Adjust behavior of graph for data points instead of range

The graphs currently change modes with there is too much data to display in a bar chart. While this is necessary for many use cases the switch is driven by the graph's range not total number of data points. This can lead to some hard to read cost charts for simple projects. More experimentation is needed, but attempting to drive it by data points would be good, or adding a line in when there is a wide range but limited points would be an improvement.

Add Directions

The ReadMe file here is a little thin, it provides nothing about getting it setup and running (it's a simple HTML/JS setup so loading in a web browser is all that's really needed).

Fix D3 testing

Jest is struggling to import D3 as ESModules, and throws errors. Currently D3 as been mocked out of the testing since we don't really need the graphs for testing, but it would be better to remove the mock and let D3 be imported properly.

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.