A modern web application for visualizing and managing server infrastructure with AI-powered insights.
- Interactive Server Graph - Visualize your server topology and infrastructure relationships
- AI Integration - Leverage Mistral AI for intelligent analysis and recommendations
- Real-time Metrics - Monitor server metrics and performance data
- Secure Authentication - Built-in authentication with secure session management
- Responsive Dashboard - Clean, intuitive interface for infrastructure management
- Configuration Management - Manage settings and API keys securely
- Frontend Framework: Next.js 16 with React 19
- Graph Visualization: @xyflow/react + Dagre
- AI: Mistral AI
- Authentication: Better Auth
- State Management: Zustand
- Data Fetching: TanStack Query
- Styling: Tailwind CSS
- Language: TypeScript
See a deployed version of Sentinel Flow at https://sentinel-flow-five.vercel.app.
- Node.js 18+
- npm, yarn, pnpm, or bun
# Clone the repository
git clone <repository-url>
cd sentinel-flow
# Install dependencies
npm installnpm run devOpen http://localhost:3000 to view the application.
The app will automatically reload as you make changes.
npm run build
npm startnpm run lintapp/ # Next.js application and API routes
├── api/ # API endpoints (auth, metrics)
├── (api)/ # API route group
├── (settings)/ # Settings pages
└── page.tsx # Home page
components/ # Reusable React components
├── branding/ # Logo and branding components
├── icons/ # Icon components
└── ui/ # Base UI components (button, input, etc.)
features/ # Feature modules
├── app/ # Dashboard and navigation
├── auth/ # Authentication logic
├── servers/ # Server visualization and management
└── settings/ # Settings management
lib/ # Utility functions
public/ # Static assets
Create a .env.local file in the root directory with the following variables:
BETTER_AUTH_SECRET=secret
BETTER_AUTH_URL=base_url
GITHUB_CLIENT_ID=client_id
GITHUB_CLIENT_SECRET=client_secret
ENCRYPTION_MASTER_SECRET=master_secretContributions are welcome! Please feel free to submit a Pull Request.
This project is private. Please contact the maintainers for licensing information.
For issues, questions, or suggestions, please open an issue on GitHub.
