Skip to content

This is an efficient F# reimplementation of the digital circuit drawing library used in ISSIE (see Readme).

License

GPL-3.0, GPL-3.0 licenses found

Licenses found

GPL-3.0
LICENSE
GPL-3.0
LICENSE.md
Notifications You must be signed in to change notification settings

aamanrebello/Draw2D-ISSIE-Extension

 
 

Repository files navigation

HLP21 Group 3 Main Repo

This repo contains our final deliverable code for the group project of ELEC96019 - High Level Programming, 2021. It is an F# Elmish MVU implementation of the Draw2D JavaScript library used in ISSIE, which implements many advanced features in addition to those found in the current ISSIE application.

Prerequisites to Get the Project Running:

The following need to be installed (if you already installed, just check the version constraints):

For Mac and Linux users, download and install Mono from the official website (the version from brew is incomplete, may lead to MSB error later).

Installing Node.js will automatically install the npm package manager. The latest LTS version of Node is v14, which will almost certainly work here.

Running the Code

When running for the first time, enter on the command line build on Windows or build.sh on Linux/MacOS from within this root directory. This allows the package dependencies to be installed. Subsequent runs can be initiated by the command npm run dev from within this root directory.

External Interface

Documentation may be found in the doc folder:

  • Features.md lists out the different features of our implementation of the Draw2D library as well as the user interface for each feature. This is the single page summary of features desired for the coursework assessment.
  • External_Interfaces.md is useful for future integration with ISSIE/further development of code. It explains how the program could integrate with the existing ISSIE code e.g. the widthInferrer.
  • The folder Internal_Interfaces contains the interfaces between the modules Symbol.fs, BusWire.fs and Sheet.fs. This is for reference.

Individual Code (Related to Coursework)

Initial code written by the group members for their individual modules may be found by navigating to the indiv_code branch (link here). This code is now highly outdated compared to the latest commits in this repo.

About

This is an efficient F# reimplementation of the digital circuit drawing library used in ISSIE (see Readme).

Topics

Resources

License

GPL-3.0, GPL-3.0 licenses found

Licenses found

GPL-3.0
LICENSE
GPL-3.0
LICENSE.md

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • F# 96.1%
  • SCSS 2.9%
  • Other 1.0%