v0.1-sprint0: Esqueleto completo AR-ShipDesign

- Estructura completa de carpetas (236 módulos stub + implementados)
- pyproject.toml, requirements, .gitignore, LICENSE (propietario)
- core/project.py: serialización .arsd (ZIP con JSON)
- core/units.py: conversiones SI <-> imperial completas
- ui/main_window.py: layout DELFTship-style con todos los paneles
  - Árbol de proyecto (dock izquierda)
  - Tabs de módulos (centro)
  - Panel de propiedades (dock derecha)
  - Panel hidrostáticos en vivo (inferior, fijo)
- ui/i18n: español e inglés
- ui/themes: tema claro y oscuro
- utils/logger.py, settings.py, validation.py
- data/liquids.json: 15 líquidos navales
- data/stability_criteria.json: IMO IS Code 2008, A.749(18), USCG
- tests/test_startup.py: 12 tests, todos PASSED
- Módulo scantling/ ISO 12215 (stubs Sprint 2.5)
- Módulo fabrication/molds/ para moldes FRP (stubs Sprint 13B)
- Módulo fabrication/ para CNC plasma/router/laser (stubs Sprint 13)
This commit is contained in:
2026-05-26 22:10:18 -04:00
commit 0dbc2a4518
266 changed files with 4249 additions and 0 deletions
+54
View File
@@ -0,0 +1,54 @@
[build-system]
requires = ["setuptools>=68", "wheel"]
build-backend = "setuptools.backends.legacy:build"
[project]
name = "arshipdesign"
version = "0.1.0"
description = "Software profesional de diseño naval — AR-ShipDesign"
authors = [{ name = "Álvaro Rodríguez" }]
license = { file = "LICENSE.txt" }
readme = "README.md"
requires-python = ">=3.11"
keywords = ["naval", "ship design", "hydrostatics", "stability", "CAD"]
classifiers = [
"Development Status :: 2 - Pre-Alpha",
"Programming Language :: Python :: 3.11",
"Topic :: Scientific/Engineering",
"Operating System :: Microsoft :: Windows",
]
dependencies = [
"PySide6>=6.6.0",
"pyvista>=0.43.0",
"pyvistaqt>=0.11.0",
"pyqtgraph>=0.13.0",
"geomdl>=5.3.1",
"numpy>=1.26.0",
"scipy>=1.11.0",
"pandas>=2.1.0",
"openpyxl>=3.1.0",
"ezdxf>=1.1.0",
"trimesh>=4.0.0",
"reportlab>=4.0.0",
"shapely>=2.0.0",
]
[project.scripts]
arshipdesign = "main:main"
[tool.setuptools.packages.find]
where = ["."]
include = ["arshipdesign*"]
[tool.pytest.ini_options]
testpaths = ["tests"]
python_files = ["test_*.py"]
python_classes = ["Test*"]
python_functions = ["test_*"]
addopts = "-v --tb=short"
[tool.mypy]
python_version = "3.11"
strict = false
ignore_missing_imports = true