Skip to content

anouar-bm/uml_to_code

Repository files navigation

UML to Code

Live Application: https://uml-to-code.vercel.app/

UML to Code is a powerful and intuitive web-based tool for creating and visualizing UML class diagrams. It's designed to help developers and software architects design and document their systems with ease. With its code generation capabilities, it bridges the gap between design and implementation, allowing you to quickly generate boilerplate code from your diagrams.

Screenshot

A screenshot of the UML to Code application interface. On the left, a UML diagram shows a "professor" class and a "student" class with a many-to-many relationship. On the right, a panel displays the auto-generated Python code for these classes, while another panel at the bottom allows for editing relationship properties like type and multiplicity.

The main interface of the UML to Code application. It demonstrates the creation of a simple class diagram, the corresponding real-time code generation in Python, and the options for editing relationship properties.

Features

  • Intuitive Diagram Editor: A smooth, drag-and-drop interface for creating and organizing your class diagrams.
  • Rich UML Support: Create classes, interfaces, and abstract classes, and define the relationships between them, including:
    • Inheritance
    • Realization
    • Aggregation
    • Composition
    • Association
  • Code Generation: Generate code from your diagrams in multiple languages, including:
    • Java
    • Python
    • PHP
    • JSON
  • Image Export: Export your diagrams as PNG images to include in your documentation or presentations.
  • Modern Tech Stack: Built with a modern and efficient tech stack, ensuring a fast and responsive user experience.

Technologies Used

  • React: A popular JavaScript library for building user interfaces.
  • Vite: A next-generation frontend tooling that provides a faster and leaner development experience.
  • Tailwind CSS: A utility-first CSS framework for rapid UI development.
  • React Flow: A library for building node-based editors and interactive diagrams.
  • Zustand: A small, fast, and scalable state management solution for React.

Getting Started

To run the project locally, follow these steps:

  1. Clone the repository:

    git clone https://github.com/anouar-bm/uml-to-code.git
  2. Install dependencies:

    npm install
  3. Run the development server:

    npm run dev

    The application will be available at http://localhost:5173.

Contributing

Contributions are welcome! If you have any ideas, suggestions, or bug reports, please open an issue or submit a pull request.

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages