Skip to content

brentan/swift_calcs_client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

README

The client-side component of the SwiftCalcs application.

This software is copyright Brentan Alexander Consulting LLC. All rights reserved.

LICENSE

This software contains other software components licensed under GPL3 and other open source licenses. In order to abide by those licenses, the SwiftCalcs client component is licensed under Mozilla Public License, v.2.0. You can obtain a copy of this license at mozilla.org/MPL/2.0/.

THANKS TO

Thanks to the support of developers whose open source software is used in this application, including:

NAVIGATING

swift_calcs_client contains three different libraries that are used by the swift calcs application. They are all built using the ‘make’ command. All three libraries are composed of multiple javscript files that, upon build, are concatenated together into a single file. The intro.js and outro.js files in each library provide the beginning/end of the built library.

SRC_WORKER

This folder contains the library for the webworker that launches and runs the math engine emgiac. This is done in a worker so that active calculations do not freeze the UI. Its primary purpose is to launch emgiac, receive commands from the main process, perform the calculation in emgiac, and return results to the main process.

SRC_EMBED

This folder contains the library that is loaded by third-party websites that embed swift calcs content

SRC

This folder contains the library for the swift calcs UI, and is organized in to a few different folders based on the function of the underlying scripts. They are:

  • wrapper: contains intro/outro files

  • worksheet: The base object for a swift calcs worksheet. A worksheet contains multiple elements, organized from top of the worksheet to the bottom. Each element can have children of its own. Each line in a worksheet is its own element. Worksheets track the first/last elements in .ends and .ends. Elements track children in the same manner, and also track neighbors with [L] and [R] (L and R are defined as -1 and 1, respectively).

  • element.js: The base class for an element

  • elements: All the various elements that can exist in a swift calcs worksheet, from plots to solvers to text boxes. The most common elements are the math and text elements.

  • ui_support: Various functions that provide UI features, like popups and dialogs.

  • utilies: Functions that provide various utility functions for the rest of the library

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published