github stan-smith/FossFLOW v1.0.0

latest releases: v1.3.0, v1.2.0, v1.1.1...
20 hours ago

1.0.0 (2025-10-08)

Features

  • accepts an array of textboxes as part of initialData (aaf48bd)
  • Add advanced pan controls with configurable options (83c9b3a), closes #25
  • add click-based connector creation mode with empty space support (#108) (5ff21cc), closes #84
  • add close button to item control components (a808b83)
  • add comprehensive tests for connector reducer and improve CI/CD coverage reporting (70b1f56)
  • Add configurable hotkey system for tools (ef258df), closes #59
  • Add custom icon import functionality with automatic scaling (dd80e86)
  • add Help dialog and shortcut key support (d500460)
  • add i18n to main menu & docs: update Chinese README (#130) (a001da7)
  • add language detector & update Chinese README (#127) (e18e51f)
  • add LLM-friendly export features and format code with Prettier (77b304c)
  • Add option to toggle connector arrows (dea6a1e), closes #74
  • Add server-side storage for persistent diagram management (bf3a30f), closes #48
  • added error boundary (#90) (179b512)
  • adds ability to remove a node (2e2a98f)
  • adds basic editor example (dc04314)
  • adds codesandbox config (b23c3a9)
  • adds deleteView reducer (80f257b)
  • adds discord option to main menu (86900a9)
  • adds documentation (a279729)
  • adds example for readonly mode (db1fc8f)
  • adds icons (b7ac563)
  • adds image export options to toggle grid and change bg color (ee7a92d)
  • adds link to Github repo in main menu (109048c)
  • adds linting dependency (bfb0295)
  • adds standalone build and a Dockerfile (e8d678d)
  • adds title to scene config (ee3306b)
  • adds to standaloneExports (d5084e2)
  • adds utility methods on the window for debugging (38c4278)
  • adds validation check for connectors with less than 2 anchors (880ed5b)
  • adds zoom on scroll (53641a4)
  • allows all interactions to be disabled (0e5ca5a)
  • allows an optional viewId to be passed as part of initialData (30cd3f2)
  • allows better drag and drop interaction for connector anchors (7661bcb)
  • allows codesandbox to open a browser preview (fbf48d2)
  • allows color selection for nodes (39afd84)
  • allows custom node labels (with example) (55f9b37)
  • allows expandable node labels (90f6c0e)
  • allows icons to be drag and dropped onto canvas (07dc1d1)
  • allows layer order of rectangles to be changed (56591cb)
  • allows loading of local scene file (8b362ea)
  • allows main menu to be customised (46ce637)
  • allows main menu to be hidden (3b02ae1)
  • allows node icon to be changed (fd88787)
  • allows node labels to be expanded (a1783f1)
  • allows project to be centered (c638bf0)
  • allows saving of scene (a1a98f2)
  • allows textBoxes to be dragged from any point (2f6cfa1)
  • allows translation of rectangles (19478ab)
  • allows width and height to be passed through as props (f1f9c0f)
  • applies animation on zoom and scroll (efde778)
  • attempts to boost performance by explicitly activating GPU rendering (0dc27b7)
  • blocks pointer-events on title (b5a57d0)
  • bumps patch version (94c3097)
  • bumps up isopacks version (2a9d10b)
  • changes starting mode to PAN (5f015c4)
  • ci: implemented automatic versioning plus releases (9d9fe84)
  • closes any open itemControls when panning mode selected (aba2633)
  • closes any open itm controls if main menu is opened (a21d01b)
  • closes main menu BEFORE native file dialog appears (1382c41)
  • configures webpack build for docker image (1a64706)
  • debug mode size indicator now wraps around all items (536b51d)
  • disables lasso mode for now (d017b3e)
  • disables scroll / zoom animations on drag and drop layer (1d9324e)
  • displays connector anchors only when connector is selected / active (366b816)
  • displays main manu in top left corner (6bbef04)
  • displays title at bottom of view (35b73de)
  • enable panning by dragging on empty space with left mouse button (ddb28a2)
  • enables dragging of connector anchors (f808159)
  • enables expandable labels on nodes (36c5c17)
  • enhance connector functionality with multiple labels and line types (#128) (d5e02ea), closes #107 #113
  • enhance context menu functionality with item and empty states (674b46f)
  • ensures connectors have start and end nodes (0bace0b)
  • executes entry / exit logic for interactions (3112842)
  • exports isoflow props as type (75ed461)
  • exports Scene typings (28122ed)
  • exports types (28f4db9)
  • exposes api to update single node and hook into scene changes (37fd9ea)
  • filters textbox data on scene export (ca087b4)
  • fixes cursor position when editor not 100% of viewport (287de5b)
  • fixes UX around drag and drop onto canvas (37bc36c)
  • fixes zIndexing of scene items (516ab8b)
  • grid listens to window resize events (0b97897)
  • hides label height control when no label present (82977bf)
  • hides scene title if editor is in 'NON_INTERACTIVE' mode (91fa85a)
  • implement comprehensive undo/redo system with keyboard shortcuts and UI integration (b9356d3)
  • Implement quick icon selection workflow for improved UX (8576e30), closes #56
  • implements 'clear canvas' menu item (e65a782)
  • implements adding node to scene (99c8060)
  • implements basic support for touch devices (a841504)
  • implements callback example (57f6a00)
  • implements connector colors (eef4dba)
  • implements connector controls (198a1f4)
  • implements connector direction icon (eeaaad9)
  • implements connector labels (4ad8b22)
  • implements connector logic (19324be)
  • implements connector styles (46de2cf)
  • implements connector width controls (58dd3b5)
  • implements connectors (43aab47)
  • implements group rendering (UI not implemented yet) (d9daa68)
  • implements icons searchbox (887a916)
  • implements image export (9f11cce)
  • implements lasso selection (UI disabled) (a76e5e7)
  • implements lastUpdated field on views (3cff06d)
  • implements multiselect (f68daac)
  • implements node delete (b13cd66)
  • implements node drag and drop (b350320)
  • implements node labels (f93f901)
  • implements node positioning via drag and drop (a6fdbf0)
  • implements onSceneUpdated callback (f1f77d4)
  • implements readmore on node description overflow (f9536c9)
  • implements rectangle controls (94995f0)
  • implements rectangle delete (416b976)
  • implements rectangle tool basics (bd7a118)
  • implements text tool (c240def)
  • implements transform controls for rectangles (cb36408)
  • imports isopacks as separate package (0580440)
  • improves label handeling (1d3e7d5)
  • improves mouse tracking (77e8c02)
  • improves panning mode UX (2230637)
  • improves panning mode UX (4b0d3d8)
  • improves scrolling on sidebars (6c76790)
  • improves textbox sizing (20ac174)
  • improves UX on Tool menu (ac4e9e8)
  • improves UX when dragging rectangle anchor (5feca66)
  • improves UX when selecting elements (541e469)
  • improves word wrap handling in labels (ba30ffd)
  • increases resolution of export images (68c11e5)
  • installs zustand devtools (ad78b52)
  • introduces new TextBox tool (23d3bda)
  • isoflow takes 100% height as default (85e36bd)
  • keeps icons when canvas is cleared (ccbedd7)
  • limits connector width (14a72c7)
  • makes App component default export (8d731af)
  • moves non-interactive check further up the tree (7a1ab19)
  • moves zoom controls to lower left (c2f456a)
  • performance upgrade (solves issue with nodes not being GC'd) (bf42411)
  • prevents onSceneUpdated called the first time scene is loaded (d1bc30e)
  • prevents user highlighting while dragging (7a5b996)
  • reduces height of node labels (d551897)
  • reduces size of icons slightly (32f4b12)
  • refactors schema to accomodate model (ad5a4e0)
  • reinstates interactions (97d65fa)
  • removes buggy scrollTo node when label expanded (b0c5c9d)
  • removes color from node schema (ccea412)
  • removes custom label container for now (194b4ed)
  • removes zustand dev tools (4a4f168)
  • renders a basic node to scene (5dbeb97)
  • replace import toolbar with tooltip guidance (a2a47b4), closes #123
  • replaces xstate with custom state machine implementation (6b90ad9)
  • resets the UI after a canvas clear (413567e)
  • resets view after file has been successfully loaded (9910fec)
  • resets window cursor when Isoflow is unmounted (5d51aab)
  • sets min width on node labels (620970e)
  • sets overflow hidden (9614b5e)
  • shows animated outline around focussed nodes (53bd3f2)
  • shows both model title and view title at bottom of screen (159f6d4)
  • stores colors as part of model (4797b22)
  • styling updates (9270924)
  • styling updates on all ui elements (4de4882)
  • updates 'read more' button styling (cfb60f3)
  • updates anchor connector schema (5d6f3d0)
  • updates connector styling (d980947)
  • updates connector styling (e21ed39)
  • updates connector width defaults (af5c060)
  • updates connector width to more sensible values (851ae21)
  • updates copy (ffef690)
  • updates copy on tooltip (d127150)
  • updates cursor styling (73d9b52)
  • updates docs (485dc4c)
  • updates documentation (1de5c9d)
  • updates documentation (52e1fc2)
  • updates drag and drop instruction copy (6cdff05)
  • updates example (d707b14)
  • updates example content (cbdcc76)
  • updates example data (1c28a47)
  • updates example data (945ec81)
  • updates example data (edf6f28)
  • updates example scene (1c6af28)
  • updates example scene (f9cc014)
  • updates examples and documentation (4da997f)
  • updates examples to start with fitToView=true (a129c17)
  • updates icon category styling (1f67c29)
  • updates icons on zoom controls (3de56fd)
  • updates image urls in docs (1e60907)
  • updates main menu options (031a90a)
  • updates meta tag on example html page (35850c4)
  • updates node connector styling (78b243c)
  • updates palette (a061f57)
  • updates readme (f5be45b)
  • updates rectangle styling (e60e16e)
  • updates roadmap on README (8992d84)
  • updates sidebar styling (c83452b)
  • updates styling (a69cbf8)
  • updates styling (fee7c2a)
  • updates styling (52ec509)
  • updates styling on node labels (d0f3cdf)
  • updates theme colours (1faeb31)
  • updates view default name (4d4a668)
  • upgrades performance on debug tools (2f9bc47)

Bug Fixes

  • add missing i18n files to public folder for GitHub Pages (606aebc)
  • adds keys to controls panel components (c1c5bd3)
  • adds keys to mapped components (6113819)
  • adds tsc to linting script (0e29ce3)
  • bug on dragging items (5c9e3e0)
  • bug with disappearing item controls (c3b72e3)
  • bug with dragging items (1d0351c)
  • bug with moving rectangles (e1515a7)
  • bumps @types/react down to v17 for compatibility (9814af2)
  • calls function correctly (f06acb6)
  • console errors (213a5d6)
  • controls container now scrolls (f20580a)
  • Correct Dockerfile FROM AS casing (a383d57)
  • correct rectangle reducer and update CI workflow with build step (2bd1318)
  • correct typo in integration section of quickstart docs (1256d30)
  • corrects CodeSandbox setup script (8548b00)
  • corrects connector width issue on zoom (555244c)
  • corrects icon filename casing (9161bbc)
  • corrects icon reference (7d5e116)
  • corrects textbox selection not displaying correctly (fe7a2ed)
  • corrects typo in error message (4bb73e2)
  • corrects value of disableInteractions (b34a2b2)
  • corrects zoom tooltips (07011f2)
  • delete connectors by ID instead of index in scene (67f0dde)
  • delete textBox and rectangle from scene when removed (32bcce5)
  • disables animations on scene layer on first render (8d98b84)
  • displays icons in sidebar (6878712)
  • enables textboxes to be selected more easily (6c3a4ce)
  • excludes docs folder from tsconfig (0d21cf1)
  • excludes node_modules from type checking (68fe053)
  • explicitly includes tag when publishing to npm (0b4b7aa)
  • failing test (d4e03b0)
  • failing tests (21b5579)
  • first tile not registering when dragging item (975ce6a)
  • fixes bug caused by missing param in function call (421bd07)
  • fixes bug with 'unable to find cloneNode' on image export (971ae23)
  • fixes bug with rectangle resizing (0731757)
  • fixes color resolving mechanic (4a67974)
  • fixes debug tools dimensions (6cdc9eb)
  • fixes export bug only referencing first view in the model (ef7c314)
  • fixes failing test (569e94f)
  • fixes image export reading non-current scene (d54b485)
  • fixes issue loading model (33658b3)
  • fixes issue when clearing the canvas (0986c52)
  • fixes issue where exported image isn't positioned correctly (b525b8a)
  • fixes issue with calculating fit-to-screen dimensions (1ad851a)
  • fixes issue with connector path not being generated correctly (4257445)
  • fixes issue with context menu not displaying correctly when zoomed out (721e78a)
  • fixes issue with fitToScreen only taking dimensions of first view (126a77f)
  • fixes issue with grid misalignment (db9f60f)
  • fixes issue with initial view not being automatically generated (533a54c)
  • fixes issue with reloading scene on window resize (8f24381)
  • fixes issue with textbox selection (9903755)
  • fixes issue with view timestamp (53a4b61)
  • fixes linting scripts in package.json (693845a)
  • fixes nodes not displaying correctly when being dragged onto canvas (3686515)
  • fixes pan mode (e384934)
  • fixes zIndex ordering among nodes (6139401)
  • forces case sensitive dir names through Git (01fdfe5)
  • handle missing items gracefully in hooks and components (ac41ed7)
  • handle orphaned connector references when deleting items (#139) (d698a1a)
  • hides label when no content to display (e2e2866)
  • highlight hamburger menu icon when main menu is open (0eb0881)
  • implements various minor fixes (7e0c18d)
  • improve item control handling in Cursor and DragItems modes (02fae75)
  • Increase nginx client_max_body_size to 10MB for larger diagrams (fb3e171)
  • issue with first group drawn not displayed (2cb9648)
  • issue with scrolling icons (68e451a)
  • issue with skipping tiles while dragging nodes (15bb5fb)
  • issues with manipulating stale groups when dragging (f0e6766)
  • Keep connector tool selected after creating a connection (64612a5)
  • label heights on nodes (fc20387)
  • linting errors (04fa3cf)
  • makes node icons dynamic (9c7e293)
  • makes onSceneChange an optional prop (bd26647)
  • malformed CI config (73c795b)
  • missing textboxes definitions in initialData (e72dd84)
  • moves zustand devtools from devDeps to deps (solves linting issue) (cd70da3)
  • nodemon not watching for file updates (dfab4c2)
  • omits git tag prefix to align with npm semver requirements (408d776)
  • omits git tag prefix to align with npm semver requirements (5251bec)
  • passes full list of connector properties (a19ea29)
  • preserve connector persistence without breaking image export (650045d)
  • prevents unnecessary rerenders (9722a62)
  • reinstates debug tools (6bf1740)
  • remove duplicate downloadFile and useEffect in ExportImageDialog (#109) (8db2710)
  • removes "fit to screen" tool (302d4b8)
  • removes autobind to fix failing tests (b050d4c)
  • removes console log (7f12fbc)
  • removes console.log (494a6a0)
  • removes old logo asset (8c63ec3)
  • removes redundant function calls (fd5258e)
  • removes redundant hook (f13d3a6)
  • removes redundant prop (0b64ffd)
  • removes references to window size, replaces with renderer size (50c7323)
  • removes sidebar on controls panel (6a152ee)
  • removes touchmove for now (6f028fa)
  • removes unnecessary import (1e95cf9)
  • removes unnecessary imports (3dbc5fc)
  • removes unnecessary param in tsconfig (8f24b09)
  • removes unrecognised svg attributes (f1b18e5)
  • removes unrecognised svg attributes (0e9eac1)
  • removes unrecognised svg stroke param (6df12e3)
  • removes unused package dependency (5f63a4d)
  • removes unused prop (d7ddb69)
  • removes unused ref (f7532c2)
  • resets item controls on drag (7adb20f)
  • resolve connector persistence issues (#110) (2733f0b), closes #103
  • Resolve pan control configuration issues (2310b85), closes #57
  • resolve webpack and TypeScript declaration file conflicts (2630d42)
  • resolves paths after typese are compiled (b2416f3)
  • returns only first item after a click on a tile (for efficiency) (b220c25)
  • reverts experimental mechanic to test efficiency gains (94fbf4b)
  • scales label height according to zoom (51f0d4f)
  • sets node focus correctly (af2d96d)
  • shows grid when in edit mode (56621f3)
  • strange cursor behaviour when zoomed out (ccf267d)
  • syncs lock file with package.json (1c8f74a)
  • tests not passing (029bcf6)
  • typings (db49988)
  • typo (fe68a69)
  • ui bug when creating scene elements (2158b5e)
  • Update Docker run command to use absolute path for volume mount (617b865)
  • updates CI config to only trigger on updated tags (b1dd426)
  • updates documentation (d35db15)
  • updates documentation link prefixes (61e03f3)
  • updates package to be compatible with others (db28d94)
  • upgrade to dom-to-image-more for better maintenance (5d6cf0e)
  • use relative path for i18n loading on GitHub Pages (2091aa0)
  • uses next/router rather than next/navigation (a638fde)
  • workaround for mobx to work correctly with modemanager (4a9d918)

Reverts

  • fix: excludes node_modules from type checking (8b5332b)
  • removes explicit definition of tag used for npm (b1bcb30)
  • Revert "Enhance ExportImageDialog performance and UX (#100)" (#101) (dbdaf02)

Documentation

  • add chinese README.md (#117) (556ef4a)
  • Add custom icon import feature to README with icon resource links (6d53f08)
  • update API documentation for initialData and renderer props (ab7f2e6)
  • Update CONTRIBUTORS.md (#89) (d6fab61)
  • Update CONTRIBUTORS.md for monorepo structure (526aeab)
  • Update encyclopedia for monorepo structure (94bf3c0)
  • Update README with comprehensive monorepo information (979c05d)

Code Refactoring

  • add title to Section in TextBoxControls (1bc1e5e)
  • applies origins of 0,0 to all scene layers (ba44af5)
  • connector functionality (b2bf329)
  • encapsulates ui menu styling in own component (bd91210)
  • implements more efficient calling of onSceneUpdate() (0306597)
  • integrates the renderer with react (773473b)
  • migrate away from paperjs [PHASE 1] (8e6995c)
  • migrate away from paperjs [PHASE 2] (4da4235)
  • minor code style updates (dba4b3b)
  • moves /tests/fixtures to /fixtures (fd8b16a)
  • moves model types to model file (3bf59ef)
  • moves state to context (ad34781)
  • moves ui elements into own component (ca91184)
  • moves Ui layer styling to parent component (d581f28)
  • propagates all naming of groups to rectangles (cdaaea4)
  • propagates renaming of rectangle tool (514dd7a)
  • refactors both connector and node labels to be single component (49c9f9b)
  • refactors connector style into a zod enum (1e950a7)
  • remove redundant setMode calls in interaction modes (fa4490f)
  • remove unnecessary vertical divider from ToolMenu (11a9f61)
  • remove unused layer ordering functionality (#118) (b5b2825)
  • removes non-useful hooks (bf96554)
  • removes size prop from menu props (ce543d5)
  • renames areaTool -> rectangleTool (8a28036)
  • renames connector name -> description (804b4f6)
  • renames initialScene -> initialData (ab5c778)
  • renames interactionsEnabled > disableInteractions (436cac1)
  • renames main menu options for better handling (84d5015)
  • renames node.position to node.tile (41e8de6)
  • renames reducers to modes in interactionManager (7275dd3)
  • revert few changes (44cd5f0)
  • simplifies dev by removing animations (for now) (cbe7249)
  • simplifies how zooming & scrolling is applied (bfce0b4)
  • simplifies interaction manager logic (cfd8a5a)
  • simplifies library exports and includes reducers as exports (e7c79f0)
  • simplifies logic inside of onMouseEvent (034a849)
  • simplifies renderer component (0cb2446)
  • unifies various ui states into single enum (6a0a398)
  • wraps item controls in UiElement component (b069219)

Don't miss a new FossFLOW release

NewReleases is sending notifications on new releases.