Skip to content

HarborStacks is a modern, user-friendly web interface for deploying and managing Docker services through Portainer.

License

Notifications You must be signed in to change notification settings

hipnologo/HarborStacks

Repository files navigation

HarborStacks 🚢

SwarmVault Logo

GitHub release (latest by date) License: GPL v3 GitHub stars GitHub issues GitHub forks Code style: black Next.js TypeScript Tailwind CSS Node.js Version

Seamless Docker Swarm Backup & Migration Suite

Key FeaturesQuick StartDocumentationContributingSupport

📋 Overview

HarborStacks is a modern, user-friendly web interface for deploying and managing Docker services through Portainer. It provides an intuitive installation wizard, real-time status updates, and comprehensive service management capabilities.

HarborStacks Dashboard

✨ Features

🎯 Core Features

  • Visual Service Installer: Step-by-step wizard for deploying Docker services
  • Real-time Monitoring: Live status updates and progress tracking
  • Dark Mode Support: Built-in theme switching capability
  • Responsive Design: Optimized for desktop, tablet, and mobile devices

🛠 Technical Features

  • Dynamic Form Generation: Automatic configuration forms based on service requirements
  • Pre-flight Checks: Environment validation before deployment
  • Error Recovery: Automatic retry options and detailed error messages
  • API Integration: Full Portainer API support for service management

🚀 Quick Start

Prerequisites

  • Node.js 18 or higher
  • Docker and Docker Swarm
  • Portainer CE/EE installed
  • Git

Installation

  1. Clone the repository:
git clone https://github.com/hipnologo/harborstacks.git
cd harborstacks
  1. Install dependencies:
npm install
# or
yarn install
# or
pnpm install
  1. Configure environment variables:
cp .env.example .env.local
  1. Run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev

Open http://localhost:3000 to see the application.

🏗 Project Structure

HarborStacks/
├── app/                    # Next.js app router pages
├── components/            # React components
│   ├── ui/               # Reusable UI components
│   ├── services/         # Service-related components
│   └── installers/       # Installation wizards
├── lib/                  # Utilities and configurations
│   ├── api/             # API integration
│   ├── types/           # TypeScript types
│   └── utils/           # Helper functions
└── public/              # Static assets

🔧 Configuration

Environment Variables

NEXT_PUBLIC_PORTAINER_URL=https://your-portainer-instance
NEXT_PUBLIC_API_VERSION=2.0

Supported Services

  • Traefik & Portainer
  • Chatwoot
  • MinIO
  • n8n
  • PostgreSQL
  • MongoDB
  • Redis
  • And more...

📖 Documentation

Detailed documentation is available in the docs directory:

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

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

📜 License

This project is licensed under the GPL Version 3.0 - see the LICENSE file for details.

🙏 Acknowledgments

🔗 Links

📊 Status

  • Build Status
  • Coverage Status
  • Last Commit

🌟 Star History

Star History Chart

📊 Activity

Alt


Made with ❤️ by the HarborStacks Team

About

HarborStacks is a modern, user-friendly web interface for deploying and managing Docker services through Portainer.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published