Skip to content

dashen2004/Logify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔥Logic Diagram Generation Software🔥

Advertisement | Demonstration | Digital Artefact | Presentation | Environmental Requirement | Installation Instructions

🌤️ Authors: Youyao Gao, Jason Lymand WIDJAYA, Shu Qi Lee, Tongchang Liu, Yuhang Wu, Ziqi Li 🌤️

📘 Project Background

In the modern software engineering landscape, the ability to transform unstructured textual information into structured visual representations is essential for enhancing comprehension and improving communication of complex ideas. This project aims to develop a software application that allows users to input detailed textual logic descriptions and automatically generate corresponding logic diagrams by recognizing the logical relationships embedded within the text.

Unlike existing solutions, which typically require users to write specialized code or use structured input formats, our software fills a critical gap in the market by enabling natural language-based logic diagram generation. Most available tools, such as Visual Paradigm, Lucidchart, and PlantUML, require either manual effort or technical knowledge of domain-specific languages, making them inaccessible to non-programmers.

Our software aims to provide an intuitive, user-friendly solution that simplifies logic diagram generation for a broader audience, particularly users without prior programming experience.

By bridging the gap between natural language and visual representation, our software democratizes logic diagram creation, making it accessible to business analysts, educators, researchers, and non-technical professionals who need to convey complex workflows and processes effectively.

⚙️ Software Features

This software provides a comprehensive set of features designed to automatically generate logic diagrams from natural language input, offering interactive editing and management capabilities. The core functionalities include the following:

  1. User Authentication and Management

    • Account Registration and Login

      • Users can create an account to save personal settings and history records.
    • Secure Password Storage

      • The user login account password will be hidden on the web.
  2. Logic Diagram Generation

    • Natural Language Processing

      • The software allows users to directly input text, generate mermaid code by calling the large model interface, and render it directly into svg format pictures at the back-end.
    • Multiple Diagram Types Supported

      • Flow Chart
      • Mind Map
      • Sequence Diagram
      • Class Diagram
    • Mermaid.js-based Rendering

      • The software utilizes Mermaid.js to generate SVG vector graphics, ensuring efficient rendering and modification.
    • Alternative Large Language Model (LLM)

      • Supports Qwen2.5-coder-7b , Gemma3-4b, Glm4:9b to improve text-to-logic transformation accuracy.
  3. Interactive Editing

    • Node Modification: Users can click on any node within the logic diagram to edit its text content. The system automatically updates the logical relationships and re-renders the diagram.

    • History Management:

      • Users can search, rename, and delete previously History chat history name.

      • User can modify and download previously generated logic diagrams.

  4. Download and Download

    • One-Click Download: Users can instantly save the modified logic diagram for documentation or sharing.
  5. User Interface

    • Intuitive UI Design:

      • Chat-based interaction, allowing users to input text and receive a generated diagram instantly.
      • Sidebar with history records, enabling quick access to previously generated diagrams.
      • Dark mode and light mode support for personalized user experience.

📊 Dataset and Test

  • Datasets are obtained from https://huggingface.co/datasets

  • Test are divided into Large Language Model Evaluation,User Test and Unit Test

    • Large Language Model Evaluation

    • User Test:

      Test Activities Results
      USER REGISTRATION True
      USER LOGIN True
      MAIN PAGE
      QWEN2.5 FLOWCHART GENERATION True
      QWEN2.5 CLASS DIAGRAM GENERATION True
      QWEN2.5 SEQUENCE DIAGRAM GENERATION True
      QWEN2.5 MIND MAP GENERATION True
      GEMMA3 FLOWCHART GENERATION True
      GEMMA3 CLASS DIAGRAM GENERATION True
      GEMMA3 SEQUENCE DIAGRAM GENERATION True
      GEMMA3 MIND MAP GENERATION True
      GLM4 FLOWCHART GENERATION True
      GLM4 CLASS DIAGRAM GENERATION True
      GLM4 SEQUENCE DIAGRAM GENERATION True
      GLM4 MIND MAP GENERATION True
      USER MODIFICATION True
      CHAT
      CHECK HISTORY CHAT True
      RENAME CHAT True
      DELETE CHAT True
      SETTINGS
      SCREEN MODE SELECTION True
      MODEL SELECTION True
      LOGIC DIAGRAM SELECTION True
      USER LOGOUT True
    • Unit Test:

ID Test Time Test Function Name Expected Output Actual Output Pass/Fail
1 2025-3-23 13:11 test_load_users Users loaded successfully Users loaded successfully True
2 2025-3-23 13:18 test_save_users Users saved successfully Users saved successfully True
3 2025-3-23 13:29 test_hash_password Correct hash generated Correct hash generated True
4 2025-3-26 16:15 test_convert_png_to_jpg JPG file created JPG file created True
5 2025-3-23 13:50 test_index_redirect_when_not_logged_in Redirect to login Redirect to login True
6 2025-3-23 14:12 test_login_page Login page served Login page served True
7 2025-3-23 14:32 test_do_register_success Registration successful Registration successful True
8 2025-3-23 14:38 test_do_register_failure_existing_user Registration failed: user exists Registration failed: user exists True
9 2025-3-26 16:41 test_do_register_empty_fields Registration failed: empty fields Registration failed: empty fields True
10 2025-3-23 14:52 test_do_login_success Login successful Login successful True
11 2025-3-23 14:58 test_do_login_failure_wrong_password Login failed: wrong password Login failed: wrong password True
12 2025-3-26 16:55 test_do_login_empty_fields Login failed: empty fields Login failed: empty fields True
13 2025-3-23 15:11 test_logout Logout successful Logout successful True
14 2025-3-23 15:19 test_generate_mermaid_code Mermaid code generated Mermaid code generated True
15 2025-3-23 15:50 test_generate_image_directly Image generated successfully Image generated successfully True
16 2025-3-23 16:11 test_generate_image_route Image URL returned Image URL returned True
17 2025-3-23 16:17 test_get_current_user_logged_in Current user retrieved Current user retrieved True
18 2025-3-23 16:21 test_get_current_user_not_logged_in Not logged in message Not logged in message True
19 2025-3-23 16:45 test_save_and_get_history History saved and retrieved History saved and retrieved True
20 2025-3-23 16:59 test_update_and_get_mermaid_code Mermaid code updated and retrieved Mermaid code updated and retrieved True
21 2025-3-23 17:09 test_regenerate_image Image regenerated successfully Image regenerated successfully True

Four dimensions are used by the project team to measure quality assurance which includes Overview of Testing Methodologies, Code Quality and Code Maintenance, Software Stability and System Support and Update Documentation.

MIT License

  • Ollama:

    MIT License

    Copyright (c) Ollama

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

  • Glm4:

    MIT License

    Copyright (c) 2021 THUDM

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. About GLM (General Language Model)

    Resources Readme License MIT license Activity Custom properties Stars 3.2k stars Watchers 44 watching Forks 325 forks Report repository Releases No releases published Packages No packages published Contributors 15 @duzx16 @thomas0809 @tuteng0915 @jeffra @tjruwase @dm-thu @samyam @WrRan @arashashari @xv44586 @eltonzheng @Xiao9905 @jren73 @RezaYazdaniAminabadi @TrellixVulnTeam Languages Python 92.6%

    Shell 4.9%

    Dockerfile 2.0%

    Perl 0.5% Footer

Thanks to all contributors ❤

About

The UNNC Group project of TEAM19

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors