Giter Site home page Giter Site logo

algcalc's People

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

algcalc's Issues

My Internet Is Back

Original post:

I post this from the library. I may or may not keep working on this until it is fixed. (No mobile data, 4 hour WiFi limit at library)

Make root and power more robust

Currently they eval everything in the formula box, and then run the function. They should support being parts of the formula.
Applies to sqroot, abs, x^2, sin, cos, tan, log, etc.

Consider CSS Grid

Consider using CSS Grid as it can do a table-like layout and is responsive.
However, backwards compatibility can be a problem.

Footer

The footer isn't quite ideal yet (it could use some styling and position work and needs to be implemented on all pages).

However, it could be an easy workaround for #39 by providing the same background color as the menu to fill the gap.

Javascript Outline

Here is what the most basic javascript will look like:

  • Get input
  • Separate constants and operators
  • find order of operations
  • solve one step at a time

Use Calc API instead of Eval()

The eval() function can't solve for variables or solve step by step. We need to write a script that feeds one step at a time.

Icons to Svg

The text one isn't supported by some devices and looks different on each browser. I have the svg version of the original settings icon.
Here is the current ones for me:
Chrome 2018-04-20-155054_60x46_scrot
Firefox 2018-04-20-155031_51x50_scrot
See, They're different.

Calc API

I have decided to make a separate repository for calculations, as it will make this project more useful to everyone. (and it'll sure beat the use of eval)
I hope to hear from you at https://github.com/chexbox/Calc-API !

Please note: Continuation of this repository will most likely continue as planned.

Pages to come

Definitely coming

  • FAQ

  • How to use

  • Contributors

Possible pages

  • Pages for different calculators (ex. basic, scientific, algebra, graphing, etc.)

Remove sticky from bar at top

On mobile devices it can take up too much space. I think we should keep the bar, but make it scroll with the page.

Any comments?

Buttons

What buttons should we have?

  • 0-9

  • .

  • /

  • =

  • x^2

  • x^3

  • x^x

  • square root

  • cubed root

  • x root

  • History?

  • previous answer

"Calculate" instead of "="

The equal sign will get used later for algebraic calculations, so I think we need a full-width calculate button at the bottom.

Choosing a Colour Scheme

I'm not sure I like our use of colour as it is too close to scratch's colours. Discuss below possible replacements. (Green?)

Design

We should work out a couple of sketches.

New repository for calculations?

I am considering opening a JavaScript only repository that would replace our use of the eval function.
Any thoughts about this?

Name ideas

Just some ideas:

  • jsCalc

  • WebCalc

  • OpenCalc (there is an old calculator with this name)

  • Calc.js

  • OpenAlgebra

Complex buttons?

Do we place buttons for complex calculations, like variables? I think we should keep the buttons simple calculator only.

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.