Skip to content

samba425/konva-architecture-canvas

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

41 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🎨 Architecture Builder

Professional Canvas-Based Architecture Diagram Builder - Create stunning cloud infrastructure, AI/ML systems, and technical architecture diagrams with an intuitive drag-and-drop interface.

Angular Konva TypeScript License npm

πŸš€ Live Demo | πŸ“¦ npm Package | πŸ“– Documentation


πŸ“Έ Preview

Architecture Builder Demo

Professional architecture diagrams in minutes, not hours

✨ Why Architecture Builder?

Stop switching between Draw.io and Lucidchart! Build architecture diagrams directly in your Angular applications with:

  • βœ… 47+ Pre-built Components - AWS, Azure, GCP, AI/ML tools ready to use
  • βœ… Drag-and-Drop Interface - Intuitive canvas with smooth interactions
  • βœ… Smart Grouping - Nested groups with automatic color coding (5 levels)
  • βœ… Export & Share - PNG images and JSON for version control
  • βœ… Keyboard Shortcuts - Power-user features for productivity
  • βœ… Auto-Save - Never lose your work with LocalStorage
  • βœ… Two Canvas Modes - Konva.js (primary) and Cytoscape.js options

πŸš€ Quick Start

Installation

npm install konva-architecture-canvas konva

Basic Usage

import { Component } from '@angular/core';
import { KonvaCanvasMainComponent } from 'konva-architecture-canvas';

@Component({
  selector: 'app-diagram',
  standalone: true,
  imports: [KonvaCanvasMainComponent],
  template: '<lib-konva-canvas-main></lib-konva-canvas-main>',
  styles: [`
    lib-konva-canvas-main {
      display: block;
      width: 100%;
      height: 100vh;
    }
  `]
})
export class DiagramComponent {}

That's it! You now have a full-featured architecture canvas. πŸŽ‰


🎯 Key Features

🧩 Component Library (47+ Components)

Category Components
AI Models GPT-4, Claude, Llama, Gemini, Mistral, Cohere, DeepSeek, Phi, Qwen
Vector DBs Pinecone, Weaviate, Milvus, Chroma, pgVector, Neon
Agent Frameworks LangChain, AutoGen, CrewAI, LlamaIndex, Semantic Kernel, LangGraph
Observability Langfuse, Arize Phoenix, Helicone, Datadog, Comet Opik
Cloud (AWS) EC2, Lambda, S3, RDS, API Gateway, CloudFront, SageMaker
Cloud (Azure) VM, Functions, Blob Storage, SQL, AI Services
Cloud (GCP) Compute Engine, Cloud Functions, Storage, BigQuery
Databases PostgreSQL, MongoDB, Redis, DynamoDB, Firestore
Tools Composio, Exa, NPI, Browserbase, LinkUp
Memory Zep, Mem0, Cognee, VertexAI

🎨 Drawing Tools

  • Shapes: Rectangle, Circle, Line, Arrow
  • Freehand Pen: Draw custom diagrams
  • Text Editor: Double-click to edit text
  • Color Picker: 12-color palette + custom colors
  • Styling: Independent stroke and fill colors with opacity control

πŸ“¦ Smart Grouping

  • 5-Level Hierarchy with automatic color coding:
    • Level 1: Purple
    • Level 2: Red
    • Level 3: Orange
    • Level 4: Green
    • Level 5: Blue
  • Drag groups as single units
  • Nested grouping - Groups within groups
  • Visual feedback - Colored borders show nesting depth

⚑ Canvas Features

  • Infinite Canvas with smooth pan and zoom
  • Grid System for alignment
  • Multi-Selection (Shift+Click or drag rectangle)
  • Transformer with resize handles
  • Snap to Grid (optional)
  • Dark/Light Theme support

⌨️ Keyboard Shortcuts

Shortcut Action
Cmd/Ctrl + Z Undo
Cmd/Ctrl + Shift + Z Redo
Cmd/Ctrl + D Duplicate
Cmd/Ctrl + G Group selected items
Cmd/Ctrl + Shift + G Ungroup
Cmd/Ctrl + A Select all
Delete / Backspace Delete selected
V Select tool
R Rectangle tool
C Circle tool
L Line tool
A Arrow tool
Space + Drag Pan canvas

πŸ’Ύ Import/Export

  • JSON Export: Complete architecture with all data
  • PNG Export: High-quality images (2x resolution)
  • Template System: Save and reuse architectures
  • Sample Diagrams: 8+ ready-to-use examples included

πŸ“š Sample Architectures

The /samples folder includes:

  1. simple-rag-chatbot.json - Basic RAG chatbot with vector DB
  2. multi-model-ai-platform.json - Multi-model AI platform
  3. cloud-infrastructure.json - AWS cloud infrastructure
  4. enterprise-ai-platform.json - Enterprise AI/ML platform
  5. observability-stack.json - Complete observability setup
  6. grouped-microservices.json - Microservices with grouping
  7. nested-groups-cloud.json - Complex nested architecture
  8. enterprise-ai-stack-complete.json - Comprehensive Enterprise AI stack

πŸ”§ Development

Prerequisites

  • Node.js >= 18.x
  • npm >= 10.x
  • Angular CLI 21.x

Setup

# Clone repository
git clone https://github.com/samba425/konva-architecture-canvas.git
cd konva-architecture-canvas

# Install dependencies
npm install

# Start development server
npm start

Application runs at: http://localhost:4200

Build

# Build for production
npm run build

# Build library
npm run build:lib

# Publish to npm
cd dist/konva-canvas-builder
npm publish

πŸ“– Documentation


πŸŽ“ Learn More

Articles & Tutorials

Use Cases

  • Cloud Architecture - Design AWS, Azure, GCP infrastructures
  • AI/ML Systems - Plan RAG pipelines, LLM applications
  • Microservices - Visualize service dependencies
  • System Design - Interview preparation and planning
  • Documentation - Technical architecture documentation

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

How to Contribute

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

πŸ“Š Project Stats

GitHub stars GitHub forks GitHub watchers

npm downloads npm version Bundle size


πŸ—ΊοΈ Roadmap

Upcoming Features

  • Real-time Collaboration - Multiple users editing simultaneously
  • Custom Component Creator - Upload your own icons and components
  • Cloud Sync - Save diagrams to cloud storage
  • Export to IaC - Generate Terraform/CDK from diagrams
  • AI-Powered Layout - Auto-arrange for optimal readability
  • Templates Library - Community-contributed templates
  • Version History - Track changes over time
  • Comments & Annotations - Team collaboration features

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


πŸ‘€ Author

Samba Siva


🌟 Show Your Support

Give a ⭐️ if this project helped you!

Star on GitHub


πŸ™ Acknowledgments


Made with ❀️ by Samba Siva

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages