Skip to content

Enterprise diagramming and visual workflow automation platform with node-based editor. React frontend, Flask backend, multi-database support.

Notifications You must be signed in to change notification settings

penguintechinc/IceCharts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IceCharts Logo

CI Docker Build Tests version License

IceCharts

Create. Collaborate. Export. Visualize Infrastructure and Diagrams.

IceCharts is a modern, web-based collaborative diagramming platform designed for creating, sharing, and exporting visual representations of infrastructure, system architectures, flowcharts, and organizational structures. Built with enterprise-grade features including real-time collaboration, version control, and seamless infrastructure integration.

Screenshots

Login Page
Login Page

Dashboard
Dashboard - Overview of recent activity and drawings

Drawings List
Drawings - Manage and organize your diagrams

Groups
Groups - Collaborate with teams

Templates
Templates - Start from pre-built diagram templates

Collections
Collections - Organize diagrams into collections

Settings
Settings - Configure your account and preferences

Diagramming
Dynamic and flow animated diagrams with thousands of icons - Make your diagrams accurate and alive!

Administration

Admin Users
User Management - Administer users and roles

Admin SSO
SSO Configuration - Configure Google OAuth, SAML, and OIDC authentication

Admin Storage
Storage Management - Monitor and manage storage usage

Admin Dashboard
Admin Dashboard - System statistics and monitoring

Key Features

Canvas & Drawing

  • Intuitive canvas editor for creating diagrams with shapes, connectors, and text
  • Rich shape library for system components, infrastructure, and flowchart elements
  • Smart connectors with automatic routing and customizable styling
  • Grid & snap-to-grid for precise alignment and professional layouts

Real-Time Collaboration

  • Multi-user editing with WebSocket-powered real-time synchronization
  • Presence awareness - see who's editing and where
  • Comments & annotations with threaded discussions on specific elements
  • Resolution tracking for design reviews and feedback cycles

Export & Sharing

  • Multiple export formats (SVG, PNG, PDF, JSON)
  • Customizable export options with scaling and resolution settings
  • Public sharing links for easy distribution and feedback
  • Version history with rollback capabilities

Infrastructure Integration

  • Elder API integration to import infrastructure entities as diagram shapes
  • Automatic entity mapping with color-coding by component type
  • Dependency visualization showing relationships between infrastructure elements
  • Live sync with infrastructure definitions

Enterprise Security

  • User authentication & authorization with role-based access control (RBAC)
  • OAuth/SSO integration for enterprise identity management
  • Team & group management with granular permissions
  • Audit logging for compliance and accountability

High Performance

  • PostgreSQL database with optimized queries and indexing
  • Redis caching for instant response times
  • MinIO object storage for efficient file management
  • Prometheus monitoring with Grafana dashboards

Getting Started

Prerequisites

  • Docker and Docker Compose
  • Node.js 18+ (for local frontend development)
  • Python 3.12+ (for local backend development)
  • Git

Quick Start with Docker Compose

# Clone the repository
git clone https://github.com/penguintechinc/IceCharts.git
cd IceCharts

# Copy environment template and configure if needed
cp .env.example .env

# Start all services
docker-compose up -d

# Access the application
# Web UI: http://localhost:3003
# API: http://localhost:5002
# Default credentials: [email protected] / admin123

Local Development Setup

# Install dependencies and setup environment
make setup

# Start development services
make dev

# Run tests
make test

# Build for production
make build

Documentation

Comprehensive documentation is available in the docs/ directory:

Technology Stack

Component Technology Version
Frontend React, TypeScript, Tailwind CSS 18+, Latest, 3.x
Backend Flask, Python, PyDAL Latest, 3.12+, Latest
Database PostgreSQL 17+
Cache Redis 7+
Storage MinIO (S3-compatible) Latest
Monitoring Prometheus, Grafana Latest, Latest
Containers Docker, Docker Compose Latest

Contributing

We welcome contributions! Please see CONTRIBUTING.md for guidelines, development workflow, and code standards.

Development Team

Support & Resources

License

This project is licensed under the Limited AGPL3 with preamble for fair use - see LICENSE.md for details.

License Highlights:

  • Personal & Internal Use: Free under AGPL-3.0
  • Commercial Use: Requires commercial license
  • SaaS Deployment: Requires commercial license if providing as a service

Contributor Employer Exception (GPL-2.0 Grant)

Companies employing official contributors receive GPL-2.0 access to community features:

  • Perpetual for Contributed Versions: GPL-2.0 rights to versions where the employee contributed remain valid permanently, even after the employee leaves the company
  • Attribution Required: Employee must be credited in CONTRIBUTORS, AUTHORS, commit history, or release notes
  • Future Versions: New versions released after employment ends require standard licensing
  • Community Only: Enterprise features still require a commercial license

This exception rewards contributors by providing lasting fair use rights to their employers. See LICENSE.md for full terms.

About

Enterprise diagramming and visual workflow automation platform with node-based editor. React frontend, Flask backend, multi-database support.

Topics

Resources

Contributing

Stars

Watchers

Forks

Sponsor this project

Packages

 
 
 

Contributors 2

  •  
  •