8000 GitHub - bowo-ltd/network-dashboard
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

bowo-ltd/network-dashboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Network Dashboard 🌐

A real-time network monitoring dashboard built with React, WebSocket, and modern web technologies.

React WebSocket TailwindCSS Vite i18next

A powerful real-time network monitoring dashboard built with modern web technologies. Monitor your network devices, track bandwidth usage, and manage network activities all in one place.

Network Dashboard Preview

✨ Features

  • Real-time Monitoring: Track device status and network performance in real-time
  • Bandwidth Management: Monitor and control bandwidth usage across devices
  • Multi-language Support: Full internationalization with English and Indonesian languages
  • Theme Customization: Toggle between dark and light themes
  • Activity Logging: Comprehensive logging of all network activities
  • Data Export: Export network data to CSV format for analysis

🎯 Use Cases

  • Network Operations Centers: Monitor enterprise network infrastructure
  • IT Administration: Track device connectivity and bandwidth usage
  • System Administration: Log and analyze network activities
  • Bandwidth Management: Implement and monitor bandwidth priorities
  • Performance Analysis: Track and export network performance metrics

Technologies Used

  • React
  • WebSocket
  • i18next
  • TailwindCSS
  • Vite
  • React-Toastify

πŸ—οΈ Project Structure

project/
β”‚
β”œβ”€β”€ public/              # Static assets
β”‚   β”œβ”€β”€ index.html       # Entry point untuk React
β”‚   β”œβ”€β”€ favicon.ico
β”‚   └── assets/          # Image atau assets lainnya
β”‚
β”œβ”€β”€ src/                 # Source code utama
β”‚   β”œβ”€β”€ components/      # Semua komponen React
β”‚   β”‚   β”œβ”€β”€ ui/          # Komponen UI kecil
β”‚   β”‚   β”œβ”€β”€ BandwidthPriorityControl.jsx
β”‚   β”‚   β”œβ”€β”€ DeviceFilter.jsx
β”‚   β”‚   β”œβ”€β”€ BandwidthHistory.jsx
β”‚   β”‚   └── ActivityLogger.jsx
β”‚   β”‚
β”‚   β”œβ”€β”€ context/         # Context untuk state management
β”‚   β”‚   └── ThemeContext.jsx
β”‚   β”‚
β”‚   β”œβ”€β”€ hooks/           # Custom React hooks
β”‚   β”‚   └── useWebSocket.jsx
β”‚   β”‚
β”‚   β”œβ”€β”€ i18n/            # File untuk internasionalisasi
β”‚   β”‚   β”œβ”€β”€ en.json
β”‚   β”‚   β”œβ”€β”€ id.json
β”‚   β”‚   └── i18next.js
β”‚   β”‚
β”‚   β”œβ”€β”€ utils/           # Helper functions
β”‚   β”‚   β”œβ”€β”€ sanitize.js
β”‚   β”‚   └── csvExport.js
β”‚   β”‚
β”‚   β”œβ”€β”€ App.jsx          # Root komponen React
β”‚   β”œβ”€β”€ index.js         # Entry point React
β”‚   └── styles.css       # Global styles
β”‚
β”œβ”€β”€ backend/             # Server WebSocket
β”‚   └── server.js
β”‚
β”œβ”€β”€ package.json
β”œβ”€β”€ .gitignore
β”œβ”€β”€ README.md
└── vite.config.js       # Config untuk Vite (atau gunakan CRA jika perlu)

πŸš€ Getting Started

Prerequisites

  • Node.js v14 or higher
  • npm or yarn
  • Git (optional)

Installation

  1. Clone the repository:
git clone <repository-url>
cd network-dashboard
  1. Install dependencies:
npm install
  1. Create .env file:
PORT=8080
VITE_WS_URL=ws://localhost:8080
  1. Start the WebSocket server:
npm run start:server
  1. Start the development server:
npm run dev

Visit http://localhost:5173 to view the dashboard.

πŸ“ Available Scripts

  • npm run dev: Start development server
  • npm run build: Build for production
  • npm run preview: Preview production build
  • npm run start:server: Start WebSocket server
  • npm run build:css: Rebuild Tailwind CSS

πŸ› οΈ Development Guide

Adding New Features

  1. Create new components in src/components/
  2. Add translations to src/i18n/en.json and src/i18n/id.json
  3. Update WebSocket handlers in NetworkDashboard.jsx
  4. Add UI components to src/components/ui/

Code Style

  • Follow React best practices and hooks guidelines
  • Use meaningful component and variable names
  • Add JSDoc comments for complex functions
  • Follow the existing project structure

🚒 Deployment

  1. Build the frontend:
npm run build
  1. Configure production environment variables
  2. Deploy static files from the dist directory
  3. Set up WebSocket server with proper security measures

🀝 Contributing

We welcome contributions! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Please read our Contributing Guidelines for details.

πŸ”§ Troubleshooting

Common Issues

  • WebSocket Connection Fails:

    • Verify backend server is running
    • Check WebSocket URL configuration
    • Ensure no firewall blocking
  • Styling Issues:

    • Run npm run build:css
    • Clear browser cache
    • Check TailwindCSS configuration

πŸ“š Resources

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • React team for the amazing framework
  • TailwindCSS team for the utility-first CSS framework
  • All contributors who have helped this project grow

Made with ❀️ by the Network Dashboard Team

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0