A modern desktop application for creating, editing, and visualizing EnzymeML documents. Built with Tauri, React, and TypeScript, the EnzymeML Suite provides a comprehensive graphical interface for managing enzyme kinetics data and computational modeling workflows through its Jupyter integration.
Important
The EnzymeML Suite has undergone significant changes, and the latest release has known issues with Windows. Therefore, we advise you to use the up-to-date build within this GitHub Workflow.
EnzymeML is a data exchange format that supports the comprehensive documentation of enzymatic data by describing reaction conditions, time courses of substrate and product concentrations, the kinetic model, and the estimated kinetic parameters. This desktop application serves as the primary GUI for the EnzymeML ecosystem.
- Local Database: Built-in SQLite database for persistent data storage
- Entity Management: Create and manage proteins, small molecules, reactions, vessels, and measurements
- Import/Export: Load and save EnzymeML documents in JSON format
- Data Validation: Schema validation and type checking for data integrity
- OpenAI Integration: Extract experimental data from text using GPT models
- Intelligent Parsing: Automatically identify and structure enzyme kinetics parameters
- Context-Aware Processing: Schema-based extraction with validation
- Built-in Templates: Pre-configured notebooks for common modeling tasks:
- Basic analysis and visualization
- Bayesian parameter inference
- Neural ODE modeling
- COPASI integration
- Parameter estimation workflows
- PySCeS simulations
- Surrogate Bayesian inference
- Universal ODE solving
- Seamless Workflow: Launch Jupyter Lab directly from the application
- Python Environment Detection: Automatic Python version checking and setup
- Chemical Structure Visualization: SMILES-based molecular structure drawing
- Mathematical Expressions: LaTeX and MathML rendering for equations
- Kinetic Law Builder: Interactive kinetic rate law construction
- Data Visualization: Interactive charts and plots using Nivo and Highcharts
- Equation Editor: Mathematical formula editing with MathLive
- Cross-Platform: Available for Windows, macOS, and Linux
- Dark/Light Themes: Adaptive theme support with system preference detection
- Responsive Design: Optimized for various screen sizes
- Keyboard Shortcuts: Efficient workflow with customizable shortcuts
- Intuitive Navigation: Sidebar-based navigation with contextual menus
-
Clone the repository
git clone https://github.com/EnzymeML/enzymeml-suite.git cd enzymeml-dashboard -
Install dependencies
npm install
-
Run in development mode
cargo tauri dev
This will start both the React development server and the Tauri application.
# Build the application for distribution
cargo tauri buildThe built application will be available in src-tauri/target/release/bundle/.
- ESLint: Code linting and formatting
- TypeScript: Type checking and enhanced IDE support
- Tailwind CSS: Utility-first CSS framework
- Vite: Fast build tool and development server
- Tauri: Cross-platform desktop application framework
npm run dev # Start Vite development server
npm run build # Build for production
npm run preview # Preview production build
npm run tauri # Run Tauri CLI commands
cargo tauri dev # Start development with hot reload
cargo tauri build # Build application for distributionThe project uses ESLint for code quality and consistency:
npm run lint # Run ESLint
npm run lint:fix # Fix auto-fixable issues
βββ src/ # React frontend source code
βββ src-tauri/ # Rust backend source code
βββ jupyter-templates/ # Jupyter notebook templates
βββ dist/ # Built frontend assets
The application can be configured through:
tauri.conf.json- Tauri application settingsvite.config.ts- Vite build configurationtailwind.config.js- Tailwind CSS customizationeslint.config.ts- ESLint rules and settings
- Create New Document: Start with an empty EnzymeML document or load an existing one
- Define Entities: Add proteins, small molecules, vessels, and reactions
- Input Measurements: Import experimental data and time-course measurements
- Build Models: Use the kinetic law builder or Jupyter templates for modeling
- Analyze Results: Visualize data and import seamlessly into Jupyter notebooks
- AI Assistance: Use the extraction assistant to parse experimental data from text
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
To extend the Jupyter templates, you can add new templates to the jupyter-templates directory and open a pull request. The Base.ipynb template is the base template for all other templates and makes use of the PyEnzyme library to read the EnzymeML document and perform the analysis. Use it as a reference to create your own templates.
This project is part of the EnzymeML ecosystem. Please refer to the license file for details.
For questions, issues, or contributions, please visit the EnzymeML organization or refer to the official documentation.
