diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..0e817144 --- /dev/null +++ b/.gitignore @@ -0,0 +1,14 @@ +# Syncthing +.stfolder/ +.stignore + +# IDE +.vscode/ +.idea/ + +# Claude Code +.claude/ + +# Local/temp files +*.tmp +*.bak diff --git a/Media/Atomaste_grey_dark_Logo.svg b/Media/Atomaste_grey_dark_Logo.svg new file mode 100644 index 00000000..26412f51 --- /dev/null +++ b/Media/Atomaste_grey_dark_Logo.svg @@ -0,0 +1,55 @@ + + + + diff --git a/Media/Atomaste_light_grey_Logo.svg b/Media/Atomaste_light_grey_Logo.svg new file mode 100644 index 00000000..0b38bd3c --- /dev/null +++ b/Media/Atomaste_light_grey_Logo.svg @@ -0,0 +1,55 @@ + + + + diff --git a/Media/Atomaste_logo_A.svg b/Media/Atomaste_logo_A.svg new file mode 100644 index 00000000..40a31a66 --- /dev/null +++ b/Media/Atomaste_logo_A.svg @@ -0,0 +1,18 @@ + + + + diff --git a/Media/Gemini_Generated_Image_l5yenl5yenl5yenl.png b/Media/Gemini_Generated_Image_l5yenl5yenl5yenl.png deleted file mode 100644 index 590ec9bf..00000000 Binary files a/Media/Gemini_Generated_Image_l5yenl5yenl5yenl.png and /dev/null differ diff --git a/Media/Logo_Officiel.png b/Media/Logo_Officiel.png deleted file mode 100644 index bbca044c..00000000 Binary files a/Media/Logo_Officiel.png and /dev/null differ diff --git a/Media/logo_atomaste.png b/Media/logo_atomaste.png deleted file mode 100644 index e66b324f..00000000 Binary files a/Media/logo_atomaste.png and /dev/null differ diff --git a/Media/logo_atomaste2.png b/Media/logo_atomaste2.png deleted file mode 100644 index cb759db5..00000000 Binary files a/Media/logo_atomaste2.png and /dev/null differ diff --git a/deploy-to-dalidou.bat b/deploy-to-dalidou.bat new file mode 100644 index 00000000..9eb13848 --- /dev/null +++ b/deploy-to-dalidou.bat @@ -0,0 +1,44 @@ +@echo off +chcp 65001 >nul +title Deploy Atomaste to Dalidou Server + +echo ======================================== +echo Deploy Atomaste to Dalidou Server +echo ======================================== +echo. + +REM Step 1: Create directory and update docker-compose on server +echo [1/3] Setting up server... +ssh papa@192.168.86.50 "sudo mkdir -p /srv/atomaste-dev && sudo chown papa:papa /srv/atomaste-dev" + +REM Step 2: Copy website files +echo. +echo [2/3] Copying website files to Dalidou... +scp index.html papa@192.168.86.50:/srv/atomaste-dev/ +scp fr.html papa@192.168.86.50:/srv/atomaste-dev/ +scp -r Media papa@192.168.86.50:/srv/atomaste-dev/ + +REM Step 3: Add container config and start +echo. +echo [3/3] Starting web server container... +ssh papa@192.168.86.50 "cd /home/papa && grep -q 'atomaste-dev' docker-compose.yml || echo ' + atomaste-dev: + container_name: atomaste-dev + image: nginx:alpine + ports: + - \"8090:80\" + volumes: + - /srv/atomaste-dev:/usr/share/nginx/html:ro + restart: unless-stopped +' >> docker-compose.yml && docker compose up -d atomaste-dev" + +echo. +echo ======================================== +echo Deployment Complete! +echo ======================================== +echo. +echo Your website is now available at: +echo Local: http://192.168.86.50:8090 +echo Tailscale: http://100.80.199.40:8090 +echo. +pause diff --git a/deploy.bat b/deploy.bat new file mode 100644 index 00000000..ae7f0459 --- /dev/null +++ b/deploy.bat @@ -0,0 +1,5 @@ +@echo off +echo Deploying Atomaste to Dalidou... +scp -r "%~dp0index.html" "%~dp0fr.html" "%~dp0Media" papa@192.168.86.50:/srv/atomaste-dev/ +echo. +echo Done! View at: http://192.168.86.50:8090 diff --git a/fr.html b/fr.html new file mode 100644 index 00000000..0f03b3c2 --- /dev/null +++ b/fr.html @@ -0,0 +1,1234 @@ + + + + + +ATOMASTE | Services d'optimisation structurelle et analyse par éléments finis + + + + + + + + + + + + + + + +
+ + +
+
+
+ + + + +
+ + +
+
+ +
+ +
+
+ + + + + DISPONIBLE POUR PROJETS +
+
+ + +

+ Valider.
+ Optimiser.
+ Livrer. +

+ + +

+ Des services d'ingénierie axés sur la simulation pour + optimiser vos designs, + réduire les risques techniques et + accélérer vos cycles de développement. +

+ + + + + +
+
+ + Validation de conception +
+
+ + Optimisation de performance +
+
+ + Rapports techniques +
+
+
+ + +
+ +
+
+
+ + + + + + + + + + +
+
+ +
+
+
+
+ + +
+
+
+ +
+
+
FEA
+
Analyse structurelle
+
+
+
+ +
+
+
+ +
+
+
CAO
+
Conception
+
+
+
+ +
+
+
+ +
+
+
Optimisation
+
Multi-objectif
+
+
+
+ + +
+
+
+
+
+
+
+
+ + +
+ Défiler +
+
+
+ + +
+
+
+ +
+
+ +
+ + + +
+ Antoine - Atomaste +
+
+ + +
+
+
+ +
+
+
Fondateur
+
Atomaste
+
+
+
+
+
+ + +
+
+
+
+ À propos +
+

+ Ingénierie axée sur l'optimisation +

+
+ +
+

+ Atomaste offre des services spécialisés en génie mécanique axés sur + l'optimisation structurelle et l'analyse par éléments finis. +

+

+ En combinant rigueur d'ingénierie et méthodes de calcul avancées, + nous livrons des conceptions validées qui atteignent vos objectifs de performance tout en respectant vos contraintes techniques et opérationnelles. +

+
+ + +
+
+ +
Multi-physique
+
Analyse couplée
+
+
+ +
Optimisation
+
Axée sur la performance
+
+
+ +
Validation
+
Méthodes rigoureuses
+
+
+ +
Documentation
+
Rapports complets
+
+
+
+
+
+
+ + +
+
+ +
+
+ + SERVICES +
+

+ Ce que nous résolvons +

+

+ Valider une conception avant fabrication. Optimiser un produit existant. Résoudre des problèmes de performance. + Nous fournissons l'analyse et les données pour des décisions d'ingénierie éclairées. +

+
+ + +
+
+
+ +
+
Réduire les risques
+
Détecter les problèmes avant la production
+
+
+
+ +
+
Réduire les coûts
+
Moins de prototypes nécessaires
+
+
+
+ +
+
Gagner du temps
+
Cycles de développement plus rapides
+
+
+
+ +
+
Atteindre les specs
+
Atteindre les cibles de performance
+
+
+ + +
+ +
+
+
+
+ +
+

Validation de conception

+

FEA & Simulation

+

+ Sachez comment votre conception performera avant de la fabriquer. + Identifiez les points faibles, vérifiez les marges de sécurité et validez par rapport aux exigences. +

+
    +
  • + + Analyse de contraintes et déformations +
  • +
  • + + Études vibratoires et modales +
  • +
  • + + Comportement thermique +
  • +
  • + + Prédiction de durée de vie en fatigue +
  • +
+
+
+ + +
+
+
+
+ +
+

Optimisation de performance

+

Optimisation structurelle

+

+ Obtenez la meilleure conception, pas seulement une qui fonctionne. + Améliorez systématiquement le poids, la rigidité, le coût ou toute métrique importante pour vous. +

+
    +
  • + + Réduction de poids +
  • +
  • + + Optimisation de forme et topologie +
  • +
  • + + Compromis multi-objectifs +
  • +
  • + + Analyse de sensibilité +
  • +
+
+
+ + +
+
+
+
+ +
+

Systèmes haute précision

+

Opto-mécanique & Aérospatial

+

+ Pour les applications où les nanomètres comptent. + Analyse spécialisée pour les systèmes optiques, télescopes et instruments de précision. +

+
    +
  • + + Analyse d'erreur de forme de surface +
  • +
  • + + Stabilité thermique +
  • +
  • + + Effets de gravité et pointage +
  • +
  • + + Optimisation de structure de support +
  • +
+
+
+
+ + +
+
+ +
Conception CAO
+

Siemens NX, SolidWorks

+
+
+ +
Conception pour FA
+

Fabrication additive

+
+
+ +
Rapports techniques
+

Documentation & validation

+
+
+ +
Consultation
+

Accompagnement technique

+
+
+ + +
+
+
+ +
+

Capacités d'analyse

+
+
+
+ + Statique linéaire +
+
+ + Modal +
+
+ + Vibration +
+
+ + Thermique +
+
+ + Fatigue +
+
+ + Opto-méca +
+
+ + Non-linéaire +
+
+ + CFD +
+
+ + Dynamique +
+
+
+
+
+ + +
+ +
+
+
+
+ +
+ +
+
+ + SERVICES D'OPTIMISATION +
+

+ Optimisation avancée +

+

+ Allier méthodes classiques et apprentissage machine pour des conceptions optimales, plus vite. + Applicable à tout problème d'ingénierie multi-physique. +

+
+ + +
+
+ +
+
+
+
+ Exploration intelligente de conception +
+ +

+ Des exigences et objectifs à la conception optimale +

+ +

+ Ma démarche d'optimisation allie analyse rigoureuse et algorithmes de recherche performants. + Stabilité thermique, déformation de surface, réponse dynamique, coût de fabrication, objectifs multiples : + l'approche s'adapte à vos exigences. +

+ +
+
+
+ 1 +
+
+
Définir objectifs et contraintes
+
Cibles de performance, limites de fabrication
+
+
+
+
+ 2 +
+
+
Exploration automatisée de conception
+
Études paramétriques, analyse de sensibilité
+
+
+
+
+ 3 +
+
+
Solution optimale validée
+
Vérification ÉF, documentation
+
+
+
+
+ + +
+
+ +
Multi-objectif
+
Solutions Pareto-optimales
+
+
+ +
Paramétrique
+
Dimension et forme
+
+
+ +
Topologie
+
Distribution de matériau
+
+
+ +
Temps réel
+
Suivi de progression
+
+
+
+
+ + +
+
+ + +
+
+
+ +
+
+

Atomizer

+

Pipeline d'optimisation et cadre de protocoles

+
+
+
+ Siemens NX + Multi-physique + Extensible +
+
+ +

+ Atomizer est le pipeline qui structure l'exploration de conception de façon reproductible. + Il connecte solveurs ÉF, extracteurs de physique et algorithmes d'optimisation, + offrant un contrôle total sur les fonctions objectifs, contraintes et post-traitement. +

+ + +
+ +
+
+ +
+

Intégration NX CAO

+

+ Lien paramétrique direct entre les modèles Siemens NX et la boucle d'optimisation via NX Open API. +

+
+ + +
+
+ +
+

Optimiseurs classiques

+

+ TPE, CMA-ES, NSGA-II, MMA et autres algorithmes éprouvés, intégrés via des backends d'optimisation modulaires. +

+
+ + +
+
+ +
+

Modèles de substitution

+

+ Apprentissage machine pour approximer rapidement les simulations ÉF coûteuses. +

+
+ + +
+
+ +
+

Multi-objectif

+

+ Solutions Pareto-optimales avec fonctions objectifs personnalisées et contraintes d'ingénierie. +

+
+
+
+
+
+ + +
+
+ +
+
+ + PILE TECHNIQUE +
+

+ Outils & Technologies +

+
+ + +
+ +
+
+
+ +
+

ÉF & Simulation

+
+
+
+ Siemens NX Nastran +
+
+ SolidWorks Simulation +
+
+ OpenFOAM + CFD +
+
+ CalculiX + Open-source +
+
+ Code_Aster + Open-source +
+
+ FEniCS / Gmsh + Maillage +
+
+
+ + +
+
+
+ +
+

CAO & Conception

+
+
+
+ Siemens NX +
+
+ SolidWorks +
+
+
+
+ + +
+
+
+ +
+

Développement & Calcul scientifique

+
+
+
+ Python +
+
+ NumPy +
+
+ SciPy +
+
+ Pandas +
+
+ PyTorch +
+
+ Scikit-learn +
+
+ Optuna +
+
+ pyNastran +
+
+ Matplotlib +
+
+ Plotly +
+
+ FastAPI +
+
+ React +
+
+ NX Open API +
+
+
+
+
+ + +
+
+ +
+
+ + + + + DISPONIBLE POUR PROJETS +
+ +

+ Optimisons ensemble +

+ +

+ Prêt à améliorer vos conceptions grâce à une analyse ÉF rigoureuse et à l'optimisation? + Discutons de vos besoins de projet. +

+ + + + +
+
+ + + +
+ + + + diff --git a/index.html b/index.html index 2d72088b..58aa53e9 100644 --- a/index.html +++ b/index.html @@ -1,231 +1,506 @@ - - + + + -ATOMASTE | Solutions d'ingénierie Mécanique - FEA & Simulation - +ATOMASTE | Structural Optimization & FEA Engineering Services + + - + - +::-webkit-scrollbar { width: 6px; } +::-webkit-scrollbar-track { background: var(--bg-dark); } +::-webkit-scrollbar-thumb { background: #1a2535; border-radius: 3px; } +::-webkit-scrollbar-thumb:hover { background: #2a3545; } - -
-
-
+/* Animated Grid Background */ +.grid-bg { + background-image: + linear-gradient(rgba(0, 212, 230, 0.03) 1px, transparent 1px), + linear-gradient(90deg, rgba(0, 212, 230, 0.03) 1px, transparent 1px); + background-size: 50px 50px; + animation: gridMove 20s linear infinite; +} +@keyframes gridMove { + 0% { background-position: 0 0; } + 100% { background-position: 50px 50px; } +} + +/* Particle Canvas */ +#particles-canvas { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + pointer-events: none; + z-index: 1; +} + +/* Ambient Glows */ +.glow-orb { + position: absolute; + border-radius: 50%; + filter: blur(80px); + pointer-events: none; + animation: orbFloat 8s ease-in-out infinite; +} +@keyframes orbFloat { + 0%, 100% { transform: translate(0, 0) scale(1); } + 33% { transform: translate(30px, -20px) scale(1.1); } + 66% { transform: translate(-20px, 20px) scale(0.9); } +} + +/* Glass Morphism */ +.glass { + background: rgba(10, 20, 35, 0.6); + backdrop-filter: blur(20px); + border: 1px solid rgba(0, 212, 230, 0.1); +} +.glass-strong { + background: rgba(5, 15, 30, 0.8); + backdrop-filter: blur(30px); + border: 1px solid rgba(0, 212, 230, 0.15); +} + +/* Text Gradients */ +.text-gradient { + background: linear-gradient(135deg, #ffffff 0%, #00d4e6 50%, #0891b2 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + background-clip: text; +} +.text-gradient-subtle { + background: linear-gradient(135deg, #ffffff 40%, #00d4e6 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + background-clip: text; +} + +/* Animated Border */ +.border-glow { + position: relative; +} +.border-glow::before { + content: ''; + position: absolute; + inset: -2px; + border-radius: inherit; + background: linear-gradient(45deg, transparent, var(--cyan-primary), transparent); + background-size: 400% 400%; + animation: borderGlow 3s ease infinite; + z-index: -1; + opacity: 0; + transition: opacity 0.3s; +} +.border-glow:hover::before { + opacity: 1; +} +@keyframes borderGlow { + 0%, 100% { background-position: 0% 50%; } + 50% { background-position: 100% 50%; } +} + +/* Floating Animation */ +@keyframes float { + 0%, 100% { transform: translateY(0px) rotate(0deg); } + 50% { transform: translateY(-15px) rotate(1deg); } +} +@keyframes floatReverse { + 0%, 100% { transform: translateY(0px) rotate(0deg); } + 50% { transform: translateY(15px) rotate(-1deg); } +} +.float { animation: float 6s ease-in-out infinite; } +.float-delay { animation: float 7s ease-in-out infinite 1s; } +.float-reverse { animation: floatReverse 8s ease-in-out infinite 0.5s; } + +/* Pulse Glow */ +@keyframes pulseGlow { + 0%, 100% { box-shadow: 0 0 20px rgba(0, 212, 230, 0.2), 0 0 40px rgba(0, 212, 230, 0.1); } + 50% { box-shadow: 0 0 40px rgba(0, 212, 230, 0.4), 0 0 80px rgba(0, 212, 230, 0.2); } +} +.pulse-glow { animation: pulseGlow 3s ease-in-out infinite; } + +/* Counter Animation */ +@keyframes countUp { + from { opacity: 0; transform: translateY(10px); } + to { opacity: 1; transform: translateY(0); } +} +.stat-number { + animation: countUp 0.5s ease-out forwards; +} + +/* Scan Line Effect */ +.scan-line { + position: relative; + overflow: hidden; +} +.scan-line::after { + content: ''; + position: absolute; + top: 0; + left: -100%; + width: 100%; + height: 2px; + background: linear-gradient(90deg, transparent, var(--cyan-primary), transparent); + animation: scan 3s ease-in-out infinite; +} +@keyframes scan { + 0% { left: -100%; } + 50% { left: 100%; } + 100% { left: 100%; } +} + +/* Card Hover Effects */ +.card-3d { + transform-style: preserve-3d; + transition: transform 0.3s ease; +} +.card-3d:hover { + transform: perspective(1000px) rotateX(2deg) rotateY(-2deg) translateZ(10px); +} + +/* Neural Network Visualization */ +.neural-dot { + width: 6px; + height: 6px; + background: var(--cyan-primary); + border-radius: 50%; + animation: neuralPulse 2s ease-in-out infinite; +} +@keyframes neuralPulse { + 0%, 100% { opacity: 0.3; transform: scale(1); } + 50% { opacity: 1; transform: scale(1.5); } +} + +/* Progress Bar Animation */ +@keyframes progressFill { + from { width: 0; } +} +.progress-bar { + animation: progressFill 1.5s ease-out forwards; +} + +/* Selection */ +::selection { + background: rgba(0, 212, 230, 0.3); + color: #fff; +} + +/* Responsive typography */ +@media (max-width: 768px) { + .hero-title { font-size: 2.5rem; } +} + + + + + + + + +
+ + +
+
+
-