instructions and specifications for daniels work

This commit is contained in:
2024-10-25 08:53:33 +02:00
parent 279a658e8a
commit 78cadd7bef

View File

@ -0,0 +1,143 @@
# Installation
python virtual env machen:
> python3 -m venv myenv
aktivieren dieser venv (wiederholen bei jeder session):
> source myenv/activate
seweb git repo klonen (token ist max. ein Jahr gueltig):
> git clone https://dm:krChVHhLuAntP-sG1T1g@gitlab.psi.ch/samenv/seweb.git
> cd seweb
in deinen Entwicklungsbranch wechseln:
> git switch daniel
noetige packages installieren (wird in myenv gepackt!)
> pip3 install -r requirements.txt
# First Run
demo frappy server starten
> frappy-server cryo,test -p 5000
dieses Terminal offen lassen, neues Terminal starten
> source myenv/activate
> cd seweb
dummy webserver starten, verbindet mit obigem frappy server
> ./dummy-webserver port=8888 instrument=test hostport=localhost:5000
webclient im browser starten mit http://localhost:8888/
# git
Branches anzeigen:
> git branch
In deinen Branch gehen, wenn nicht schon da:
> git switch daniel
## Aenderungen pushen
fuer jede thematisch zusammenhaenge Aenderung einen Commit machen:
> git add <new files>
> git commit -a -m "repalce icons by nicer ones"
Wenn Du den teil beginnend mit -m weglaesst, oeffnet sich der default Editor,
dann kannst Du auch mehrzeilige Kommentare machen. 1. Zeile: Titel, 2. Zeile leer
ab 3. Zeile: Text, nicht breiter als ca. 72 Zeichen
> git push
## Aenderungen vom repo uebernehmen
Wenn noch offene Aenderungen da sind, die Du noch nicht committen willst,
kannst Du diese Aenderungen zwischenlagern (ist ein Stapel!)
> git stash
Zum master branch wechseln, und diesen runterziehen vom Repo:
> git switch master
> git pull
Die Aenderungen vom master in Deinen branch uebernehmen:
> git switch daniel
> git rebase
Falls Konflikte entstehen, bekommst Du eine entsprechende Meldung
Wenn diese geloest sind, Deine vorher zwischengespeicherten offenen Aenderungen zurueckholen
> git stash pop
## Tile Layout
4 types of blocks/tiles:
graphics
moduleblock (list of modules with main values), (goodie: foldable groups)
parblock (editable list of parameters) (goodie: foldable groups)
logblock (log messages) placed in right bottom quarter
console is no longer used!
(x) means a button in the top right corner
for narrow windows < 2w:
show moduleblock by default
(x) on graphics: go to moduleblock
(x) on modules: go to graphics
clicking on moduleblock: open parblock
(x) on parblock: go to moduleblock
logblock is shown by clicking on right bottom icon (not available with graphics) and hidden with (x)
allow to swipe when touch device is available (do we need this?)
for broader windows:
show graphics + moduleblock by default
(x) not shown on graphics by default
(x) on modules: full screen graphics
click on a module row (or a 'details' icon): add parblock, do not overwrite moduleblock when window is broad
enough (width > 3.5w)
(x) on parblock (close parblock and reveal moduleblock if hidden)
logblock is shown by clicking on right bottom icon and hidden with (x)
swipe not possible
## moduleblocks
on each row:
colored indicator depending on status (yellow: driving, orange: warn, red: error)
red also when value is in error
edit icon for changing the target parameter of the module, if available
'details' icon for open the corresponding parblock
## parblocks
orange when parameter is in error (update message with error instead of value: show a little icon with hover
revealing error text)
## logging
use logging feature of SECoP - needs some work on the server (Markus)
## resizing window
hide parameters when size < 3.5w
hide graphics when size < 2w
show graphics when size > 2w
it is not needed to show the parblock again when increasing width
nderungen wieder zur