|
1 |
| -# React + TypeScript + Vite |
2 |
| - |
3 |
| -This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules. |
4 |
| - |
5 |
| -Currently, two official plugins are available: |
6 |
| - |
7 |
| -- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react) uses [Babel](https://babeljs.io/) for Fast Refresh |
8 |
| -- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh |
9 |
| - |
10 |
| -## Expanding the ESLint configuration |
11 |
| - |
12 |
| -If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules: |
13 |
| - |
14 |
| -```js |
15 |
| -export default tseslint.config({ |
16 |
| - extends: [ |
17 |
| - // Remove ...tseslint.configs.recommended and replace with this |
18 |
| - ...tseslint.configs.recommendedTypeChecked, |
19 |
| - // Alternatively, use this for stricter rules |
20 |
| - ...tseslint.configs.strictTypeChecked, |
21 |
| - // Optionally, add this for stylistic rules |
22 |
| - ...tseslint.configs.stylisticTypeChecked, |
23 |
| - ], |
24 |
| - languageOptions: { |
25 |
| - // other options... |
26 |
| - parserOptions: { |
27 |
| - project: ['./tsconfig.node.json', './tsconfig.app.json'], |
28 |
| - tsconfigRootDir: import.meta.dirname, |
29 |
| - }, |
30 |
| - }, |
31 |
| -}) |
32 |
| -``` |
33 |
| - |
34 |
| -You can also install [eslint-plugin-react-x](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-x) and [eslint-plugin-react-dom](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-dom) for React-specific lint rules: |
35 |
| - |
36 |
| -```js |
37 |
| -// eslint.config.js |
38 |
| -import reactX from 'eslint-plugin-react-x' |
39 |
| -import reactDom from 'eslint-plugin-react-dom' |
40 |
| - |
41 |
| -export default tseslint.config({ |
42 |
| - plugins: { |
43 |
| - // Add the react-x and react-dom plugins |
44 |
| - 'react-x': reactX, |
45 |
| - 'react-dom': reactDom, |
46 |
| - }, |
47 |
| - rules: { |
48 |
| - // other rules... |
49 |
| - // Enable its recommended typescript rules |
50 |
| - ...reactX.configs['recommended-typescript'].rules, |
51 |
| - ...reactDom.configs.recommended.rules, |
52 |
| - }, |
53 |
| -}) |
54 |
| -``` |
| 1 | +# TCP/IP Visualizer |
| 2 | + |
| 3 | +An interactive visualization of how the TCP/IP protocol works, including the three-way handshake, data transmission, and connection termination. |
| 4 | + |
| 5 | +### Demo |
| 6 | + |
| 7 | +[Demo](https://tcp-ip-visualizer.vercel.app/) |
| 8 | + |
| 9 | +### Intoduction |
| 10 | + |
| 11 | +This is a simple web application made for educational purposes that visualizes the TCP/IP protocol using React. It provides an interactive and animated visualization of the TCP/IP protocol, including the three-way handshake, data transmission, and connection termination. |
| 12 | + |
| 13 | +The application was made to help me get a better understanding of how how the TCP/IP protocol works in a fun and engaging way. |
| 14 | + |
| 15 | +### Technologies Used |
| 16 | + |
| 17 | +- React |
| 18 | +- Vite |
| 19 | +- TypeScript |
| 20 | +- Tailwind CSS |
| 21 | +- Framer Motion |
| 22 | +- Radix |
| 23 | +- Lucide |
0 commit comments