Skip to content

Feature Overview

This page lists the main features of MedUX. Since MedUX is in pre-alpha, some features are partially implemented or planned.

Core Features

Patient Management

  • Patient demographics (name, address, insurance, contact details)
  • Patient search and listing
  • Patient detail view with encounter history

Encounter Management

  • Clinical encounters linked to patients
  • Encounter documentation

Dashboard

  • Customizable start page after login
  • Extensible via IDashboardSection — plugins can contribute widgets

Multi-Tenancy

  • Multiple practices on a single installation
  • Tenant-scoped data isolation
  • Role-based tenant membership (admin, staff, etc.)
  • Tenant switching for users with access to multiple tenants

User & Access Management

  • Django-based authentication with extensible login form
  • Role-based permissions per tenant
  • User groups with configurable permissions
  • Administration area for tenant-level user management

Scoped Settings

  • Five-level configuration cascade: User > Device > Group > Tenant > Vendor
  • Lockable settings (higher scopes can lock values for lower scopes)
  • Plugin-contributed settings sections

Plugin System

  • Install/remove features as independent Python packages
  • Plugin discovery and registration via GDAPS
  • Plugins can contribute: views, models, URLs, menus, settings, dashboard sections, administration screens, middleware, and more

Notification System

  • Real-time notifications via WebSocket (Django Channels)
  • In-app alerts

Employee Management

  • Employee records linked to user accounts
  • Working contracts and schedules

Wiki

  • Built-in wiki plugin for internal practice documentation

UI / UX

  • Modern admin theme based on Tabler.io (Bootstrap 5)
  • Server-rendered HTML with HTMX for seamless interactivity — no JavaScript framework required
  • Modal dialogs for CRUD operations
  • Toast notifications for user feedback
  • Responsive layout with sidebar, topbar, and offcanvas regions
  • Command palette for quick access to actions

Technical Features

  • Python 3.13+, Django 6.0+
  • PostgreSQL for production, SQLite for development
  • Django Channels for WebSocket support
  • Internationalization (i18n) ready
  • Pre-commit hooks for code quality (ruff)
  • Comprehensive test setup with pytest