├── src ├── vite-env.d.ts ├── App.tsx ├── Doc │ └── DocPage.tsx ├── graph │ ├── GraphApp.css │ ├── ResizeIcon.tsx │ ├── GraphPanel.css │ ├── CustomEdge.tsx │ ├── NodeData.ts │ ├── GraphContext.test.tsx │ ├── JsonUtil.tsx │ ├── GraphContext.tsx │ ├── NodeData.fromjson.test.tsx │ ├── GraphApp.tsx │ ├── CustomNode.tsx │ ├── JsonUtil.tojson.test.tsx │ ├── NodeData.tojson.test.tsx │ ├── GraphPanel.tsx │ ├── JsonUtil.fromjson.test.tsx │ └── GraphActions.tsx ├── redux │ ├── store.ts │ └── userInfo.store.ts ├── main.tsx ├── routes │ └── AppRoutes.tsx ├── main.test.tsx ├── index.css ├── utils │ ├── ConfigManager.ts │ └── JsonIO.ts └── GraphMenu │ ├── MenuLayout.tsx │ ├── FileTransmit.ts │ ├── ConfigWindow.tsx │ ├── MenuToggleButton.tsx │ └── RunWindow.tsx ├── postcss.config.js ├── tsconfig.json ├── README.md ├── .gitignore ├── Dockerfile ├── tailwind.config.js ├── index.html ├── setupTests.ts ├── tsconfig.node.json ├── tsconfig.app.json ├── eslint.config.js ├── LICENSE ├── vite.config.ts └── package.json /src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | } 7 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "files": [], 3 | "references": [ 4 | { "path": "./tsconfig.app.json" }, 5 | { "path": "./tsconfig.node.json" } 6 | ] 7 | } -------------------------------------------------------------------------------- /src/App.tsx: -------------------------------------------------------------------------------- 1 | // App.tsx 2 | 3 | import React from 'react'; 4 | import AppRoutes from './routes/AppRoutes'; 5 | 6 | const App: React.FC = () => { 7 | return ( 8 | 9 | ); 10 | }; 11 | 12 | export default App; -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # reactflow-ts 2 | 3 | ## Dev 4 | * compile 5 | * ```npm run tsc``` 6 | * lint 7 | * ```npm run lint``` 8 | * hold 9 | * ```npm run dev``` 10 | * vitest 11 | * ```npm run test``` 12 | 13 | ## Serve 14 | ``` bash 15 | npm run build 16 | npm run preview -- --host 0.0.0.0 --port 3000 17 | ``` -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | package-lock.json 2 | 3 | # Logs 4 | logs 5 | *.log 6 | npm-debug.log* 7 | yarn-debug.log* 8 | yarn-error.log* 9 | pnpm-debug.log* 10 | lerna-debug.log* 11 | 12 | node_modules 13 | dist 14 | dist-ssr 15 | *.local 16 | 17 | # Editor directories and files 18 | .vscode/* 19 | !.vscode/extensions.json 20 | .idea 21 | .DS_Store 22 | *.suo 23 | *.ntvs* 24 | *.njsproj 25 | *.sln 26 | *.sw? 27 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:20 2 | 3 | # Create and set the working directory 4 | WORKDIR /app 5 | 6 | # Copy all files to the container 7 | COPY . . 8 | 9 | # Install dependencies 10 | RUN npm install 11 | 12 | RUN npm run build 13 | 14 | # Expose the port the app runs on 15 | EXPOSE 3000 16 | 17 | # Start the application 18 | CMD ["npm", "run", "preview", "--", "--host", "0.0.0.0", "--port", "3000"] -------------------------------------------------------------------------------- /src/Doc/DocPage.tsx: -------------------------------------------------------------------------------- 1 | // Graph/Doc.tsx 2 | 3 | import React from 'react'; 4 | 5 | const DocPage: React.FC = () => { 6 | return ( 7 |