Sistem manajemen perangkat jaringan modern yang dibangun di atas GenieACS dengan antarmuka yang intuitif dan fitur-fitur canggih untuk monitoring dan konfigurasi perangkat jaringan fiber optic.
- Dashboard Interaktif - Monitoring real-time status perangkat jaringan dengan visualisasi data yang komprehensif
- Manajemen Perangkat - Kontrol penuh atas ONT, ODP, dan ODC dengan detail informasi lengkap
- Peta Jaringan - Visualisasi topologi jaringan dengan representasi geografis
- Konfigurasi Vendor - Dukungan multi-vendor dengan parameter khusus untuk setiap tipe perangkat
- Keamanan WiFi - Manajemen pengaturan keamanan WiFi untuk berbagai vendor
- Autentikasi Modern - Sistem login dengan JWT token dan manajemen sesi yang aman
Project ini menggunakan arsitektur client-server dengan:
- Node.js dengan Express.js untuk API server
- MySQL sebagai database utama
- JWT untuk autentikasi dan autorisasi
- RESTful API untuk komunikasi dengan frontend
- Next.js 14 dengan App Router
- TypeScript untuk type safety
- Tailwind CSS untuk styling modern
- React Context untuk state management
- Node.js 18+
- MySQL 8.0+
- npm atau yarn
- Clone repository ini
git clone https://github.com/skydashnet/server.git
cd server- Setup backend
cd backend
npm install
cp .env.example .env
# Edit .env dengan konfigurasi database Anda
npm run dev- Setup frontend
cd frontend
npm install
npm run dev- Aplikasi akan tersedia di:
- Frontend: http://localhost:3000
- Backend API: http://localhost:3001
server/
├── backend/ # API server
│ ├── src/
│ │ ├── config/ # Konfigurasi database
│ │ ├── controllers/ # Logic controllers
│ │ ├── middleware/ # Middleware autentikasi
│ │ ├── models/ # Data models
│ │ ├── routes/ # API routes
│ │ ├── services/ # Business logic
│ │ └── utils/ # Utility functions
│ └── package.json
├── frontend/ # Next.js application
│ ├── src/
│ │ ├── app/ # App Router pages
│ │ ├── components/ # Reusable components
│ │ ├── contexts/ # React contexts
│ │ ├── hooks/ # Custom hooks
│ │ ├── lib/ # Library functions
│ │ └── types/ # TypeScript types
│ └── package.json
├── Dockerfile # Docker configuration
└── README.md
# Database
DB_HOST=localhost
DB_PORT=3306
DB_USER=root
DB_PASSWORD=your_password
DB_NAME=genieacs_panel
# Application
APP_PORT=3001
APP_ENV=development
# JWT
JWT_SECRET=your_jwt_secret
JWT_EXPIRES_IN=1h
REFRESH_TOKEN_EXPIRES_IN=7d
# GenieACS
GENIEACS_URL=http://your-genieacs-server:7557NEXT_PUBLIC_API_URL=http://localhost:3001POST /api/auth/login- Login userGET /api/auth/user- Get current userPOST /api/auth/logout- Logout userPOST /api/auth/refresh- Refresh token
GET /api/devices- Get all devicesGET /api/devices/:id- Get device detailsDELETE /api/devices/:id- Delete devicePOST /api/devices/reboot- Reboot devicePOST /api/devices/summon- Summon device parameters
GET /api/vendor-management- Get all vendorsPOST /api/vendor-management- Create vendorPUT /api/vendor-management/:id- Update vendorDELETE /api/vendor-management/:id- Delete vendor
Sistem peta jaringan menyediakan visualisasi topologi dengan:
- Node Types: Server, ODC (Optical Distribution Cabinet), ODP (Optical Distribution Point), ONT (Optical Network Terminal)
- Status Monitoring: Real-time status untuk setiap node
- Geographic Visualization: Posisi geografis perangkat
- Interactive Details: Klik pada node untuk informasi detail
- JWT-based authentication dengan refresh token
- Role-based access control (Admin/User)
- Password hashing dengan bcrypt
- CORS configuration untuk keamanan API
Project ini mendukung Docker untuk deployment yang mudah:
# Build image
docker build -t genieacs-panel .
# Run container
docker run -p 3001:3001 -e DB_HOST=your-db-host genieacs-panelKontribusi sangat welcome! Silakan:
- Fork repository
- Buat feature branch (
git checkout -b feature/AmazingFeature) - Commit changes (
git commit -m 'Add some AmazingFeature') - Push ke branch (
git push origin feature/AmazingFeature) - Buka Pull Request
Project ini dilisensikan under MIT License - lihat file LICENSE untuk detail.
-
Database Connection Error
- Pastikan MySQL server running
- Cek credential di .env file
- Verifikasi database sudah dibuat
-
GenieACS Connection Failed
- Verifikasi GenieACS server URL
- Cek firewall settings
- Pastikan GenieACS API accessible
-
Frontend Build Error
- Hapus node_modules dan package-lock.json
- Jalankan
npm installkembali - Cek Node.js version compatibility
Untuk support atau pertanyaan:
- Email: support@skydash.net
- GitHub Issues: https://github.com/skydashnet/server/issues
© 2024 SkydashNET. All rights reserved.