AmpersandTarski / RAP

RAP is a tool that lets you analyse Ampersand models, generate functional specifications and make prototypes of information systems. It is the primary tool for students of the Open University of the Netherlands in the course Rule Based Design.
5 stars 3 forks source link

Epic: Create RAP specific content to be used with new front-end #259

Open FreekOrdina opened 1 year ago

FreekOrdina commented 1 year ago

Purpose The purpose of this issue is to make RAP run on the new angular-based front-end. When all generic front-end components and Ampersand compiler are ready, we expect that ~75% of the RAP application is working. The other 25% is custom code for RAP specific.

Tasks Below, we have an analysis of the files (in the RAP repo) that we expect to need a change.

stefjoosten commented 1 year ago

Analysis

I expect that the RAP-specific content is exclusively in the directory RAP/RAP4/customizations and the RAP/RAP4/templates. RAP has no custom BOX-templates, so none need to be adapted. Maybe some view templates need work. We need to check all 4 of them.

directory file purpose change required
bootstrap/files back-end functions no
bootstrap/files execEngineDateTime.php time stamping no
bootstrap/files ExecEngineFunctions.php automated evaluation no
config oauth.yaml SIAM yes
config project.yaml prototype framework config yes
extensions/RAP4/src Command.php calling the compiler yes
public RAP specific goodies no
public ACE editor yes
Traefik proxy config no
As for view templates, the following need to be verified RAP source code file uses HTML TEMPLATE
RAP4\src\Analyse.ifc View-ShowConceptualDiagram.html
RAP4\src\Scripts.ifc View-ParseAsHtml.html
RAP4\src\Scripts.adl View-FILEOBJECT.html
RAP4\src\Scripts.adl View-ACE.html

The docker file needs the following changes:

  1. Restructure the docker file reusing parts of https://gitlab.com/semantic-treehouse/semantic-treehouse-mirror/-/blob/main/Dockerfile-v3 as example.
  2. In the meantime, @Michiel-s publishes the prototype framework v2.0, which contains the new Angular innovation.
  3. transition from v 1.12 to v2. There may be new bugs in the back-end.
  4. The same for the student prototype image, to give students access to the new Angular functionality. Most likely this involves adapting the base image, removing the templates (RAP/RAP4USERS/templates), and adapting the bash script.
stefjoosten commented 1 month ago

Progress on Ampersand 5

On Feb 4th, 2024, The Ampersand compiler had a syntax-breaking upgrade to vs. 5. I have edited the source code of RAP, in commit 948013acb2e6c4a6c64f470fe8cbff2972d15403 (in branch names-and-labels), such that the command ampersand proto RAP4.adl --build-recipe RAP yields no errors, when using Ampersand vs. 5.0.1. This includes the edits in RAP4 made by @SimonvRoozendaalOrdina

hanjoosten commented 1 month ago

I see quite some updates of templates in the RAP4 directory. I cannot imagine that that is correct, but I could be wrong. @Michiel-s will know.