A comprehensive mobile application for managing your Dokploy deployments, built with Expo and React Native.
- Dark Mode UI: Beautiful, clean dark-themed interface
- Push Notifications: Real-time notifications for deployments and server events
- Project Management: Create, view, and manage projects and environments
- Application Control: Deploy, redeploy, start, stop, and delete applications
- Container Monitoring: View and manage Docker containers
- Deployment Tracking: Monitor deployment status and history
- Database Management: Manage PostgreSQL, MySQL, MariaDB, MongoDB, and Redis databases
- Settings: Configure app preferences and account settings
- Node.js (v16 or higher)
- npm or yarn
- Expo CLI (
npm install -g expo-cli) - iOS Simulator (macOS) or Android Emulator
- Navigate to the mobile directory:
cd mobile- Install dependencies:
npm install- Start the development server:
npm start- Run on your platform:
- Press
ifor iOS simulator - Press
afor Android emulator - Scan QR code with Expo Go app on your physical device
- Press
Update the API URL in src/services/api.ts:
const API_URL = 'https://your-dokploy-instance.com/api';- Create an Expo account at https://expo.dev
- Update the
projectIdinapp.json:
{
"expo": {
"extra": {
"eas": {
"projectId": "your-project-id"
}
}
}
}mobile/
├── src/
│ ├── components/ # Reusable UI components
│ │ ├── Button.tsx
│ │ ├── Card.tsx
│ │ ├── StatusBadge.tsx
│ │ └── TextInput.tsx
│ ├── navigation/ # Navigation configuration
│ │ └── AppNavigator.tsx
│ ├── screens/ # App screens
│ │ ├── LoginScreen.tsx
│ │ ├── HomeScreen.tsx
│ │ ├── ProjectsScreen.tsx
│ │ ├── ContainersScreen.tsx
│ │ ├── ApplicationDetailScreen.tsx
│ │ ├── DeploymentsScreen.tsx
│ │ └── SettingsScreen.tsx
│ ├── services/ # API and services
│ │ ├── api.ts
│ │ ├── auth.ts
│ │ └── notifications.ts
│ ├── stores/ # State management (Zustand)
│ │ ├── authStore.ts
│ │ ├── projectStore.ts
│ │ ├── applicationStore.ts
│ │ └── containerStore.ts
│ ├── theme/ # Theme configuration
│ │ ├── colors.ts
│ │ └── index.ts
│ └── types/ # TypeScript types
│ └── index.ts
├── App.tsx # App entry point
├── app.json # Expo configuration
├── package.json
└── tsconfig.json
- Expo: React Native framework
- React Navigation: Navigation library
- Zustand: Lightweight state management
- Axios: HTTP client for API calls
- Expo Notifications: Push notifications
- Expo SecureStore: Secure token storage
- TypeScript: Type safety
- date-fns: Date formatting
npm start: Start Expo development servernpm run android: Run on Androidnpm run ios: Run on iOSnpm run web: Run in web browser
eas build --platform androideas build --platform ios- ✅ Authentication (Login/Logout)
- ✅ Projects Management
- ✅ Applications Control (Deploy, Redeploy, Start, Stop)
- ✅ Docker Containers Monitoring
- ✅ Deployments Tracking
- ✅ Settings & Profile
- ✅ Push Notifications Setup
- ⏳ Database Management (Partial)
- ⏳ Environment Management
- ⏳ Domain Management
- ⏳ Backup Management
The app integrates with the Dokploy API documented at: https://admin.snowydev.xyz/api
Authentication is handled via Bearer tokens stored securely using Expo SecureStore.
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
MIT License
For issues and questions, please open an issue in the GitHub repository.