Veriviz Structure¶
Below is a high-level breakdown of the Veriviz repository:
Directory Layout¶
frontend/¶
- A React-based interface. Sends requests to the backend to retrieve analysis results from SEIF and Sylvia.
- Pages like
Home.jsx,Upload.jsx,Visualizer.jsxare typical. - Utlizes ReactJS and React Router, to learn more about ReactJS - Click Here and to learn more about React Router, Click Here
backend/¶
server.jsis the main entrypoint of the backend and is run when the pod is deployed.backend/uploadsis where the uploaded files from the frontend will be ultimitly stored before being sent to the SEIF or Sylvia APIs- Talks to SEIF and Sylvia depeding on the users choice.
- Exposes endpoints that are designed for the frontend to send and recieve information.
- Utlizes ExpressJS for RestFUL API endpoints to delegate tasks to SEIF and Sylvia APIs respectfully.
.github/workflows/¶
- Houses CI/CD config (like
cicd.yml) for automatic deployment to OKD. See All About Deployment for more information.
How It Works¶
Frontend→ user triggers “Analyze hardware design.”Backend→ receives request, calls SEIF or calls Sylvia.SEIForSylviaAPIs → recieve request from thebackendand process the files → then return JSON to later be displayed.Backend→ recieves the JSON and sends it back tofrontend.Frontend→ recieves the JSON results and displays them,