Repository navigation
Releases: moresophy/ipam
Releases · moresophy/ipam
Release list
v1.3.0 — UI Overhaul, Bug Fixes & Accessibility
What's New in v1.3.0
Bug Fixes
Backend
- IP reassignment on subnet creation was broken for root-level subnets — the old code only walked the parent chain. Rewritten to use
ipaddress.subnet_of()across all existing subnets, so IPs are correctly migrated regardless of nesting depth. - N+1 query patterns eliminated in
get_ips,import_ips, andexport_ipsby loading subnet data once and building a lookup dict. - Numeric IP sort — IPs are now sorted by their integer value in
get_ipsandexport_ips, not lexicographically. - CIDR normalization — host bits are silently normalised on subnet creation (
strict=False). - Hardcoded
debug=Trueremoved; debug mode now reads theFLASK_DEBUGenvironment variable. - Security: removed
print()statements that leaked password hashes to stdout on login. - API error messages translated from German to English.
Frontend
- Subnet tree was limited to 2 levels deep. Replaced with a recursive
buildTree(parentId)— unlimited nesting depth now works correctly. - Stale closure in context menu
useEffectcaused the event listener to re-register on every open/close. Fixed with functionalsetStateand empty[]dependency array.
New Features
- Toast notification system — all
alert()calls replaced with a professional bottom-right toast (auto-dismiss after 4 s, success/error/info variants with icons,aria-livefor screen readers). - Accessibility —
aria-labeladded to every icon-only button (theme toggle, logout, settings, import/export, edit/add/delete in subnet tree). - Form loading states — subnet and IP modal submit buttons are disabled and show a spinner during API calls.
- Escape key closes all modals (subnet, IP, delete confirmation, settings).
UI Redesign
- Dashboard: dark sidebar (
slate-900, always), resizable pane, breadcrumb navigation, compact IP table with semantic colour-coded architecture badges (VM, Kubernetes, Firewall, IoT Device, etc.), sticky table header, professional modals withrounded-xl shadow-2xl. - Login page: split layout (dark branding panel + form), password show/hide toggle, loading state on submit, styled error message.
- SettingsModal: section headers, scrollable content, coloured feedback messages.
Performance
subnetByIdMap (useMemo) replacesArray.find()for O(1) subnet lookups.filteredIpsandsubnetPathwrapped inuseMemo.- Lazy state initialisation in
ThemeContextandSettingsModal.
Docs & Tooling
- Added
CLAUDE.mdfor AI coding assistant context. - Rewrote
README.md,DEVELOPMENT.md,CICD.md,k8s/README.md,frontend/README.md— all now in English, updated for v1.3.0. - Full
CHANGELOG.mdadded. - UI/UX design skills added at
.agents/skills/.
Docker Images
moresophy/ipam-backend:1.3.0
moresophy/ipam-frontend:1.3.0
v1.2.3 - Documentation & Stability Polish
📚 Documentation
- Troubleshooting Guide: Added a detailed section to
DEVELOPMENT.mdcovering common Kubernetes issues (CORS, Probes, Postgres) and their fixes. - Version Bump: Synced version to 1.2.3.
🧩 Previous Fixes (Included)
- Subnet Autosort: Subnets now sorted numerically by CIDR.
- UI Polish: New Favicon and Page Title.
- K8s Stability: Fixes for Postgres permissions, Login CORS, and Health Probes.
v1.2.2 - Autosort, UI Polish & K8s Fixes
🚀 New Features
- Subnet Autosort: Subnets are now automatically sorted by IP address (CIDR) in the backend, ensuring a logical hierarchical display.
- UI Polish: Updated browser tab title to 'IPAM' and added a custom favicon (Black Pin with Blue IP).
🐛 Bug Fixes
- Login CORS / Mixed Content: Fixed login issues on Kubernetes by updating the frontend to use a relative API path (
/api) and allowing CORS. - Postgres Deployment: Fixed
initdberror on Kubernetes by using a subdirectory forPGDATAand adding an init container to fix volume permissions. - Health Probes: Fixed Kubernetes liveness/readiness probes by adding a public
/api/healthendpoint.
🐳 Infrastructure
- Images: All images updated on Docker Hub (
moresophyorganization).
v1.2.1 - Multilingual Support & Polish
🌍 New Features
- Multilingual Support: Fully localized Dashboard and Login screen in 8 languages (EN, DE, ES, FR, JA, PT, RU, ZH).
- UI Polish: Login screen title changed to 'IPAM' for consistency.
�� Infrastructure
- Docker Hub: Switched default registry to Docker Hub (
moresophyorganization). - Backend/Frontend: Images rebuilt and optimized.
🐛 Bug Fixes
- Fixed mixed language headers in Dashboard.
- Fixed language selection persistence issues.
v1.2.0 - Production Ready
Initial release of IPAM system. Includes Docker images, Kubernetes manifests, and full German localization.