Skip to content

full code refactoring using the Vue.js framework #83

Description

@martin-raden

goals

refactor the whole code base of the project using the Vue.js framework

details goals are:

  • segment website and source into logical parts and reflect this decomposition by folder and file hierachies
  • reduce individual file sizes to less than 500 lines each
  • improve readability by AI agents and reduce required context sizes to work on tasks
  • refactor redundant and inefficient code work and simplify where appropiate
  • do a clear separation of model and views and ma
    • model = all data that defines the visualization (rna sequences, colors, highlightings, ...)
    • "canvas view" = varri-js library part to render the model
    • "ui view" = user interface to set and update the model
    • allow for exporting and importing the model via url parameters
    • examples are stored models with additional meta data
  • rewrite all testing respectively
  • also decompose varri-js source respectively but ensure a single js artifact is compiled via github actions on respective source changes
  • extract and refactor the required fornac core functions into the new varri-js src framework without fornac dependency and full control and understanding of the visualization graph and d3 settings
    • add individual markdown documentation files for
      • the underlying force fied graph
      • the visualization architecture and workflow of generation
  • rewrite the library with a focus on efficiency, code reusability and understandabilty by ai coding agents
  • add guiding information for ai coding agents also in form of AGENTS.md directives
  • ensure implemented all features of the original version are maintained
  • generate a markdown protocol of changes, relations of old and new code, open issues, potential problems,

open a respective pull request to protocoll the progress or this issue and where the created detailed markdown protocol is linked respectively for inspection

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions