
Run both the frontend and backend by changing the directory:
npm start
uvicorn main:app --reload

Drag and drop the nodes to create new edges

On pressing the submit button you get a modal presenting the information of number of nodes, edges and whether the nodes form a DAG or not

Initially a pop-up is provided to walkthrough the project. If the user requires a walkthrough again then, the user can click on the "Start tour again" button to get the modal.
The project uses Zustand for state management.
The nodes don't get cleared when refreshed due to persistent storing (local storing) and can only be cleared by clicking the "Clear Nodes" button.