Copyright (C) 2022, Vis LLC All rights reserved.

Support us on Patreon and get access to premium content, including the latest version of ISTAR (Insanely Simple Transfer And Reporting)
https://patreon.com/visllc

If you are already a supporter, use the Patreon Login in the upper left corner to gain access to your benefits.

Latest Activity For Each Project
DateProjectVersionComments
2023-10-20T05:13:00ZGUI State Automation Toolkit0.0.1- Initial Version
2022-11-05T07:22:38ZSimple Data Toolkit0.1.7- Fixed bug with delimited file reading. - Additional features for graphing.
2022-09-18T23:57:16ZVis Crossword0.0.1Initial Version
2022-09-18T23:56:56ZVis Wordsearch0.0.1Initial Version
2022-09-17T19:07:14ZVis Mines0.1.2- Minor code adjustments
2022-09-17T19:02:22ZVis Sudoku0.1.2- Minor code adjustments
2022-09-17T18:52:15ZField Engine0.1.4- Added PHP build - Added GraphView - Added mouse wheel control - Added VerticalMenu - Adjusted base64.js for better backwards compatibility
2022-09-17T18:31:46ZRestricted Roller0.0.5- Added WordSearch and Crossword generation. - Added Python and PIP builds.

We are a small software developer that develops mostly open source software. You can find our free and subscription software on this website. Our public projects that are available on this website are listed below.

Photo CoPilot

Photo CoPilot is a photography app that will help users of all skill levels take fantastic images, and makes learning the technical aspects of photography fun! Tackle tricky lighting situations, selective focus shots, and long exposures with ease.

Vis Crossword

Vis Crossword is an open source crossword game that will challenge your vocabulary and test your mental agility.

Vis Wordsearch

Vis Wordsearch is an open source word search game that offers several brain-teasing challenges in our usual open source format.

Vis Sudoku

Vis Sudoku is an open source Sudoku featuring randomly generated puzzles. Sharpen your logical skills with endless Sudoku grids to conquer.

Vis Mines

Vis Mines is a simple open source version of minesweeper which can be run almost anywhere. Experience the timeless thrill of while benefiting from the transparency of open source development.

ISTAR

ISTAR is a new data tool that allows you to import data, run scripts in various languages, and output in various formats. Including graphs and blockchain support.

GUI State Automation Toolkit

GSATK allows for structuring website automations based on state, rather than a step by step approach. This allows for greater adaptability and resilience.

Gaanzater

Gaanzater is a simple open source bubble shooter. From relaxing to more intense game play.

Simple Data Toolkit

SDTK has numerous functions to simplify retrieving and transforming data. It makes up the foundation of our ISTAR and other tools we have in development.

Field Engine

Field Engine is an UI framework for simple games and some business applications. It can snap into SDTK to display graphs and other data.

Restricted Roller

Restricted Roller is an open source random generator framework that produces boards and rolls for various games.

Katar Genesis

Closed Alpha of a simple online multiplayer RPG.
LiveDocumentationReleasesVersion HistoryLicenseAbout

When you launch Photo CoPilot (PCP) you will need to input a few basic Camera Settings so PCP can calculate the best exposure, based on your camera and lens. You will need to enter the Max Time Value (TV) Your camera's fastest available shutter speed. The Max Aperture Value (AV) = The fastest setting for your lens. (The lowest f/Number). and the Lowest and Highest ISO settings on your camera. With these values set, PCP will be able to compute the best settings for each scene, or exposure value you select.

Once you have the values saved in Camera Settings, You can select a Photographic Scene or Exposure Value from the main page. Once selected, PCP will go directly to the Exposure Calculator, and compute the suggested Shutter Speed (TV) Aperture Value (AV) and ISO values. Set these on your camera (See your cameras instruction manual for using your camera in manual Mode). Take a test shot, and review your results with the playback function on your cameras LCD screen. Using PCP you can Shift the exposure, as well as compensate for a light or dark shot, or when using specialized filters. Using the pre-set value locks you will get optimal settings.

At the bottom of the calculator screen, PCP also displays a real time Exposure bracket scale, that will aid in using advanced High Dynamic Range techniques. A 3 stage Tripod status indicator will alert you when a tripod is suggested or required for your current shot. (Green=Not required, Yellow=Suggested, and Red=Tripod is required to reduce camera shake.) When shooting at night or low light, you can put PCP in Night vision mode, so your eyes will remain dark adapted. The Settings button will return to the Camera Settings page, so you can change any of the preset values. When your scene changes, you can return to the Home Page and reselect a new Exposure Value or Photographic Scene.

For a more detailed set of instructions, and access to advanced tips and tricks, be sure and visit the Photo CoPilot website.

Have Fun!

http://www.vis-software.com#photocopilot

©2013,2022

Vis LLC

PlatformToolURL
AndroidPhoto CoPilothttps://play.google.com/store/apps/details?id=com.vis.photocopilot
DateVersionComments

Photo CoPilot �Terms of Use�

Re: 2013-08-01

�2013 Vis LLC | All Rights reserved

1. GENERAL 
1.1. By installing the Application (Photo CoPilot), you agree to be bound by these terms of use (�appterms�). Please review them carefully before installation and/or acceptance.

2. DEFINITIONS 
The �Application� shall mean the software program Photo CoPilot as provided by Vis LLC (Vis). To be used on Apple iOS and Android OS devices and any upgrades from time to time and any other software or documentation which enables the use of the Application.

3. DATA PROTECTION 
Photo CoPilot does not collect any personal information. Vis LLC did not have access to any billing information or personal data.

4. Terms & Conditions : Upon installation, all of the following terms and conditions will apply.

5. Current user TERMS & CONDITIONS: The current Vis LLC Terms and Conditions can be view here:www.vis-software.com/#photocopilot

 

6. If any part of the apptermsshould be found illegal or unenforceable, that section of the appterms shall be viewed as separate and severed from the appterms leaving the rest in effect.In the event that the severability of one part effects the interpretation of another part, the part remaining in effect should be interpreted as closely to the original intent as legally and enforceable possible.

6. PROPRIETARY RIGHTS AND LICENCE 
6.1. All trademarks, copyright, and other intellectual property rights of any nature in the Application together with the underlying software code are owned either directly by Vis LLC. 

7. CONDITIONS OF USE 

7.1. You will not, nor allow third parties on your behalf to (i) make and distribute copies of the Application (ii) attempt to copy, reproduce, alter, modify, reverse engineer, disassemble, decompile, transfer, exchange or translate the Application; or (iii) create derivative works of the Application of any kind whatsoever. 


7.2. The Application is currently made available for your personal, non-commercial use. Vis LLC reserves the right to amend or withdraw the Application, or charge for the application or service provided to you in accordance with these appterms, at any time and for any reason. 

7.3. You acknowledge that the terms of agreement with your respective mobile network provider (�Mobile Provider�) will continue to apply when using the Application. As a result, you may be charged by the Mobile Provider for access to network connection services for the duration of the connection while accessing the Application or any such third party charges as may arise. You accept responsibility for any such charges that arise. This includes the downloading of the installation package, and any subsequent Application upgrades.  

7.4. If you are not the bill payer for the mobile telephone or handheld device being used to access the Application, you will be assumed to have received permission from the bill payer for using the Application.

8. AVAILABILITY 

8.1. This Application is available to handheld mobile devices running Apple iOS and/or Android OS Operating Systems. �Vis LLC� will use reasonable efforts to make the Application available at all times. However you acknowledge the Application is a piece of software, and may not operate correctly at all times. And that Application may be affected by factors outside Vis LLC�s reasonable control. 

8.2. Vis LLCdoes not accept any responsibility whatsoever for unavailability of the Application, or any of its functions. The Application may cause a system failure, which may result in the Application being unavailable.

8.3.Vis LLC will not be responsible for any support or maintenance for any system running the Application.

9. SYSTEM REQUIREMENTS 

9.1. In order to use the Application, you are required to have a compatible mobile telephone or handheld device, and the necessary minimum specifications ('Software Requirements'). 

9.2. The Software Requirements are as follows: Apple iOS devices running iOS 4 or iOS 5, and Android OS devices running Android OS 2.1 up to OS 2.3; Language: English.

9.3. The version of the Application software may be upgraded from time to time to add support for new functions and services.Vis LLC is not responsible for any errors or bugs that may cause an upgrade to not operate as expected, or errors or bugs that may cause hardware to fail or otherwise malfunction.

10. TERMINATION 

10.1 Vis LLC may terminate use of the Application at any time by giving notice of termination to you. 

10.2. Upon any termination, (a) the rights and licenses granted to you herein shall terminate; (b) you must cease all use of the Application.

11. LIMITATION OF LIABILITY 

11.1. In no event will Vis LLC be liable for any direct, indirect, special, punitive, exemplary or consequential losses or damages of whatsoever kind arising out of your use of the Application, including loss of profit or the like whether or not in the contemplation of the parties, whether based on breach of contract, tort (including negligence), product liability or otherwise.

11.2.Vis LLC is not liable to you for any damage or alteration to your equipment including but not limited to computer equipment, handheld device or mobile telephones as a result of the installation or use of the Application. 

11.3. Nothing in these Appterms shall exclude or limit Vis LLC�s liability for death or personal injury caused by negligence or for fraud or fraudulent misrepresentation or any other liability which cannot be excluded or limited under applicable law.

11.4 Vis LLC makes no claim to the reliability of the calculations performed by the Application. The Application is a guide for photographic exposures, for novice users, and should not be used in a professional setting. Vis LLC will not be held liable for any losses in time, money, or incurred expenses, due to the use of the Application. Vis LLC will not be liable for any damage or malfunction of any hardware running the Application, or any hardware, computer, camera or otherwise that may be operated in conjunction with the Application, be it directly or indirectly.

12. DISCLAIMER OF WARRANTIES To the maximum extent permitted by law, and for the avoidance of doubt, save for section 2 of the Supply of Goods and Services Act 1982, Vis LLC hereby disclaims any and all implied warranties with regard to the Application. The Application and software are provided "as is" and "as available" without warranty of any kind.

 

LiveDocumentationReleasesVersion HistoryLicenseAbout
Manuals
Simple Table Converterhttps://vis-software.com/sdtk/stc.html
Windows Scripts
Simple Data Toolkit - Tutorial - Windows - Scheduled Taskhttps://ortingo.com/users/60CQ59FN46SVQFXJ/simple-data-toolkit-tutorial-windows-scheduled-task
Simple Data Toolkit - Tutorial - GUI - Batch Scripthttps://ortingo.com/users/60CQ59FN46SVQFXJ/simple-data-toolkit-tutorial-gui-batch-script
Mac Scripts
Simple Data Toolkit - Tutorial - Mac OS - Scheduled Taskhttps://ortingo.com/users/60CQ59FN46SVQFXJ/simple-data-toolkit-tutorial-mac-os-scheduled-task
Linux Scripts
Simple Data Toolkit - Tutorial - Linux - Scheduled Taskhttps://ortingo.com/users/60CQ59FN46SVQFXJ/simple-data-toolkit-tutorial-linux-scheduled-task
Platform Agnostic
Simple Data Toolkit - Tutorial - GUI - Python Scripthttps://ortingo.com/users/60CQ59FN46SVQFXJ/simple-data-toolkit-tutorial-gui-python-script
Simple Data Toolkit - Tutorial - GUI - Javahttps://ortingo.com/users/60CQ59FN46SVQFXJ/simple-data-toolkit-tutorial-gui-java
Simple Data Toolkit - Tutorial - PHP - Convert Filehttps://ortingo.com/users/60CQ59FN46SVQFXJ/simple-data-toolkit-tutorial-php-convert-file
Simple Data Toolkit - Tutorial - API Support
Simple Data Toolkit - Tutorial - BitTorrent API - Pythonhttps://ortingo.com/users/60CQ59FN46SVQFXJ/simple-data-toolkit-tutorial-bittorrent-api-python
Simple Data Toolkit - Tutorial - Ethereum via Etherscan - Pythonhttps://ortingo.com/users/60CQ59FN46SVQFXJ/simple-data-toolkit-tutorial-ethereum-via-etherscan-python
Simple Data Toolkit - Tutorial - Git API - Pythonhttps://ortingo.com/users/60CQ59FN46SVQFXJ/simple-data-toolkit-tutorial-git-api-python
Simple Data Toolkit - Tutorial - IEEE Events API - Pythonhttps://ortingo.com/users/60CQ59FN46SVQFXJ/simple-data-toolkit-tutorial-ieee-events-api-python
Simple Data Toolkit - Tutorial - Ortingo API - Pythonhttps://ortingo.com/users/60CQ59FN46SVQFXJ/simple-data-toolkit-tutorial-ortingo-api-python-2

Simple Data Toolkit - Tutorial - Windows - Scheduled Task


Let's suppose you want to create a task that loads a Pipe Delimited File into a database on a daily basis. The task is to run on Windows and you are using Snowflake for the database. You can do it with SDTK as follows:


  1. Download SDTK. For this tutorial, we're going to use the latest version of the Windows Shell Script version as of this writing (0.1.2) which is here: https://sourceforge.net/projects/simple-data-toolkit/files/0.1.2/stc-wsh.js/download
  2. Create a new text file called ConvertPSV.cmd
  3. 3) Open the file with a text editor (like Notepad or Visual Studio Code)
    Enter the following text:
    cscript stc-wsh.js clients.psv clients.sql createorreplace clients
    (For more info on STC and SDTK see the following URL: https://sourceforge.net/projects/simple-data-toolkit/)
    (For more info on cscript see the following URL: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/cscript)
    SET SNOWSQL_PWD=password
    snowsql -a myorganization-myaccount -u jsmith -f clients.sql -d database -s public -o quiet=true -o friendly=false
    (For more info on snowsql see the following URL: https://docs.snowflake.com/en/user-guide/snowsql-use.html)
  4. Go to the Start Menu.
  5. Search for Task Scheduler.
    (For more info on Task Scheduler see the following URL: https://docs.microsoft.com/en-us/windows/win32/taskschd/about-the-task-scheduler)
  6. Open Task Scheduler.
  7. Click Create Task.
  8. For name enter: Convert PSV to SQL
  9. Click Triggers Tab
  10. Click New button
  11. Select Daily
  12. Start start time to 8:00 AM.
  13. Click the OK button.
  14. Click Actions tab.
  15. Click New button
  16. For Program/script click Browse.
  17. Find the ConvertPSV.cmd script.
  18. Click Open.
  19. Set Start in to the directory that the ConvertPSV.cmd script is in.
  20. Click the OK button.
  21. Click the OK button.
  22. To test, right click Convert PSV to SQL.
  23. Select Run.

Simple Data Toolkit - Tutorial - GUI - Batch Script


Let's suppose you want to create a task that loads a TSV file into a CSV file on a daily basis. This task is meant to be part of a Batch script, but you are unfamiliar with Batch and are unsure of how to write the code. Good news, you can use the Sample Data Toolkit UI to figure out this code for you as follows:


  1. Go to the app page for the Simple Data Toolkit UI, at the time of this writing it is here: https://simple-data-toolkit.sourceforge.io/app/index.html
  2. Click Choose Files.
  3. Find the file you want to convert.
  4. Click Open.
  5. Select the output type you want, for this tutorial we will select CSV.
  6. Then for script, select Batch.
  7. Then click Download Script.

You will now have a simple Batch script that uses STC (Simple Table Converter - A commandline utility that is part of the SDTK) to convert the file you selected to CSV. You can now either run this script or integrate it with another one.


If you need to install STC, you can install it via Chocolatey (https://chocolatey.org/) with the following command:

choco install stc


The script will look something like this:


stc "ga_sample.csv" textonly "ga_sample.csv"

Simple Data Toolkit - Tutorial - Mac OS - Scheduled Task


Let's suppose you want to create a task that loads a Pipe Delimited File into a database on a daily basis. The task is to run on Mac OS and you are using Snowflake for the database. You can do it with SDTK as follows:


  1. Download SDTK. For this tutorial, we're going to use the latest version of the Python version as of this writing (0.1.2) which is here: https://sourceforge.net/projects/simple-data-toolkit/files/0.1.2/stc.py/download
  2. Create a new text file called ConvertPSV.sh
  3. Open the file with a text editor (like Text Edit)
    Enter the following text:
    #!/bin/sh
    python stc.py clients.psv clients.sql createorreplace clients
    (For more info on STC and SDTK see the following URL: https://sourceforge.net/projects/simple-data-toolkit/)
    export SNOWSQL_PWD=password
    snowsql -a myorganization-myaccount -u jsmith -f clients.sql -d database -s public -o quiet=true -o friendly=false
    (For more info on snowsql see the following URL: https://docs.snowflake.com/en/user-guide/snowsql-use.html)
  4. Go to the Terminal.
  5. Edit the list of cron jobs with the following command:
    nano crontab -e
  6. Add the following to a new line:
    0 8 * * * cd ~ && ConvertPSV.sh
  7. Press CTRL+O and CTRL+X to save and exit nano.

Simple Data Toolkit - Tutorial - Linux - Scheduled Task


Let's suppose you want to create a task that loads a Pipe Delimited File into a database on a daily basis. The task is to run on Linux and you are using Snowflake for the database. You can do it with SDTK as follows:


  1. Download SDTK. For this tutorial, we're going to use the latest version of the Python version as of this writing (0.1.2) which is here: https://sourceforge.net/projects/simple-data-toolkit/files/0.1.2/stc.py/download
  2. Create a new text file called ConvertPSV.sh
  3. Open the file with a text editor (like Text Edit)
    Enter the following text:
    #!/bin/sh
    python stc.py clients.psv clients.sql createorreplace clients

    (For more info on STC and SDTK see the following URL: https://sourceforge.net/projects/simple-data-toolkit/")

    export SNOWSQL_PWD=password
    snowsql -a myorganization-myaccount -u jsmith -f clients.sql -d database -s public -o quiet=true -o friendly=false

    (For more info on snowsql see the following URL: https://docs.snowflake.com/en/user-guide/snowsql-use.html)

  4. Go to the Terminal.
  5. Edit the list of cron jobs with the following command:
    nano crontab -e
  6. Add the following to a new line:
    0 8 * * * cd ~ && ConvertPSV.sh
  7. Press CTRL+O and CTRL+X to save and exit nano.

Simple Data Toolkit - Tutorial - GUI - Python Script


Let's suppose you want to create a task that loads a TSV file into a CSV file on a daily basis. This task is meant to be part of a Python script, but you are unfamiliar with Python and are unsure of how to write the code. Good news, you can use the Sample Data Toolkit UI to figure out this code for you as follows:


  1. Go to the app page for the Simple Data Toolkit UI, at the time of this writing it is here: https://simple-data-toolkit.sourceforge.io/app/index.html
  2. Click Choose Files.
  3. Find the file you want to convert.
  4. Click Open.
  5. Select the output type you want, for this tutorial we will select SQL.
  6. Then for script, select Python.
  7. Then click Download Script.

You will now have a simple Python script that uses SDTK to convert the file you selected to CSV. You can now either run this script or integrate it with another one.


If you need to install SDTK for Python, you can do it like so on the terminal/commandline prompt with the following command:

pip install sdtk-visllc


The script will look something like this:


from sdtk import com_sdtk_table_Converter as sdtk

sdtk.start().readFile("complex.csv").tsv().textOnly().output().writeFile("complex.csv").csv().execute();

Simple Data Toolkit - Tutorial - GUI - Java


Let's suppose you want to create a task that loads a TSV file into a PSV file on a daily basis. This task is meant to be part of Java code, but you are unfamiliar with Java and are unsure of how to write the code. Good news, you can use the Sample Data Toolkit UI to figure out this code for you as follows:


  1. Go to the app page for the Simple Data Toolkit UI, at the time of this writing it is here: https://simple-data-toolkit.sourceforge.io/app/index.html
  2. Click Choose Files.
  3. Find the file you want to convert.
  4. Click Open.
  5. Select the output type you want, for this tutorial we will select PSV.
  6. Then for script, select Java.
  7. Then click Download Script.

You will now have some Java code that uses SDTK to convert the file you selected to PSV. You can now either run this script or integrate it with another one.


If you need to install SDTK for Java, you can do it by downloading the latest version from SourceForge and placing it in your class path. At the time of this writing, this can be found here: https://sourceforge.net/projects/simple-data-toolkit/files/0.1.3/sdtk.jar/download


The code will look something like this:


com.sdtk.table.Converter.start().readFile("complex.csv").tsv().textOnly().output().writeFile("complex.psv").psv().execute();

Simple Data Toolkit - Tutorial - PHP - Convert File


Let's suppose you want to create a task that loads a CSV file into an HTML file on a daily basis. This task is meant to be part of a PHP script, but you are unfamiliar with PHP and are unsure of how to write the code. Good news, you can use the Sample Data Toolkit UI to figure out this code for you as follows:


  1. Go to the app page for the Simple Data Toolkit UI, at the time of this writing it is here: https://simple-data-toolkit.sourceforge.io/app/index.html
  2. Click Choose Files.
  3. Find the file you want to convert.
  4. Click Open.
  5. Select the output type you want, for this tutorial we will select HTMLTable.
  6. Then for script, select PHP.
  7. Then click Download Script.

You will now have a PHP script that uses SDTK to convert the file you selected to an HTML. You can now either run this script or integrate it with another one.


If you need to install SDTK for PHP, you can do it by downloading the latest version from SourceForge, unzipping it, and placing it in your include path. At the time of this writing, this can be found here: https://sourceforge.net/projects/simple-data-toolkit/files/0.1.3/sdtk-php.zip/download


The script will look something like this:


<?php
	use \com\sdtk\table\Converter;

	set_include_path(get_include_path().PATH_SEPARATOR.__DIR__.'/lib');
	spl_autoload_register(
		function($class) {
			$file = stream_resolve_include_path(str_replace('\\', '/', $class) .'.php');
			if ($file) {
				include_once $file;
			}
		}
	);
	\php\Boot::__hx__init();

	Converter::start()->readFile("ga_sample.csv")->csv()->textOnly()->output()->writeFile("ga_sample.htmltable")->htmlTable()->execute();

	readfile("ga_sample.htmltable");
?>

Simple Data Toolkit - Tutorial - Ortingo API - Python


At the time of this writing, Ortingo does not have an official API. Fortunately, Simple Data Toolkit provides an unofficial API for reading posts (at the time of this writing, the release of this is pending for complete support, but it is coming soon)
To retrieve all posts for a given user in Python, using Simple Data Toolkit, we can do the following:


        from sdtk import com_sdtk_api_OrtingoAPI
        
        
        def printer(data, reader):
            print(reader.toArrayOfNativeMaps(None))
        
        com_sdtk_api_OrtingoAPI.postsAPI().retrieveData({"owner": "60CQ59FN46SVQFXJ"}, printer)
    

Let's suppose we want only a list of titles for a given user, we can do this instead:


        from sdtk import com_sdtk_api_OrtingoAPI
        
        
        def printer(data, reader):
            print(reader.filterColumnsOnly(["title"]).toArrayOfNativeMaps(None))
        
        com_sdtk_api_OrtingoAPI.postsAPI().retrieveData({"owner": "60CQ59FN46SVQFXJ"}, printer)
    

We can also pull suggested content from Ortingo with the following, where the topics we are searching on are provided with the query parameter (in this case it's value is data):


        from sdtk import com_sdtk_api_OrtingoAPI
    
        def printerUrls(data, reader):
            print(reader.filterColumnsOnly(["url"]).toArrayOfNativeMaps(None))
    
        com_sdtk_api_OrtingoAPI.suggestionsAPI().retrieveData({"query": "data"}, printerUrls)
    

And finally, we can also pull comments attached to a post in Ortingo with the following, where the user is myself and the post is a test post I created:


        from sdtk import com_sdtk_api_OrtingoAPI
    
        def printerComments(data, reader):
            print(reader.filterColumnsOnly(["commentDate", "post"]).toArrayOfNativeMaps(None))
    
        com_sdtk_api_OrtingoAPI.commentsAPI().retrieveData({"owner": "60CQ59FN46SVQFXJ", "id": "test"}, printerComments)
    

The columns supported at the time of this writing are:

  1. id
  2. owner
  3. title
  4. subtitle
  5. post
  6. url

For comments the following columns are supported:

  1. id
  2. owner
  3. commentData
  4. replyTo
  5. post

Simple Data Toolkit - Tutorial - IEEE Events API - Python


Simple Data Toolkit provides an unofficial API for reading events from the IEEE API. (At the time of this writing, the release of this is pending for complete support, but it is coming soon)
To retrieve all events in Python, using Simple Data Toolkit, we can do the following:


        from sdtk import com_sdtk_api_IEEEAPI,com_sdtk_calendar_IEEEEventFormat
    
        def printer(data, reader):
            ieee = com_sdtk_calendar_IEEEEventFormat.instance
            for event in reader.toArrayOfNativeMaps(None):
                ci = ieee.read(event)
                print(ci.summary)
        
        
        com_sdtk_api_IEEEAPI.eventsAPI().retrieveData({"limit": "2"}, printer)
    

Let's suppose we want only a list of titles for a given user, we can do this instead:


We can search using the following parameters:

  1. limit - The limit to the number of events to return
  2. start - The start datetime to search
  3. end - The end datetime to search

The columns supported at the time of this writing are:

  1. created-at mapped to created
  2. start-time mapped to start
  3. end-time mapped to end
  4. title mapped to summary
  5. uid mapped to uid

Simple Data Toolkit - Tutorial - Ethereum via Etherscan - Python


Simple Data Toolkit provides an unofficial API for reading Ethereum transactions from the Etherscan API. (At the time of this writing, the release of this is pending for complete support, but it is coming soon)
To retrieve all Ethereum transactions for a particular address we can do the following:


        from sdtk import com_sdtk_api_EtherscanAPI

        def printer(data, reader):
            print(reader.toArrayOfNativeMaps(None))
        
        com_sdtk_api_EtherscanAPI.transactionsAPI().retrieveData({"address": "0xAddress"}, printer)
    
Replace 0xAddress with the address you wish to search on.

Additionally, we can convert the transactions to our standard internal event interface like so:



        from sdtk import com_sdtk_api_EtherscanAPI,com_sdtk_calendar_EtherscanFormat

        def printerEvents(data, reader):
            etherScan = com_sdtk_calendar_EtherscanFormat.instance()
            for event in reader.toArrayOfNativeMaps(None):
                ci = etherScan.read(event)
                print(ci.start.toString())

        com_sdtk_api_EtherscanAPI.transactionsAPI().retrieveData({"address": "0xAddress"}, printerEvents)
        
Replace 0xAddress with the address you wish to search on.

Simple Data Toolkit - Tutorial - BitTorrent API - Python


Simple Data Toolkit provides an API for retrieving transactions from BitTorrent. (At the time of this writing, the release of this is pending for complete support, but it is coming soon)
To retrieve all transactions in Python, using Simple Data Toolkit, we can do the following:


    from sdtk import com_sdtk_api_BitTorrentAPI

    def printer(data, reader):
        print(reader.toArrayOfNativeMaps(None))
    
    com_sdtk_api_BitTorrentAPI.transactionsAPI().retrieveData({}, printer)    

We can also convert the transactions, to SDTK's internal event/calendar format with the BitTorrentFormat class like so:



    def printerEvents(data, reader):
        etherScan = com_sdtk_calendar_BitTorrentFormat.instance()
        for event in reader.toArrayOfNativeMaps(None):
            ci = etherScan.read(event)
            print(ci)
    com_sdtk_api_BitTorrentAPI.transactionsAPI().retrieveData({}, printerEvents)

We can also search by address, startTimestamp, and endTimestamp.

Simple Data Toolkit - Tutorial - Git API - Python


Simple Data Toolkit provides an unofficial API for reading files, commits, branches, and repos from the Git API. (At the time of this writing, the release of this is pending for complete support, but it is coming soon) To retrieve all repos a user has using Simple Data Toolkit, we can do the following:


        from sdtk import com_sdtk_api_GitAPI
    
        def printer(data, reader):
            print(reader.toArrayOfNativeMaps(None))
    
        com_sdtk_api_GitAPI.reposAPI().retrieveData({"owner": "Vis-LLC"}, printer)
    

To retrieve all branches a repo has using Simple Data Toolkit, we can do the following:


        from sdtk import com_sdtk_api_GitAPI
    
        def printer(data, reader):
            print(reader.toArrayOfNativeMaps(None))
    
        com_sdtk_api_GitAPI.branchesAPI().retrieveData({"owner": "Vis-LLC", "repo": "Simple-Data-Toolkit"}, printer)
    

To retrieve all the files in a branch using Simple Data Toolkit, we can do the following:


        from sdtk import com_sdtk_api_GitAPI
    
        def printer(data, reader):
            print(reader.toArrayOfNativeMaps(None))
    
        com_sdtk_api_GitAPI.filesAPI().retrieveData({"owner": "Vis-LLC", "repo": "Simple-Data-Toolkit", "branch": "main"}, printer)
    

To retrieve the data in a file using Simple Data Toolkit, we can do the following:


        from sdtk import com_sdtk_api_GitAPI
    
        def printerData(data, reader):
            print(data)
    
        com_sdtk_api_GitAPI.retrieveAPI().retrieveData({"owner": "Vis-LLC", "repo": "Simple-Data-Toolkit-UI", "branch": "main", "path": "index.html"}, printerData)
    

We can also login using a personal access token (https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens)


        from sdtk import com_sdtk_api_GitAPI
    
        def printerData(data, reader):
            print(data)
    
        com_sdtk_api_GitAPI.instance().setKey("Personal Access Token Here").retrieveAPI().retrieveData({"owner": "Vis-LLC", "repo": "Simple-Data-Toolkit-UI", "branch": "main", "path": "index.html"}, printerData)
    
PlatformToolURL
PythonSimple Data Toolkithttps://pypi.org/project/sdtk-visllc/
WindowsSimple Table Converterhttps://community.chocolatey.org/packages/stc/0.1.7
Windows Scripting HostSimple Log Grabberhttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/slg-wsh.js/download
Windows Scripting HostSimple Table Converterhttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/stc-wsh.js/download
Windows Scripting HostSimple Data Toolkithttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/sdtk-lib-wsh.js/download
Windows Scripting HostSimple Calendarhttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/calendar-wsh.js/download
PythonSimple Log Grabberhttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/slg.py/download
PythonSimple Table Converterhttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/stc.py/download
PythonSimple Data Toolkithttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/sdtk.py/download
PythonSimple Calendarhttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/calendar.py/download
Web BrowserSimple Log Grabberhttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/slg-browser.js/download
Web BrowserSimple Table Converterhttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/stc-browser.js/download
Web BrowserSimple Data Toolkithttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/sdtk-lib-browser.js/download
Web BrowserSimple Calendarhttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/calendar-browser.js/download
JavaSimple Log Grabberhttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/slg.jar/download
JavaSimple Table Converterhttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/stc.jar/download
JavaSimple Data Toolkithttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/sdtk.jar/download
JavaSimple Calendarhttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/calendar.jar/download
PHPSimple Data Toolkithttps://sourceforge.net/projects/simple-data-toolkit/files/0.1.7/sdtk-php.zip/download
2022-11-05T07:22:38Z0.1.7- Fixed bug with delimited file reading. - Additional features for graphing.
DateVersionComments
2022-08-23T00:33:39Z0.1.6- Updated Chocolatey VERIFICATION.TXT - Added DatabaseReader - Fixed a bug in FileReader that affected Python
2022-08-08T17:53:23Z0.1.5- Bug fixes for alwaysString and MatrixReader
2022-08-04T21:25:41Z0.1.3-hf-Fixed reset function being in the wrong place
2022-08-04T21:17:52Z0.1.4- Bug fixes - First test release of jEdit plugin version - First release of new "Calc" class. - Addition of MatrixReader - Added comments to files where these were forgotten. - Adjusted Haxelib build - Addition of Grapher class
2022-06-16T05:24:58Z0.1.3- Added TeX Output - Added HTMLTable Output - Added "Raw" Output - Updated Chocolatey Build Script - Updated Nuget Build Script - Added WinGet Build Script - Started adjustments for C++ compilation
2022-05-14T16:18:05Z0.1.2Added Chocolatey build Adjusted PIP build Fixed Java build Added new conversion options Adjusted Python build
2022-04-18T18:19:06ZAdded Numerous Features - Snowflake Support (untested) - PIP Support (tested) - Added simple mode (tested) - Added seeking in files (untested)
2022-02-07T22:35:54ZMerge branch 'main' of https://github.com/Vis-LLC/Simple-Data-Toolkit
2022-02-07T22:30:52ZInitial Check-in on GitHub
2022-02-07T22:17:00ZUpdate LICENSE
2022-01-16T23:28:39ZInitial commit
            GNU LESSER GENERAL PUBLIC LICENSE
            Version 3, 29 June 2007

Copyright (C) 2007 Free Software Foundation, Inc. 
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.


This version of the GNU Lesser General Public License incorporates
the terms and conditions of version 3 of the GNU General Public
License, supplemented by the additional permissions listed below.

0. Additional Definitions.

As used herein, "this License" refers to version 3 of the GNU Lesser
General Public License, and the "GNU GPL" refers to version 3 of the GNU
General Public License.

"The Library" refers to a covered work governed by this License,
other than an Application or a Combined Work as defined below.

An "Application" is any work that makes use of an interface provided
by the Library, but which is not otherwise based on the Library.
Defining a subclass of a class defined by the Library is deemed a mode
of using an interface provided by the Library.

A "Combined Work" is a work produced by combining or linking an
Application with the Library.  The particular version of the Library
with which the Combined Work was made is also called the "Linked
Version".

The "Minimal Corresponding Source" for a Combined Work means the
Corresponding Source for the Combined Work, excluding any source code
for portions of the Combined Work that, considered in isolation, are
based on the Application, and not on the Linked Version.

The "Corresponding Application Code" for a Combined Work means the
object code and/or source code for the Application, including any data
and utility programs needed for reproducing the Combined Work from the
Application, but excluding the System Libraries of the Combined Work.

1. Exception to Section 3 of the GNU GPL.

You may convey a covered work under sections 3 and 4 of this License
without being bound by section 3 of the GNU GPL.

2. Conveying Modified Versions.

If you modify a copy of the Library, and, in your modifications, a
facility refers to a function or data to be supplied by an Application
that uses the facility (other than as an argument passed when the
facility is invoked), then you may convey a copy of the modified
version:

a) under this License, provided that you make a good faith effort to
ensure that, in the event an Application does not supply the
function or data, the facility still operates, and performs
whatever part of its purpose remains meaningful, or

b) under the GNU GPL, with none of the additional permissions of
this License applicable to that copy.

3. Object Code Incorporating Material from Library Header Files.

The object code form of an Application may incorporate material from
a header file that is part of the Library.  You may convey such object
code under terms of your choice, provided that, if the incorporated
material is not limited to numerical parameters, data structure
layouts and accessors, or small macros, inline functions and templates
(ten or fewer lines in length), you do both of the following:

a) Give prominent notice with each copy of the object code that the
Library is used in it and that the Library and its use are
covered by this License.

b) Accompany the object code with a copy of the GNU GPL and this license
document.

4. Combined Works.

You may convey a Combined Work under terms of your choice that,
taken together, effectively do not restrict modification of the
portions of the Library contained in the Combined Work and reverse
engineering for debugging such modifications, if you also do each of
the following:

a) Give prominent notice with each copy of the Combined Work that
the Library is used in it and that the Library and its use are
covered by this License.

b) Accompany the Combined Work with a copy of the GNU GPL and this license
document.

c) For a Combined Work that displays copyright notices during
execution, include the copyright notice for the Library among
these notices, as well as a reference directing the user to the
copies of the GNU GPL and this license document.

d) Do one of the following:

0) Convey the Minimal Corresponding Source under the terms of this
License, and the Corresponding Application Code in a form
suitable for, and under terms that permit, the user to
recombine or relink the Application with a modified version of
the Linked Version to produce a modified Combined Work, in the
manner specified by section 6 of the GNU GPL for conveying
Corresponding Source.

1) Use a suitable shared library mechanism for linking with the
Library.  A suitable mechanism is one that (a) uses at run time
a copy of the Library already present on the user's computer
system, and (b) will operate properly with a modified version
of the Library that is interface-compatible with the Linked
Version.

e) Provide Installation Information, but only if you would otherwise
be required to provide such information under section 6 of the
GNU GPL, and only to the extent that such information is
necessary to install and execute a modified version of the
Combined Work produced by recombining or relinking the
Application with a modified version of the Linked Version. (If
you use option 4d0, the Installation Information must accompany
the Minimal Corresponding Source and Corresponding Application
Code. If you use option 4d1, you must provide the Installation
Information in the manner specified by section 6 of the GNU GPL
for conveying Corresponding Source.)

5. Combined Libraries.

You may place library facilities that are a work based on the
Library side by side in a single library together with other library
facilities that are not Applications and are not covered by this
License, and convey such a combined library under terms of your
choice, if you do both of the following:

a) Accompany the combined library with a copy of the same work based
on the Library, uncombined with any other library facilities,
conveyed under the terms of this License.

b) Give prominent notice with the combined library that part of it
is a work based on the Library, and explaining where to find the
accompanying uncombined form of the same work.

6. Revised Versions of the GNU Lesser General Public License.

The Free Software Foundation may publish revised and/or new versions
of the GNU Lesser General Public License from time to time. Such new
versions will be similar in spirit to the present version, but may
differ in detail to address new problems or concerns.

Each version is given a distinguishing version number. If the
Library as you received it specifies that a certain numbered version
of the GNU Lesser General Public License "or any later version"
applies to it, you have the option of following the terms and
conditions either of that published version or of any later version
published by the Free Software Foundation. If the Library as you
received it does not specify a version number of the GNU Lesser
General Public License, you may choose any version of the GNU Lesser
General Public License ever published by the Free Software Foundation.

If the Library as you received it specifies that a proxy can decide
whether future versions of the GNU Lesser General Public License shall
apply, that proxy's public statement of acceptance of any version is
permanent authorization for you to choose that version for the
Library.
LiveDocumentationReleasesVersion HistoryLicenseAbout
PlatformToolURL
DateVersionComments
                GNU LESSER GENERAL PUBLIC LICENSE
                Version 3, 29 June 2007
    
    Copyright (C) 2007 Free Software Foundation, Inc. 
    Everyone is permitted to copy and distribute verbatim copies
    of this license document, but changing it is not allowed.
    
    
    This version of the GNU Lesser General Public License incorporates
    the terms and conditions of version 3 of the GNU General Public
    License, supplemented by the additional permissions listed below.
    
    0. Additional Definitions.
    
    As used herein, "this License" refers to version 3 of the GNU Lesser
    General Public License, and the "GNU GPL" refers to version 3 of the GNU
    General Public License.
    
    "The Library" refers to a covered work governed by this License,
    other than an Application or a Combined Work as defined below.
    
    An "Application" is any work that makes use of an interface provided
    by the Library, but which is not otherwise based on the Library.
    Defining a subclass of a class defined by the Library is deemed a mode
    of using an interface provided by the Library.
    
    A "Combined Work" is a work produced by combining or linking an
    Application with the Library.  The particular version of the Library
    with which the Combined Work was made is also called the "Linked
    Version".
    
    The "Minimal Corresponding Source" for a Combined Work means the
    Corresponding Source for the Combined Work, excluding any source code
    for portions of the Combined Work that, considered in isolation, are
    based on the Application, and not on the Linked Version.
    
    The "Corresponding Application Code" for a Combined Work means the
    object code and/or source code for the Application, including any data
    and utility programs needed for reproducing the Combined Work from the
    Application, but excluding the System Libraries of the Combined Work.
    
    1. Exception to Section 3 of the GNU GPL.
    
    You may convey a covered work under sections 3 and 4 of this License
    without being bound by section 3 of the GNU GPL.
    
    2. Conveying Modified Versions.
    
    If you modify a copy of the Library, and, in your modifications, a
    facility refers to a function or data to be supplied by an Application
    that uses the facility (other than as an argument passed when the
    facility is invoked), then you may convey a copy of the modified
    version:
    
    a) under this License, provided that you make a good faith effort to
    ensure that, in the event an Application does not supply the
    function or data, the facility still operates, and performs
    whatever part of its purpose remains meaningful, or
    
    b) under the GNU GPL, with none of the additional permissions of
    this License applicable to that copy.
    
    3. Object Code Incorporating Material from Library Header Files.
    
    The object code form of an Application may incorporate material from
    a header file that is part of the Library.  You may convey such object
    code under terms of your choice, provided that, if the incorporated
    material is not limited to numerical parameters, data structure
    layouts and accessors, or small macros, inline functions and templates
    (ten or fewer lines in length), you do both of the following:
    
    a) Give prominent notice with each copy of the object code that the
    Library is used in it and that the Library and its use are
    covered by this License.
    
    b) Accompany the object code with a copy of the GNU GPL and this license
    document.
    
    4. Combined Works.
    
    You may convey a Combined Work under terms of your choice that,
    taken together, effectively do not restrict modification of the
    portions of the Library contained in the Combined Work and reverse
    engineering for debugging such modifications, if you also do each of
    the following:
    
    a) Give prominent notice with each copy of the Combined Work that
    the Library is used in it and that the Library and its use are
    covered by this License.
    
    b) Accompany the Combined Work with a copy of the GNU GPL and this license
    document.
    
    c) For a Combined Work that displays copyright notices during
    execution, include the copyright notice for the Library among
    these notices, as well as a reference directing the user to the
    copies of the GNU GPL and this license document.
    
    d) Do one of the following:
    
    0) Convey the Minimal Corresponding Source under the terms of this
    License, and the Corresponding Application Code in a form
    suitable for, and under terms that permit, the user to
    recombine or relink the Application with a modified version of
    the Linked Version to produce a modified Combined Work, in the
    manner specified by section 6 of the GNU GPL for conveying
    Corresponding Source.
    
    1) Use a suitable shared library mechanism for linking with the
    Library.  A suitable mechanism is one that (a) uses at run time
    a copy of the Library already present on the user's computer
    system, and (b) will operate properly with a modified version
    of the Library that is interface-compatible with the Linked
    Version.
    
    e) Provide Installation Information, but only if you would otherwise
    be required to provide such information under section 6 of the
    GNU GPL, and only to the extent that such information is
    necessary to install and execute a modified version of the
    Combined Work produced by recombining or relinking the
    Application with a modified version of the Linked Version. (If
    you use option 4d0, the Installation Information must accompany
    the Minimal Corresponding Source and Corresponding Application
    Code. If you use option 4d1, you must provide the Installation
    Information in the manner specified by section 6 of the GNU GPL
    for conveying Corresponding Source.)
    
    5. Combined Libraries.
    
    You may place library facilities that are a work based on the
    Library side by side in a single library together with other library
    facilities that are not Applications and are not covered by this
    License, and convey such a combined library under terms of your
    choice, if you do both of the following:
    
    a) Accompany the combined library with a copy of the same work based
    on the Library, uncombined with any other library facilities,
    conveyed under the terms of this License.
    
    b) Give prominent notice with the combined library that part of it
    is a work based on the Library, and explaining where to find the
    accompanying uncombined form of the same work.
    
    6. Revised Versions of the GNU Lesser General Public License.
    
    The Free Software Foundation may publish revised and/or new versions
    of the GNU Lesser General Public License from time to time. Such new
    versions will be similar in spirit to the present version, but may
    differ in detail to address new problems or concerns.
    
    Each version is given a distinguishing version number. If the
    Library as you received it specifies that a certain numbered version
    of the GNU Lesser General Public License "or any later version"
    applies to it, you have the option of following the terms and
    conditions either of that published version or of any later version
    published by the Free Software Foundation. If the Library as you
    received it does not specify a version number of the GNU Lesser
    General Public License, you may choose any version of the GNU Lesser
    General Public License ever published by the Free Software Foundation.
    
    If the Library as you received it specifies that a proxy can decide
    whether future versions of the GNU Lesser General Public License shall
    apply, that proxy's public statement of acceptance of any version is
    permanent authorization for you to choose that version for the
    Library.
    
LiveDocumentationReleasesVersion HistoryLicenseAbout
DateVersionComments
2022-09-17T19:07:14Z0.1.2- Minor code adjustments
2022-03-19T19:21:53ZUpdates Added documentation. Added flags.
2022-02-09T19:25:25ZInitial Github Check-in
2022-01-17T07:13:06ZInitial commit
GNU LESSER GENERAL PUBLIC LICENSE
            GNU LESSER GENERAL PUBLIC LICENSE
            Version 3, 29 June 2007

Copyright (C) 2007 Free Software Foundation, Inc. 
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.


This version of the GNU Lesser General Public License incorporates
the terms and conditions of version 3 of the GNU General Public
License, supplemented by the additional permissions listed below.

0. Additional Definitions.

As used herein, "this License" refers to version 3 of the GNU Lesser
General Public License, and the "GNU GPL" refers to version 3 of the GNU
General Public License.

"The Library" refers to a covered work governed by this License,
other than an Application or a Combined Work as defined below.

An "Application" is any work that makes use of an interface provided
by the Library, but which is not otherwise based on the Library.
Defining a subclass of a class defined by the Library is deemed a mode
of using an interface provided by the Library.

A "Combined Work" is a work produced by combining or linking an
Application with the Library.  The particular version of the Library
with which the Combined Work was made is also called the "Linked
Version".

The "Minimal Corresponding Source" for a Combined Work means the
Corresponding Source for the Combined Work, excluding any source code
for portions of the Combined Work that, considered in isolation, are
based on the Application, and not on the Linked Version.

The "Corresponding Application Code" for a Combined Work means the
object code and/or source code for the Application, including any data
and utility programs needed for reproducing the Combined Work from the
Application, but excluding the System Libraries of the Combined Work.

1. Exception to Section 3 of the GNU GPL.

You may convey a covered work under sections 3 and 4 of this License
without being bound by section 3 of the GNU GPL.

2. Conveying Modified Versions.

If you modify a copy of the Library, and, in your modifications, a
facility refers to a function or data to be supplied by an Application
that uses the facility (other than as an argument passed when the
facility is invoked), then you may convey a copy of the modified
version:

a) under this License, provided that you make a good faith effort to
ensure that, in the event an Application does not supply the
function or data, the facility still operates, and performs
whatever part of its purpose remains meaningful, or

b) under the GNU GPL, with none of the additional permissions of
this License applicable to that copy.

3. Object Code Incorporating Material from Library Header Files.

The object code form of an Application may incorporate material from
a header file that is part of the Library.  You may convey such object
code under terms of your choice, provided that, if the incorporated
material is not limited to numerical parameters, data structure
layouts and accessors, or small macros, inline functions and templates
(ten or fewer lines in length), you do both of the following:

a) Give prominent notice with each copy of the object code that the
Library is used in it and that the Library and its use are
covered by this License.

b) Accompany the object code with a copy of the GNU GPL and this license
document.

4. Combined Works.

You may convey a Combined Work under terms of your choice that,
taken together, effectively do not restrict modification of the
portions of the Library contained in the Combined Work and reverse
engineering for debugging such modifications, if you also do each of
the following:

a) Give prominent notice with each copy of the Combined Work that
the Library is used in it and that the Library and its use are
covered by this License.

b) Accompany the Combined Work with a copy of the GNU GPL and this license
document.

c) For a Combined Work that displays copyright notices during
execution, include the copyright notice for the Library among
these notices, as well as a reference directing the user to the
copies of the GNU GPL and this license document.

d) Do one of the following:

0) Convey the Minimal Corresponding Source under the terms of this
License, and the Corresponding Application Code in a form
suitable for, and under terms that permit, the user to
recombine or relink the Application with a modified version of
the Linked Version to produce a modified Combined Work, in the
manner specified by section 6 of the GNU GPL for conveying
Corresponding Source.

1) Use a suitable shared library mechanism for linking with the
Library.  A suitable mechanism is one that (a) uses at run time
a copy of the Library already present on the user's computer
system, and (b) will operate properly with a modified version
of the Library that is interface-compatible with the Linked
Version.

e) Provide Installation Information, but only if you would otherwise
be required to provide such information under section 6 of the
GNU GPL, and only to the extent that such information is
necessary to install and execute a modified version of the
Combined Work produced by recombining or relinking the
Application with a modified version of the Linked Version. (If
you use option 4d0, the Installation Information must accompany
the Minimal Corresponding Source and Corresponding Application
Code. If you use option 4d1, you must provide the Installation
Information in the manner specified by section 6 of the GNU GPL
for conveying Corresponding Source.)

5. Combined Libraries.

You may place library facilities that are a work based on the
Library side by side in a single library together with other library
facilities that are not Applications and are not covered by this
License, and convey such a combined library under terms of your
choice, if you do both of the following:

a) Accompany the combined library with a copy of the same work based
on the Library, uncombined with any other library facilities,
conveyed under the terms of this License.

b) Give prominent notice with the combined library that part of it
is a work based on the Library, and explaining where to find the
accompanying uncombined form of the same work.

6. Revised Versions of the GNU Lesser General Public License.

The Free Software Foundation may publish revised and/or new versions
of the GNU Lesser General Public License from time to time. Such new
versions will be similar in spirit to the present version, but may
differ in detail to address new problems or concerns.

Each version is given a distinguishing version number. If the
Library as you received it specifies that a certain numbered version
of the GNU Lesser General Public License "or any later version"
applies to it, you have the option of following the terms and
conditions either of that published version or of any later version
published by the Free Software Foundation. If the Library as you
received it does not specify a version number of the GNU Lesser
General Public License, you may choose any version of the GNU Lesser
General Public License ever published by the Free Software Foundation.

If the Library as you received it specifies that a proxy can decide
whether future versions of the GNU Lesser General Public License shall
apply, that proxy's public statement of acceptance of any version is
permanent authorization for you to choose that version for the
Library.
        

Vis Mines

Franklin E. Powers, Jr.

March 19, 2022

1 Introduction

Vis Mines is a simple minesweeper clone created with RR (Restricted Roller - https://sourceforge.net/projects/restricted-roller/)) and Field Engine (https://sourceforge.net/projects/field-engine/) for display. A live example can be seen here: https://vis-mines.sourceforge.io/app/index.html. The project GIT repo can be found here: https://github.com/Vis-LLC/Vis-Mines

1.1 Supported Programming Languages


JavaScript

1.2 Examples of Use



Copyright (C) 2022, Vis LLC.
All Rights Reserved.
LiveDocumentationReleasesVersion HistoryLicenseAbout
DateVersionComments
2022-09-17T19:02:22Z0.1.2- Minor code adjustments
2022-03-19T19:32:22ZAdded documentation
2022-02-09T19:24:51ZCorrect copyright notice
2022-02-09T16:12:29ZInitial Check-in on GItHub
2022-01-17T07:14:54ZInitial commit
            GNU LESSER GENERAL PUBLIC LICENSE
            Version 3, 29 June 2007

Copyright (C) 2007 Free Software Foundation, Inc. 
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.


This version of the GNU Lesser General Public License incorporates
the terms and conditions of version 3 of the GNU General Public
License, supplemented by the additional permissions listed below.

0. Additional Definitions.

As used herein, "this License" refers to version 3 of the GNU Lesser
General Public License, and the "GNU GPL" refers to version 3 of the GNU
General Public License.

"The Library" refers to a covered work governed by this License,
other than an Application or a Combined Work as defined below.

An "Application" is any work that makes use of an interface provided
by the Library, but which is not otherwise based on the Library.
Defining a subclass of a class defined by the Library is deemed a mode
of using an interface provided by the Library.

A "Combined Work" is a work produced by combining or linking an
Application with the Library.  The particular version of the Library
with which the Combined Work was made is also called the "Linked
Version".

The "Minimal Corresponding Source" for a Combined Work means the
Corresponding Source for the Combined Work, excluding any source code
for portions of the Combined Work that, considered in isolation, are
based on the Application, and not on the Linked Version.

The "Corresponding Application Code" for a Combined Work means the
object code and/or source code for the Application, including any data
and utility programs needed for reproducing the Combined Work from the
Application, but excluding the System Libraries of the Combined Work.

1. Exception to Section 3 of the GNU GPL.

You may convey a covered work under sections 3 and 4 of this License
without being bound by section 3 of the GNU GPL.

2. Conveying Modified Versions.

If you modify a copy of the Library, and, in your modifications, a
facility refers to a function or data to be supplied by an Application
that uses the facility (other than as an argument passed when the
facility is invoked), then you may convey a copy of the modified
version:

a) under this License, provided that you make a good faith effort to
ensure that, in the event an Application does not supply the
function or data, the facility still operates, and performs
whatever part of its purpose remains meaningful, or

b) under the GNU GPL, with none of the additional permissions of
this License applicable to that copy.

3. Object Code Incorporating Material from Library Header Files.

The object code form of an Application may incorporate material from
a header file that is part of the Library.  You may convey such object
code under terms of your choice, provided that, if the incorporated
material is not limited to numerical parameters, data structure
layouts and accessors, or small macros, inline functions and templates
(ten or fewer lines in length), you do both of the following:

a) Give prominent notice with each copy of the object code that the
Library is used in it and that the Library and its use are
covered by this License.

b) Accompany the object code with a copy of the GNU GPL and this license
document.

4. Combined Works.

You may convey a Combined Work under terms of your choice that,
taken together, effectively do not restrict modification of the
portions of the Library contained in the Combined Work and reverse
engineering for debugging such modifications, if you also do each of
the following:

a) Give prominent notice with each copy of the Combined Work that
the Library is used in it and that the Library and its use are
covered by this License.

b) Accompany the Combined Work with a copy of the GNU GPL and this license
document.

c) For a Combined Work that displays copyright notices during
execution, include the copyright notice for the Library among
these notices, as well as a reference directing the user to the
copies of the GNU GPL and this license document.

d) Do one of the following:

0) Convey the Minimal Corresponding Source under the terms of this
License, and the Corresponding Application Code in a form
suitable for, and under terms that permit, the user to
recombine or relink the Application with a modified version of
the Linked Version to produce a modified Combined Work, in the
manner specified by section 6 of the GNU GPL for conveying
Corresponding Source.

1) Use a suitable shared library mechanism for linking with the
Library.  A suitable mechanism is one that (a) uses at run time
a copy of the Library already present on the user's computer
system, and (b) will operate properly with a modified version
of the Library that is interface-compatible with the Linked
Version.

e) Provide Installation Information, but only if you would otherwise
be required to provide such information under section 6 of the
GNU GPL, and only to the extent that such information is
necessary to install and execute a modified version of the
Combined Work produced by recombining or relinking the
Application with a modified version of the Linked Version. (If
you use option 4d0, the Installation Information must accompany
the Minimal Corresponding Source and Corresponding Application
Code. If you use option 4d1, you must provide the Installation
Information in the manner specified by section 6 of the GNU GPL
for conveying Corresponding Source.)

5. Combined Libraries.

You may place library facilities that are a work based on the
Library side by side in a single library together with other library
facilities that are not Applications and are not covered by this
License, and convey such a combined library under terms of your
choice, if you do both of the following:

a) Accompany the combined library with a copy of the same work based
on the Library, uncombined with any other library facilities,
conveyed under the terms of this License.

b) Give prominent notice with the combined library that part of it
is a work based on the Library, and explaining where to find the
accompanying uncombined form of the same work.

6. Revised Versions of the GNU Lesser General Public License.

The Free Software Foundation may publish revised and/or new versions
of the GNU Lesser General Public License from time to time. Such new
versions will be similar in spirit to the present version, but may
differ in detail to address new problems or concerns.

Each version is given a distinguishing version number. If the
Library as you received it specifies that a certain numbered version
of the GNU Lesser General Public License "or any later version"
applies to it, you have the option of following the terms and
conditions either of that published version or of any later version
published by the Free Software Foundation. If the Library as you
received it does not specify a version number of the GNU Lesser
General Public License, you may choose any version of the GNU Lesser
General Public License ever published by the Free Software Foundation.

If the Library as you received it specifies that a proxy can decide
whether future versions of the GNU Lesser General Public License shall
apply, that proxy's public statement of acceptance of any version is
permanent authorization for you to choose that version for the
Library.

Vis Sudoku

Franklin E. Powers, Jr.

March 19, 2022

1 Introduction

Vis Sudoku is a simple Sudoku game created with RR (Restricted Roller - https://sourceforge.net/projects/restricted-roller/)) and Field Engine (https://sourceforge.net/projects/field-engine/) for display. A live example can be seen here: https://vis-sudoku.sourceforge.io/app/index.html. The project GIT repo can be found here: https://github.com/Vis-LLC/Vis-Sudoku

1.1 Supported Programming Languages


JavaScript



Copyright (C) 2022, Vis LLC.
All Rights Reserved.
LiveDocumentationReleasesVersion HistoryLicenseAbout
PlatformToolURL
DateVersionComments
                GNU LESSER GENERAL PUBLIC LICENSE
                Version 3, 29 June 2007
    
    Copyright (C) 2007 Free Software Foundation, Inc. 
    Everyone is permitted to copy and distribute verbatim copies
    of this license document, but changing it is not allowed.
    
    
    This version of the GNU Lesser General Public License incorporates
    the terms and conditions of version 3 of the GNU General Public
    License, supplemented by the additional permissions listed below.
    
    0. Additional Definitions.
    
    As used herein, "this License" refers to version 3 of the GNU Lesser
    General Public License, and the "GNU GPL" refers to version 3 of the GNU
    General Public License.
    
    "The Library" refers to a covered work governed by this License,
    other than an Application or a Combined Work as defined below.
    
    An "Application" is any work that makes use of an interface provided
    by the Library, but which is not otherwise based on the Library.
    Defining a subclass of a class defined by the Library is deemed a mode
    of using an interface provided by the Library.
    
    A "Combined Work" is a work produced by combining or linking an
    Application with the Library.  The particular version of the Library
    with which the Combined Work was made is also called the "Linked
    Version".
    
    The "Minimal Corresponding Source" for a Combined Work means the
    Corresponding Source for the Combined Work, excluding any source code
    for portions of the Combined Work that, considered in isolation, are
    based on the Application, and not on the Linked Version.
    
    The "Corresponding Application Code" for a Combined Work means the
    object code and/or source code for the Application, including any data
    and utility programs needed for reproducing the Combined Work from the
    Application, but excluding the System Libraries of the Combined Work.
    
    1. Exception to Section 3 of the GNU GPL.
    
    You may convey a covered work under sections 3 and 4 of this License
    without being bound by section 3 of the GNU GPL.
    
    2. Conveying Modified Versions.
    
    If you modify a copy of the Library, and, in your modifications, a
    facility refers to a function or data to be supplied by an Application
    that uses the facility (other than as an argument passed when the
    facility is invoked), then you may convey a copy of the modified
    version:
    
    a) under this License, provided that you make a good faith effort to
    ensure that, in the event an Application does not supply the
    function or data, the facility still operates, and performs
    whatever part of its purpose remains meaningful, or
    
    b) under the GNU GPL, with none of the additional permissions of
    this License applicable to that copy.
    
    3. Object Code Incorporating Material from Library Header Files.
    
    The object code form of an Application may incorporate material from
    a header file that is part of the Library.  You may convey such object
    code under terms of your choice, provided that, if the incorporated
    material is not limited to numerical parameters, data structure
    layouts and accessors, or small macros, inline functions and templates
    (ten or fewer lines in length), you do both of the following:
    
    a) Give prominent notice with each copy of the object code that the
    Library is used in it and that the Library and its use are
    covered by this License.
    
    b) Accompany the object code with a copy of the GNU GPL and this license
    document.
    
    4. Combined Works.
    
    You may convey a Combined Work under terms of your choice that,
    taken together, effectively do not restrict modification of the
    portions of the Library contained in the Combined Work and reverse
    engineering for debugging such modifications, if you also do each of
    the following:
    
    a) Give prominent notice with each copy of the Combined Work that
    the Library is used in it and that the Library and its use are
    covered by this License.
    
    b) Accompany the Combined Work with a copy of the GNU GPL and this license
    document.
    
    c) For a Combined Work that displays copyright notices during
    execution, include the copyright notice for the Library among
    these notices, as well as a reference directing the user to the
    copies of the GNU GPL and this license document.
    
    d) Do one of the following:
    
    0) Convey the Minimal Corresponding Source under the terms of this
    License, and the Corresponding Application Code in a form
    suitable for, and under terms that permit, the user to
    recombine or relink the Application with a modified version of
    the Linked Version to produce a modified Combined Work, in the
    manner specified by section 6 of the GNU GPL for conveying
    Corresponding Source.
    
    1) Use a suitable shared library mechanism for linking with the
    Library.  A suitable mechanism is one that (a) uses at run time
    a copy of the Library already present on the user's computer
    system, and (b) will operate properly with a modified version
    of the Library that is interface-compatible with the Linked
    Version.
    
    e) Provide Installation Information, but only if you would otherwise
    be required to provide such information under section 6 of the
    GNU GPL, and only to the extent that such information is
    necessary to install and execute a modified version of the
    Combined Work produced by recombining or relinking the
    Application with a modified version of the Linked Version. (If
    you use option 4d0, the Installation Information must accompany
    the Minimal Corresponding Source and Corresponding Application
    Code. If you use option 4d1, you must provide the Installation
    Information in the manner specified by section 6 of the GNU GPL
    for conveying Corresponding Source.)
    
    5. Combined Libraries.
    
    You may place library facilities that are a work based on the
    Library side by side in a single library together with other library
    facilities that are not Applications and are not covered by this
    License, and convey such a combined library under terms of your
    choice, if you do both of the following:
    
    a) Accompany the combined library with a copy of the same work based
    on the Library, uncombined with any other library facilities,
    conveyed under the terms of this License.
    
    b) Give prominent notice with the combined library that part of it
    is a work based on the Library, and explaining where to find the
    accompanying uncombined form of the same work.
    
    6. Revised Versions of the GNU Lesser General Public License.
    
    The Free Software Foundation may publish revised and/or new versions
    of the GNU Lesser General Public License from time to time. Such new
    versions will be similar in spirit to the present version, but may
    differ in detail to address new problems or concerns.
    
    Each version is given a distinguishing version number. If the
    Library as you received it specifies that a certain numbered version
    of the GNU Lesser General Public License "or any later version"
    applies to it, you have the option of following the terms and
    conditions either of that published version or of any later version
    published by the Free Software Foundation. If the Library as you
    received it does not specify a version number of the GNU Lesser
    General Public License, you may choose any version of the GNU Lesser
    General Public License ever published by the Free Software Foundation.
    
    If the Library as you received it specifies that a proxy can decide
    whether future versions of the GNU Lesser General Public License shall
    apply, that proxy's public statement of acceptance of any version is
    permanent authorization for you to choose that version for the
    Library.
    
LiveDocumentationReleasesVersion HistoryLicenseAbout

Field Engine - Tutorial - Basic Hex Grid with HTML


On occassion, we need to display information in hex grids. With Field Engine, this is a relatively painless task.


We need to include the Field Engine files:


            <link href="FieldEngine.css" rel="stylesheet" />
            <link href="FieldEngine-Defaults.css" rel="stylesheet" />
            <script src="fe-browser.js"></script> 
        

Then we need to specify the CSS for the hex grid, we�re going to make our borders black and our hexes white:


            .field-hex .field_view_inner {
                background-color: black;
            }
            .field-hex .field_location {
                background-color: white;
                color: black;
            }   
        

Then we specify the hex grid with a table and the class field-hex, like so:

            <table class="field-hex" columns="3" rows="3" borderWidth=�1px� borderColor=�black�>
                <tr><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td></tr>
                <tr><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td></tr>
                <tr><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td></tr>
                <tr><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td></tr>
                <tr><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td></tr>
                <tr><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td></tr>
                <tr><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td></tr>
                <tr><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td></tr>
                <tr><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td></tr>
                <tr><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td></tr>
            </table>
        

And like magic, we have a hex grid.

Field Engine - Tutorial - Basic Scrollable Table with HTML


Frequently we need a table that a user can scroll through to present data for users. This is very easy with Field Engine and can be done with a few simple steps.


We need to include the Field Engine files:

            <link href="FieldEngine.css" rel="stylesheet" />
            <link href="FieldEngine-Defaults.css" rel="stylesheet" />
            <script src="fe-browser.js"></script> 
        

Then we need to specify the CSS for the hex grid, we�re going to make our borders black and our hexes white:

            .field-hex .field_view_inner {
                background-color: black;
            }
            .field-hex .field_location {
                background-color: white;
                color: black;
            }
        

Then we specify the scrollable table with a table and the class field-table

            <table class="field-table" columns="3" rows="3">
                <tr><th>Col A</th><th>Col B</th></tr>
                <tr><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td></tr>
                <tr><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td></tr>
                <tr><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td></tr>
                <tr><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td></tr>
                <tr><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td></tr>
                <tr><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td></tr>
                <tr><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td></tr>
                <tr><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td></tr>
                <tr><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td><td>123</td><td>456</td></tr>
                <tr><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td><td>789</td><td>012</td></tr>
            </table>
        

And like that you have a scrollable table. Note that columns and rows specify the size of the view of the data.

Field Engine - Tutorial - Basic Vertical Menu with HTML


At times we need to display a vertical menu for users. This is very easy with Field Engine and can be done with a few simple steps.


We need to include the Field Engine files:

            <link href="FieldEngine.css" rel="stylesheet" />
            <link href="FieldEngine-Defaults.css" rel="stylesheet" />
            <script src="fe-browser.js"></script> 
        

Then we need to specify the CSS for the hex grid, we're going to make our borders black and our hexes white:

            .field-hex .field_view_inner {
                background-color: black;
            }
            .field-hex .field_location {
                background-color: white;
                color: black;
            }   
        

Then we specify the scrollable table with a ul tag and the class field-vertical-menu:

            <ul class="field-vertical-menu">
                <li>Menu</li>
                <li level="1" onclick="switchToTable">Table</li>
                <li level="1" onclick="switchToHex">Hex</li>
            </ul>
        

And we'll have a fully functional vertical menu.

PlatformToolURL
SourceHaxehttps://sourceforge.net/projects/field-engine/files/0.1.3/field-engine-src.zip/download
Web BrowserJavaScripthttps://sourceforge.net/projects/field-engine/files/0.1.3/fe-browser.js/download
DateVersionComments
2022-09-17T18:52:15Z0.1.4- Added PHP build - Added GraphView - Added mouse wheel control - Added VerticalMenu - Adjusted base64.js for better backwards compatibility
2022-06-16T06:14:03Z0.1.3
2022-03-20T16:27:54ZUpdate how multitouch tap is handled
2022-03-19T07:28:14ZSlight update to documentation
2022-03-19T07:10:21ZImprovements Documentation cleanup. Improved hex support. Support for second mouse button and multi-finger taps. Improved performance.
2022-02-07T22:32:03ZInitial Check-in on GitHub
2022-01-17T07:08:39ZInitial commit
                GNU LESSER GENERAL PUBLIC LICENSE
                Version 3, 29 June 2007
    
    Copyright (C) 2007 Free Software Foundation, Inc. 
    Everyone is permitted to copy and distribute verbatim copies
    of this license document, but changing it is not allowed.
    
    
    This version of the GNU Lesser General Public License incorporates
    the terms and conditions of version 3 of the GNU General Public
    License, supplemented by the additional permissions listed below.
    
    0. Additional Definitions.
    
    As used herein, "this License" refers to version 3 of the GNU Lesser
    General Public License, and the "GNU GPL" refers to version 3 of the GNU
    General Public License.
    
    "The Library" refers to a covered work governed by this License,
    other than an Application or a Combined Work as defined below.
    
    An "Application" is any work that makes use of an interface provided
    by the Library, but which is not otherwise based on the Library.
    Defining a subclass of a class defined by the Library is deemed a mode
    of using an interface provided by the Library.
    
    A "Combined Work" is a work produced by combining or linking an
    Application with the Library.  The particular version of the Library
    with which the Combined Work was made is also called the "Linked
    Version".
    
    The "Minimal Corresponding Source" for a Combined Work means the
    Corresponding Source for the Combined Work, excluding any source code
    for portions of the Combined Work that, considered in isolation, are
    based on the Application, and not on the Linked Version.
    
    The "Corresponding Application Code" for a Combined Work means the
    object code and/or source code for the Application, including any data
    and utility programs needed for reproducing the Combined Work from the
    Application, but excluding the System Libraries of the Combined Work.
    
    1. Exception to Section 3 of the GNU GPL.
    
    You may convey a covered work under sections 3 and 4 of this License
    without being bound by section 3 of the GNU GPL.
    
    2. Conveying Modified Versions.
    
    If you modify a copy of the Library, and, in your modifications, a
    facility refers to a function or data to be supplied by an Application
    that uses the facility (other than as an argument passed when the
    facility is invoked), then you may convey a copy of the modified
    version:
    
    a) under this License, provided that you make a good faith effort to
    ensure that, in the event an Application does not supply the
    function or data, the facility still operates, and performs
    whatever part of its purpose remains meaningful, or
    
    b) under the GNU GPL, with none of the additional permissions of
    this License applicable to that copy.
    
    3. Object Code Incorporating Material from Library Header Files.
    
    The object code form of an Application may incorporate material from
    a header file that is part of the Library.  You may convey such object
    code under terms of your choice, provided that, if the incorporated
    material is not limited to numerical parameters, data structure
    layouts and accessors, or small macros, inline functions and templates
    (ten or fewer lines in length), you do both of the following:
    
    a) Give prominent notice with each copy of the object code that the
    Library is used in it and that the Library and its use are
    covered by this License.
    
    b) Accompany the object code with a copy of the GNU GPL and this license
    document.
    
    4. Combined Works.
    
    You may convey a Combined Work under terms of your choice that,
    taken together, effectively do not restrict modification of the
    portions of the Library contained in the Combined Work and reverse
    engineering for debugging such modifications, if you also do each of
    the following:
    
    a) Give prominent notice with each copy of the Combined Work that
    the Library is used in it and that the Library and its use are
    covered by this License.
    
    b) Accompany the Combined Work with a copy of the GNU GPL and this license
    document.
    
    c) For a Combined Work that displays copyright notices during
    execution, include the copyright notice for the Library among
    these notices, as well as a reference directing the user to the
    copies of the GNU GPL and this license document.
    
    d) Do one of the following:
    
    0) Convey the Minimal Corresponding Source under the terms of this
    License, and the Corresponding Application Code in a form
    suitable for, and under terms that permit, the user to
    recombine or relink the Application with a modified version of
    the Linked Version to produce a modified Combined Work, in the
    manner specified by section 6 of the GNU GPL for conveying
    Corresponding Source.
    
    1) Use a suitable shared library mechanism for linking with the
    Library.  A suitable mechanism is one that (a) uses at run time
    a copy of the Library already present on the user's computer
    system, and (b) will operate properly with a modified version
    of the Library that is interface-compatible with the Linked
    Version.
    
    e) Provide Installation Information, but only if you would otherwise
    be required to provide such information under section 6 of the
    GNU GPL, and only to the extent that such information is
    necessary to install and execute a modified version of the
    Combined Work produced by recombining or relinking the
    Application with a modified version of the Linked Version. (If
    you use option 4d0, the Installation Information must accompany
    the Minimal Corresponding Source and Corresponding Application
    Code. If you use option 4d1, you must provide the Installation
    Information in the manner specified by section 6 of the GNU GPL
    for conveying Corresponding Source.)
    
    5. Combined Libraries.
    
    You may place library facilities that are a work based on the
    Library side by side in a single library together with other library
    facilities that are not Applications and are not covered by this
    License, and convey such a combined library under terms of your
    choice, if you do both of the following:
    
    a) Accompany the combined library with a copy of the same work based
    on the Library, uncombined with any other library facilities,
    conveyed under the terms of this License.
    
    b) Give prominent notice with the combined library that part of it
    is a work based on the Library, and explaining where to find the
    accompanying uncombined form of the same work.
    
    6. Revised Versions of the GNU Lesser General Public License.
    
    The Free Software Foundation may publish revised and/or new versions
    of the GNU Lesser General Public License from time to time. Such new
    versions will be similar in spirit to the present version, but may
    differ in detail to address new problems or concerns.
    
    Each version is given a distinguishing version number. If the
    Library as you received it specifies that a certain numbered version
    of the GNU Lesser General Public License "or any later version"
    applies to it, you have the option of following the terms and
    conditions either of that published version or of any later version
    published by the Free Software Foundation. If the Library as you
    received it does not specify a version number of the GNU Lesser
    General Public License, you may choose any version of the GNU Lesser
    General Public License ever published by the Free Software Foundation.
    
    If the Library as you received it specifies that a proxy can decide
    whether future versions of the GNU Lesser General Public License shall
    apply, that proxy's public statement of acceptance of any version is
    permanent authorization for you to choose that version for the
    Library.
    
Field Engine is a library for displaying data in a grid. It was originally meant to be a simple 2D game engine, though when combined with Simple Data Toolkit it can be used to display a variety of of things in a grid.
LiveDocumentationReleasesVersion HistoryLicenseAbout
PlatformToolURL
DateVersionComments

Hydra PPS (Parallel Programming System) extends the Java language and virtual machine with new parallel constructs. It also allows programs to be compiled for a particular parallel architecture at runtime on the user's machine rather than on the machine of the developer. This allows a program to run on and be optimized for the user's computer. Right now only an SMP (Symmetric Multiprocessing) runtime is available. However, development is underway for more runtimes.
LiveDocumentationReleasesVersion HistoryLicenseAbout
PlatformToolURL
SourceHaxehttps://sourceforge.net/projects/restricted-roller/files/restricted-roller-src-0.0.4.zip/download
DateVersionComments
2022-09-17T18:31:46Z0.0.5- Added WordSearch and Crossword generation. - Added Python and PIP builds.
2022-03-19T19:40:01ZAdded documentation
2022-02-08T19:09:55ZInitial version on GitHub
                GNU LESSER GENERAL PUBLIC LICENSE
                Version 3, 29 June 2007
    
    Copyright (C) 2007 Free Software Foundation, Inc. 
    Everyone is permitted to copy and distribute verbatim copies
    of this license document, but changing it is not allowed.
    
    
    This version of the GNU Lesser General Public License incorporates
    the terms and conditions of version 3 of the GNU General Public
    License, supplemented by the additional permissions listed below.
    
    0. Additional Definitions.
    
    As used herein, "this License" refers to version 3 of the GNU Lesser
    General Public License, and the "GNU GPL" refers to version 3 of the GNU
    General Public License.
    
    "The Library" refers to a covered work governed by this License,
    other than an Application or a Combined Work as defined below.
    
    An "Application" is any work that makes use of an interface provided
    by the Library, but which is not otherwise based on the Library.
    Defining a subclass of a class defined by the Library is deemed a mode
    of using an interface provided by the Library.
    
    A "Combined Work" is a work produced by combining or linking an
    Application with the Library.  The particular version of the Library
    with which the Combined Work was made is also called the "Linked
    Version".
    
    The "Minimal Corresponding Source" for a Combined Work means the
    Corresponding Source for the Combined Work, excluding any source code
    for portions of the Combined Work that, considered in isolation, are
    based on the Application, and not on the Linked Version.
    
    The "Corresponding Application Code" for a Combined Work means the
    object code and/or source code for the Application, including any data
    and utility programs needed for reproducing the Combined Work from the
    Application, but excluding the System Libraries of the Combined Work.
    
    1. Exception to Section 3 of the GNU GPL.
    
    You may convey a covered work under sections 3 and 4 of this License
    without being bound by section 3 of the GNU GPL.
    
    2. Conveying Modified Versions.
    
    If you modify a copy of the Library, and, in your modifications, a
    facility refers to a function or data to be supplied by an Application
    that uses the facility (other than as an argument passed when the
    facility is invoked), then you may convey a copy of the modified
    version:
    
    a) under this License, provided that you make a good faith effort to
    ensure that, in the event an Application does not supply the
    function or data, the facility still operates, and performs
    whatever part of its purpose remains meaningful, or
    
    b) under the GNU GPL, with none of the additional permissions of
    this License applicable to that copy.
    
    3. Object Code Incorporating Material from Library Header Files.
    
    The object code form of an Application may incorporate material from
    a header file that is part of the Library.  You may convey such object
    code under terms of your choice, provided that, if the incorporated
    material is not limited to numerical parameters, data structure
    layouts and accessors, or small macros, inline functions and templates
    (ten or fewer lines in length), you do both of the following:
    
    a) Give prominent notice with each copy of the object code that the
    Library is used in it and that the Library and its use are
    covered by this License.
    
    b) Accompany the object code with a copy of the GNU GPL and this license
    document.
    
    4. Combined Works.
    
    You may convey a Combined Work under terms of your choice that,
    taken together, effectively do not restrict modification of the
    portions of the Library contained in the Combined Work and reverse
    engineering for debugging such modifications, if you also do each of
    the following:
    
    a) Give prominent notice with each copy of the Combined Work that
    the Library is used in it and that the Library and its use are
    covered by this License.
    
    b) Accompany the Combined Work with a copy of the GNU GPL and this license
    document.
    
    c) For a Combined Work that displays copyright notices during
    execution, include the copyright notice for the Library among
    these notices, as well as a reference directing the user to the
    copies of the GNU GPL and this license document.
    
    d) Do one of the following:
    
    0) Convey the Minimal Corresponding Source under the terms of this
    License, and the Corresponding Application Code in a form
    suitable for, and under terms that permit, the user to
    recombine or relink the Application with a modified version of
    the Linked Version to produce a modified Combined Work, in the
    manner specified by section 6 of the GNU GPL for conveying
    Corresponding Source.
    
    1) Use a suitable shared library mechanism for linking with the
    Library.  A suitable mechanism is one that (a) uses at run time
    a copy of the Library already present on the user's computer
    system, and (b) will operate properly with a modified version
    of the Library that is interface-compatible with the Linked
    Version.
    
    e) Provide Installation Information, but only if you would otherwise
    be required to provide such information under section 6 of the
    GNU GPL, and only to the extent that such information is
    necessary to install and execute a modified version of the
    Combined Work produced by recombining or relinking the
    Application with a modified version of the Linked Version. (If
    you use option 4d0, the Installation Information must accompany
    the Minimal Corresponding Source and Corresponding Application
    Code. If you use option 4d1, you must provide the Installation
    Information in the manner specified by section 6 of the GNU GPL
    for conveying Corresponding Source.)
    
    5. Combined Libraries.
    
    You may place library facilities that are a work based on the
    Library side by side in a single library together with other library
    facilities that are not Applications and are not covered by this
    License, and convey such a combined library under terms of your
    choice, if you do both of the following:
    
    a) Accompany the combined library with a copy of the same work based
    on the Library, uncombined with any other library facilities,
    conveyed under the terms of this License.
    
    b) Give prominent notice with the combined library that part of it
    is a work based on the Library, and explaining where to find the
    accompanying uncombined form of the same work.
    
    6. Revised Versions of the GNU Lesser General Public License.
    
    The Free Software Foundation may publish revised and/or new versions
    of the GNU Lesser General Public License from time to time. Such new
    versions will be similar in spirit to the present version, but may
    differ in detail to address new problems or concerns.
    
    Each version is given a distinguishing version number. If the
    Library as you received it specifies that a certain numbered version
    of the GNU Lesser General Public License "or any later version"
    applies to it, you have the option of following the terms and
    conditions either of that published version or of any later version
    published by the Free Software Foundation. If the Library as you
    received it does not specify a version number of the GNU Lesser
    General Public License, you may choose any version of the GNU Lesser
    General Public License ever published by the Free Software Foundation.
    
    If the Library as you received it specifies that a proxy can decide
    whether future versions of the GNU Lesser General Public License shall
    apply, that proxy's public statement of acceptance of any version is
    permanent authorization for you to choose that version for the
    Library.
    
Restricted Roller is a library for building randomized data/boards for various games, like Sudoku. These boards can then be combined with other toolkits (such as FieldEngine) to create a complete game.
For example, the following games all use the Restricted Roller library: