NanoCoatBuilder - Professional Coating Formulation Software for Research & Development

🔬 NanoCoatBuilder

Professional Coating Formulation Software for Research & Development

GPL v3 Python 3.10+ Production Ready PySide6 50+ Ingredients ISO Compliant

📌 What is NanoCoatBuilder?

NanoCoatBuilder is a professional-grade desktop application for designing, analyzing, and optimizing coating formulations. Built for researchers, chemists, and materials scientists, it provides intelligent predictions, ISO compliance validation, and automatic synthesis protocol generation.

The software features a smart formulation system with 50+ ingredients including advanced nanomaterials like Graphene, CNT, MXene, and ZnO nanoparticles. It supports 10 application sectors from Navy to Medical with specific performance requirements.

Target Users

  • Materials Scientists
  • Chemists & Chemical Engineers
  • Coating Industry Researchers
  • Academic Researchers
  • Python Developers

Key Metrics

  • 50+ Ingredients Database
  • 10 Application Sectors
  • Real-time predictions
  • Export to HTML/JSON
  • English & French interfaces

Architecture

Modular MVC architecture with separation of concerns:

NanoCoatBuilder/
├── main.py                 # Entry point with splash screen
├── requirements.txt        # Dependencies
├── core/                   # Core business logic
│   ├── database/           # Ingredient database management
│   ├── models/             # Pydantic data models
│   ├── analysis/           # Performance analysis & validation
│   └── utils/              # Utilities, constants & translations
├── ui/                     # User interface components
│   ├── widgets/            # Reusable UI widgets
│   └── dialogs/            # Dialog windows
└── Screenshots/            # Captured screenshots (auto-created)

Smart Formulation

Drag-and-drop ingredient selection with real-time weight tracking. Target total weight: 100g for standardized research formulations.

Performance Prediction

AI-powered predictions for corrosion rate, adhesion strength, salt spray resistance, volume solids, VOC content, and service life.

ISO Compliance

Automatic validation against ISO 12944-1, 12944-5, 9227, 2409, and 15184 standards with detailed violation reports.

Protocol Generator

Automatic synthesis protocol generation with detailed steps, equipment needed, and safety notes for reproducible research.

Advanced Visualization

Interactive bar charts, salt spray resistance graphs, and service life predictions with Matplotlib integration.

History & Compare

Save, load, and compare formulations side-by-side with detailed ingredient difference tracking.

Export Capabilities

Export results to HTML reports (printable as PDF) and JSON data for publication and data sharing.

Multi-Language

English and French interfaces with real-time switching without application restart.

Validation Rules

🚫 Errors

  • Total weight must be 100g ±5g
  • Resin content ≥30% of solids
  • Solvent content ≥15% of total
  • Additive content ≤5% of total
  • Nanocomposite loading ≤5% of solids

⚠️ Warnings

  • High nanocomposite loading (>3%)
  • Low ingredient loading
  • High resin content (>70%)
  • High solvent content (>45%)

⚗️ Formulation Science

The software uses a comprehensive approach to coating formulation based on established scientific principles and ISO standards.

Performance Prediction Models:

Corrosion Rate: 0.05 × (1000 / Salt Spray Hours)
Service Life: DFT / (Corrosion Rate × 1000) × Environment Factor
Adhesion: Base value (Epoxy: 7.5 MPa, PU: 6.5 MPa) + Nanocomposite Enhancement
Volume Solids: (Solids Volume / Total Volume) × 100

📐 Application Sector Requirements

SectorSalt SprayAdhesionSolidsVOC
Navy / Marine≥3000h≥8 MPa≥65%≤350
Aviation / Aerospace≥2000h≥10 MPa≥70%≤250
Space / Satellite≥5000h≥12 MPa≥80%≤100
Industry / Manufacturing≥1500h≥6 MPa≥60%≤420
Building / Construction≥1000h≥5 MPa≥55%≤420

📊 Performance Prediction Ranges

PropertyExcellentGoodPoor
Corrosion Rate<0.01 mm/yr0.01-0.05 mm/yr>0.05 mm/yr
Adhesion>8 MPa5-8 MPa<5 MPa
Salt Spray>5000h2000-5000h<2000h
Service Life>20 years10-20 years<10 years

📋 System Requirements

RequirementMinimumRecommended
Python3.103.13
RAM2 GB4 GB
Disk200 MB500 MB
Display1280×7201920×1080

🐍 Dependencies

PySide6>=6.5.0 matplotlib>=3.7.0 numpy>=1.24.0 pydantic>=2.0.0

🚀 Installation Commands

# Clone repository
git clone https://github.com/khadev/NanoCoatBuilder.git
cd NanoCoatBuilder

# Create virtual environment (optional)
python -m venv venv
# Windows: venv\Scripts\activate
# Linux/Mac: source venv/bin/activate

# Install dependencies
pip install -r requirements.txt

# Run application
python main.py

📦 Standalone Executable

pip install pyinstaller
pyinstaller --onefile --windowed --name NanoCoatBuilder main.py
# Output: dist/NanoCoatBuilder.exe

🔧 Core Models

# Ingredient Model
class Ingredient(BaseModel):
    name: str
    category: str          # resin, solvent, pigment, additive, nanocomposite, filler
    properties: ChemicalProperty
    min_loading_wt: float
    max_loading_wt: float
    notes: str = ""

# Formulation Record
class FormulationRecord(BaseModel):
    unique_id: str
    name: str
    date: str
    operator: str
    coating_type: CoatingType
    target_environment: str
    items: List[FormulationItem]
    timestamp: float

    def total_weight(self) -> float:
        return sum(i.weight_grams for i in self.items)

⚡ Performance Prediction

class PerformancePrediction(BaseModel):
    corrosion_rate_mm_year: Optional[float]
    adhesion_MPa: Optional[float]
    salt_spray_hours: Optional[int]
    theoretical_volume_solids: float
    theoretical_voc: float
    cost_per_liter: float
    estimated_life_years: Optional[float]
    hardness_pencil: Optional[str]
    contact_angle_degrees: Optional[float]

class CoatingAnalyzer:
    @staticmethod
    def analyze(formulation: FormulationRecord, 
                application_sector: str = "Industry / Manufacturing") -> AnalysisResult

🗄️ Ingredient Database

CategoryCountExamples
Resins5Epoxy, Polyurethane, Acrylic
Nanocomposites6+Graphene Oxide, CNT, MXene, ZnO
Solvents8Xylene, Acetone, Ethanol
Pigments8Zinc Phosphate, Titanium Dioxide
Additives8Dispersant, Defoamer, Curing Agent
Fillers4Glass Fibers, Carbon Fibers

📁 Database Structure

core/database/
├── ingredient_db.py        # Full ingredient database with limits
└── history_manager.py      # Save/load formulation history

core/models/
├── ingredient.py           # Pydantic models for ingredients
├── formulation.py          # Formulation models
└── validation.py           # Validation rule models

core/utils/
├── constants.py            # Application constants and translations
├── language_manager.py     # Multi-language support
└── rag_agent.py            # Literature references for RAG

🤝 Contribution Guidelines

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

📝 Code Style

  • Follow PEP 8 with 120 character line length
  • Use type hints for all function signatures
  • Add docstrings to all public methods (Google style)
  • Maintain test coverage > 80%

📧 Commit Message Format

type(scope): subject

Types: feat, fix, docs, style, refactor, test, chore

Example:
feat(tafel): add automatic outlier detection
Khaled
Khaled ABOUT THE AUTHOR :
My name is Khaled and I studied chemistry at the University of science in Oran-Algeria I have got a master's degree in Biomolecule engineering. I believe in the philosophy of progression over perfection and that fitness is a lifelong journey with new milestones and achievements along the way. After cultivating a healthier lifestyle and developing a commitment to improving through my own fitness journey i discovered my desire to help others with what method works best for me and gave me the best results. That’s why I made this blog. So if you want to take your workouts and your passion to the next level, you’re in the right place.
When I'm not busy with sports, I fill my downtime spending time coding and building blocks of a website (design front-end developer), hanging with family & friends, spearfishing and cooking healthy food.
Progressive Fitness is a compilation of my workouts and nutrition advice, packaged just for you!

Post a Comment