NanoCoatBuilder - Professional Coating Formulation Software for Research & Development
🔬 NanoCoatBuilder
Professional Coating Formulation Software for Research & Development
📌 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.
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
| Sector | Salt Spray | Adhesion | Solids | VOC |
|---|---|---|---|---|
| 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
| Property | Excellent | Good | Poor |
|---|---|---|---|
| Corrosion Rate | <0.01 mm/yr | 0.01-0.05 mm/yr | >0.05 mm/yr |
| Adhesion | >8 MPa | 5-8 MPa | <5 MPa |
| Salt Spray | >5000h | 2000-5000h | <2000h |
| Service Life | >20 years | 10-20 years | <10 years |
📋 System Requirements
| Requirement | Minimum | Recommended |
|---|---|---|
| Python | 3.10 | 3.13 |
| RAM | 2 GB | 4 GB |
| Disk | 200 MB | 500 MB |
| Display | 1280×720 | 1920×1080 |
🐍 Dependencies
🚀 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
| Category | Count | Examples |
|---|---|---|
| Resins | 5 | Epoxy, Polyurethane, Acrylic |
| Nanocomposites | 6+ | Graphene Oxide, CNT, MXene, ZnO |
| Solvents | 8 | Xylene, Acetone, Ethanol |
| Pigments | 8 | Zinc Phosphate, Titanium Dioxide |
| Additives | 8 | Dispersant, Defoamer, Curing Agent |
| Fillers | 4 | Glass 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
- Fork the repository
- Create a feature branch (git checkout -b feature/amazing-feature)
- Commit changes (git commit -m 'Add amazing feature')
- Push to branch (git push origin feature/amazing-feature)
- 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
Types: feat, fix, docs, style, refactor, test, chore
Example:
feat(tafel): add automatic outlier detection

Post a Comment