@@ -1083,6 +1119,54 @@
Changelog
+0.4.3 (2024-09-23)
+Added
+
+- Font preview on font select
+- Persisting snap options
+- System language
+- Initial attr value for browsers
+- Portfolio
+- Default document title on save dialog
+
+Removed
+
+- Dropper error message
+- Id, title and saved from saved documents
+
+Changed
+
+- Enhance brush cursor
+- Enhance square-handle styles
+- Simplify select messages
+- Enhance attribute info on browsers
+- Persist the last history state only
+- Performance enhancements
+
+Fixed
+
+- Document migration
+- Local storage clear and relaunch
+- Mobile pointer events
+- Deleting text element when there is no content
+- Avoid creating empty paths after bool operation
+- Persist on canvas zoom
+- Mobile app height
+- Clearing temp element on deactivation
+- Multiple file load
+- Saved indicator
+- Disabled state on attributes
+- Minor icon issues
+
+0.4.1 (2024-08-30)
+Added
+
+Changed
+
0.3.0 (2024-08-29)
Added
@@ -1101,7 +1185,7 @@ 0.3.0 (2024-08-29)
"},{"location":"contribute/CONTRIBUTING/","title":"Contributing","text":"Thank you for your interest in actively participating in the project's development! Please read the Contributor Covenant Code of Conduct and the Contributor License Agreement first.
The project is written in ClojureScript - a compiler for Clojure that targets JavaScript, and is based on re-frame - a framework for building Modern Web Apps in ClojureScript. You should probably take a look at their exceptional documentation first.
"},{"location":"contribute/CONTRIBUTING/#style-guide","title":"Style Guide","text":"We try to follow the Clojure Style Guide as much as possible.
In addition to the idiomatic names, we use the following conventions
\ne -> event\nel, els -> element, elements\nattr, attrs -> attribute, attributes\nprop, props -> property, properties\nw, h -> width, height\nt -> time\nh, m, s, ms -> hours, minutes, seconds, milliseconds\n
We also use the following namespace aliases
\nv -> views\ne -> events\nh -> handlers\ns -> subs\nfx -> effects\n
If the namespace belongs to a dedicated module, we use module.v
.
"},{"location":"contribute/CONTRIBUTING/#app-structure","title":"App structure","text":"Main structure
\nsrc\\\n\u251c\u2500\u2500 renderer\\ <--- Renderer Process\n\u251c\u2500\u2500 electron\\ <--- Main Process & Preload script\n\u251c\u2500\u2500 lang\\ <--- Translation files\n\u2514\u2500\u2500 worker\\ <--- Web Workers\n
We are trying to split our code under renderer into relatively independent modules, following re-frame's app structure suggestions with some minor additions.
\nmodule\\\n\u251c\u2500\u2500 core.cljs <--- entry point\n\u251c\u2500\u2500 db.cljs <--- schema, validation\n\u251c\u2500\u2500 views.cljs <--- reagent views\n\u251c\u2500\u2500 events.cljs <--- event handlers\n\u251c\u2500\u2500 subs.cljs <--- subscription handlers\n\u251c\u2500\u2500 handlers.cljs <--- helper functions for db transformations\n\u251c\u2500\u2500 effects.cljs <--- effect handlers\n\u251c\u2500\u2500 styles.css <--- styles\n\u2514\u2500\u2500 README.md <--- documentation\n
"},{"location":"contribute/CONTRIBUTING/#re-frame-recommendations","title":"Re-frame recommendations","text":"Avoid chaining events to create new ones. Always prefer composing pure functions that directly transform the db. That is the whole purpose of handlers
namespace.
Use interceptors sparingly. Although they look (and probably are) ingenious, it is hard to write and reason with them. Doing things explicitly, is usually easier to grasp and maintain.
Always use auto-qualified keywords (e.g. ::copy
) for subscriptions, events and effects. You can use as-alias
to require those namespaces without evaluating the registrations multiple times.
"},{"location":"contribute/CONTRIBUTING/#spec","title":"Spec","text":"We use malli to describe the shape of our app db and selectively validate incoming data (e.g. file loading). We also use this spec to generate default values. You can optionally enable full db validation on dev mode (see renderer.dev
namespace).
Function inline schemas are used selectively on critical namespaces, like renderer.utils.bounds
. Instrumentation is enabled by default on dev environment only.
"},{"location":"contribute/CONTRIBUTING/#useful-development-shortcuts","title":"Useful development shortcuts","text":"Ctrl+Shift+I Toggle devtools\nCtrl+Shift+X Toggle 10x\nCtrl+R Reload app\n
"},{"location":"contribute/cla/","title":"Contributor License Agreement","text":"This Contributor License Agreement (\u201cCLA\u201d) applies to any contribution that you make to any product or project managed by us (the \u201cproject\u201d), and sets out the intellectual property rights you grant to us in the contributed materials. The term \u201cus\u201d shall mean Konstantinos Kaloutas. The term \u201cyou\u201d shall mean the person or entity identified below. If you agree to be bound by these terms, fill in the information requested below and sign the CLA where indicated below. Read this agreement carefully before signing. These terms and conditions constitute a binding legal agreement.
- The term 'contribution' or \u2018contributed materials\u2019 means any source code, object code, patch, tool, sample, graphic, specification, manual, documentation, or any other material posted or submitted by you to the project.
- With respect to any worldwide copyrights, or copyright applications and registrations, in your contribution:
- you hereby assign to us joint ownership, and to the extent that such assignment is or becomes invalid, ineffective or unenforceable, you hereby grant to us a perpetual, irrevocable, non-exclusive, worldwide, no-charge, royalty-free, unrestricted license to exercise all rights under those copyrights. This includes, at our option, the right to sublicense these same rights to third parties through multiple levels of sublicensees or other licensing arrangements;
- you agree that each of us can do all things in relation to your contribution as if each of us were the sole owners, and if one of us makes a derivative work of your contribution, the one who makes the derivative work (or has it made) will be the sole owner of that derivative work;
- you agree that you will not assert any moral rights in your contribution against us, our licensees or transferees;
- you agree that we may register a copyright in your contribution and exercise all ownership rights associated with it; and
- you agree that neither of us has any duty to consult with, obtain the consent of, pay or render an accounting to the other for any use or distribution of your contribution.
- With respect to any patents you own, or that you can license without payment to any third party, you hereby grant to us a perpetual, irrevocable, non-exclusive, worldwide, no-charge, royalty-free license to:
- make, have made, use, sell, offer to sell, import, and otherwise transfer your contribution in whole or in part, alone or in combination with or included in any product, work or materials arising out of the project to which your contribution was submitted, and
- at our option, to sublicense these same rights to third parties through multiple levels of sublicensees or other licensing arrangements.
- Except as set out above, you keep all right, title, and interest in your contribution. The rights that you grant to us under these terms are effective on the date you first submitted a contribution to us, even if your submission took place before the date you sign these terms. Any contribution we make available under any license will also be made available under a suitable FSF (Free Software Foundation) or OSI (Open Source Initiative) approved license.
- You covenant, represent, warrant and agree that:
- each contribution that you submit is and shall be an original work of authorship and you can legally grant the rights set out in this CLA;
- to the best of your knowledge, each contribution will not violate any third party's copyrights, trademarks, patents, or other intellectual property rights; and
- each contribution shall be in compliance with U.S. export control laws and other applicable export and import laws.
You agree to notify us if you become aware of any circumstance which would make any of the foregoing representations
This document is a modified version of Oracle Contributor Agreement \u2013 version 1.7.1 Licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
"},{"location":"contribute/translate/","title":"Translate","text":"Coming soon!
"},{"location":"docs/shortcuts/","title":"Shortcuts","text":"Command Shortcut Undo CTRL + Z Redo CTRL + Y, CTRL + SHIFT + Z New document CTRL + N Toggle grid # Raise elements PAGE UP Lower element PAGE DOWN Raise element to top HOME Lower element to top END Pan to active page and set zoom to default 1 Fit active page to canvas 2 Fill active page to canvas 3 Pan MIDDLE CLICK + MOUSE MOVE Zoom in/out CTRL + SCROLL, ALT + SCROLL Zoom in = Zoom Out - Toggle element tree CTRL + T Toggle element properties CTRL + P Toggle menu CTRL + L Convert elements to path CTRL + SHIFT + P Copy elements CTRL + C Cut elements CTRL + X Paste elements CTRL + V Paste elements in place CTRL + ALT + V Paste element styles CTRL + SHIFT + V Duplicate elements CTRL + D Delete elements DEL , SHIFT + DEL , BACKSPACE Select all elements CTRL + A Deselect all elements ESC Select same type CTRL+ SHIFT + A Exclude CTRL + E Unite CTRL + U Intersect CTRL + I Subtract CTRL + S Divide CTRL + / Move elements up \u2191 Move elements down \u2193 Move elements left \u2190 Move elements right \u2192 Select tool C Edit tool E Zoom tool Z Circle tool C Rect tool R Line tool L Text tool T Fill tool F Cancel action ESC Close window ALT + F4"},{"location":"get-studio/build-from-source/","title":"Build from source","text":"git clone https://github.com/repath-project/repath-studio.git\n
cd studio\n
npm install && npm run build\n
npm run dist\n
"},{"location":"get-studio/download/","title":"Download","text":"Warning
This project is in alpha stage!
Select your operating system
See all releases
"},{"location":"roadmap/changelog/","title":"Changelog","text":""},{"location":"roadmap/changelog/#030-2024-08-29","title":"0.3.0 (2024-08-29)","text":"Added
- System font select on supported browsers
- Auto center on resize
- Document templates and icons to home
- Print document
- Missing icons
- Scaling children while holding alt
- Persist documents on local storage
- Version to db and clear storage on incompatible versions
Removed
Changed
- [BREAKING]: Use :id instead of :key to avoid shadowing
- Enhance image performance
- Scrollbars
- Enhance mobile view
- Enhance tool messages
- Enhance recent view on home
- Reduce auto-pan threshold
- Update CONTRIBUTING
- Enhance error handling
Fixed
- Auto center on load
- Attributes of multiple selected elements
- Select all
- Title-bar saved indicator
- Brush bounds
- Style attribute on render to string
- Eye dropper tool
- Dynamic snap threshold based on zoom level
- Dialog title accessibility
- Set parent locked condition
- Group element bounds
"},{"location":"roadmap/changelog/#0213-2024-08-13","title":"0.2.13 (2024-08-13)","text":"Added
- Copy to system clipboard
- System theme option
- Spec validation
- Various icons
- Per tag attribute dispatch
- Font family attribute search
- Font weight attribute dropdown
Changed
- Small icons eliminated
- Minor mobile fixes
- Default panel sizes
- Document saved info
- Enhance attribute info card
Fixed
- Deleting nested selected elements
- Group index
- Fullscreen event listener
- String drop to canvas
- Dialog markup
- Recent documents order
- Image trace
- Initial value and disabled state of attribute
"},{"location":"roadmap/changelog/#0212-2024-07-31","title":"0.2.12 (2024-07-31)","text":"Added
- Multiple dialogs support
- Disabled state of menubar items
- Stroke attribute to line
Removed
- Resize handles of tree and properties panel
- Ruler lock button
Changed
- Enhance item tree arrow handling
- Enhance untitled document handling
- Enhance dialog a11y
- Enhance closing multiple unsaved documents
- Move status text to canvas
- Use setPointerCapture to maintain cursor styles
Fixed
- Brush pressure
- Window document title
- Parent element after boolean operation
- Element tree overflow
- Pointer leave on element tree
"},{"location":"roadmap/changelog/#0211-2024-06-19","title":"0.2.11 (2024-06-19)","text":"Removed
"},{"location":"roadmap/changelog/#0210-2024-06-19","title":"0.2.10 (2024-06-19)","text":"Added
Removed
- kibit development dependency
Changed
- Project name
- Simplify light theme
Fixed
- Selection on animate
- Paste in place selection
- Parent of pasted elements
- Saved document subs
- Popover arrow
- Attribute grid styles
"},{"location":"roadmap/changelog/#029-2024-04-22","title":"0.2.9 (2024-04-22)","text":"Added
- Image tracing
- Image triangulation
- SVG import
- Snap options
- Path manipulations (simplify, smooth, flatten, reverse)
- Brush circle pointer
- Open document on drop
- Various icons
- Web workers and loading indicator
Removed
- Element-to-path dependency
- Tooltip arrow
Changed
- Allow selecting svg elements on drag
- Enable chromium devtools on prod
- Enhance focus styles
- Rearrange toolbars and menus
- Move tool help text to statusbar
- Enhance a11y
- Enhance performance
Fixed
- Set-zoom event
- Render to string
- Default modal focus
- Text element creation
- Point parsing
- Prevent copying empty selection
- Recent documents on home
"},{"location":"roadmap/changelog/#028-2024-04-09","title":"0.2.8 (2024-04-09)","text":"Added
- Snapping to points
- Image drop
- Export for browsers
- Open and download file for legacy browsers
- Multi-select on file open
Changed
- File association
- Enhanced error notifications and dialogs
- Replaced shortcuts with command dialog
- Remove ctrl from multiselect
Fixed
- Tree item double click area
- Attribute order
- Prevent default on canvas
"},{"location":"roadmap/changelog/#027-2024-03-15","title":"0.2.7 (2024-03-15)","text":"Fixed
- Image sources
- Shortcuts
- Git version
"},{"location":"roadmap/changelog/#026-2024-03-15","title":"0.2.6 (2024-03-15)","text":"Added
- Keyboard shortcuts dialog
- About dialog
- Close and save confirmation dialog
- Command button to menubar
- Path editing (wip)
Changed
- Enhance command dialog
- Refine shortcuts
- Refactor toolbar styles
- Enhance popovers
Fixed
"},{"location":"roadmap/changelog/#025-2024-03-05","title":"0.2.5 (2024-03-05)","text":"Added
- Recent documents to home page
- close saved and containing directory actions to document menu
- Disabled state on context menu items
- Documents menu
Changed
- Rename frame events
- Enhance slider
- Enhance window controls
- Enhance file operations
Fixed
- Nil recent paths
- App icon margin
- Undo/redo dom structure
- Select content max height
- Setting parent of non-existing element
- Missing default element attrs
- Window keyboard listeners
"},{"location":"roadmap/changelog/#024-2024-03-03","title":"0.2.4 (2024-03-03)","text":"Added
- Support save/load file on supported browsers
- Recent open documents
- Pull request template
Changed
- Enhance home page
- Enhance undo/redo styles
Fixed
"},{"location":"roadmap/changelog/#023-2024-03-01","title":"0.2.3 (2024-03-01)","text":"Fixed
- Electron log
- Electron reloader
- Default panel size
"},{"location":"roadmap/changelog/#022-2024-03-01","title":"0.2.2 (2024-03-01)","text":"Added
- File save/load
- Auto reload on main changes
Changed
- Url handling
- Refactor element to path
Fixed
- History tree rendering
- Element selection
"},{"location":"roadmap/changelog/#021-2024-02-26","title":"0.2.1 (2024-02-26)","text":"Changed
Fixed
"},{"location":"roadmap/changelog/#020-2024-02-22","title":"0.2.0 (2024-02-22)","text":"Added
- Timeline module
- History tree module
- Notification module
- Error boundary component
- Pressure-sensitive brush tool
- Select similar objects
- Multi-element resize on anchor point
- Theme switch
- Persist workspace configuration
- Introduce centroid (wip)
- Translation module (wip)
Removed
- Page element
- Most google closure deps
- Fluentui dependency
Changed
- UI rewrite
- Extended refactoring
- Enhance all tools
- Enhance menubar
- Enhance user repl commands
Fixed
Too many fixes to list.
"},{"location":"roadmap/changelog/#013-2022-05-09","title":"0.1.3 (2022-05-09)","text":"Added
- deps.edn to add de-dupe dependency
- matrix chat to README.md
- new page button action
- overlay color
- element selection to document history
- history icon and button
- XML view and code icon
- double-click multimethod
- select drag-end default case
- shape functions to user namespace
- edit multimethod and state
- select-box component
- multi-element scaling support
Changed
- history select background
- xml and history moved under documents
- package upgrades
- page element and render to string method
- radius calculation
- attribute module refactoring
- dropper tool refactoring
- rotate, history, ungroup icons
- cancel event enhanced
- maintain default state on zoom, pan, ruler
- banner image
- bound operations refactoring
- scale multimethod
- move state renamed
- zoom tool enhanced
Removed
- selected method to fix a build error
- mouse over canvas flag
- xml-formatter dependency
- mouse click simulation from canvas
Fixed
- default background value of page
- render to string method
- update codemirror on value change
- export to svg
- bounds and size visibility
- align method
- select tool
"},{"location":"roadmap/changelog/#012-2022-04-09","title":"0.1.2 (2022-04-09)","text":"Added
- out of canvas mouse tracking and and auto-panning
- active document interceptor
- clj-holmes.yml
- CONTRIBUTING.md
- help function to user namespace
- animation icons
Changed
- events and subs
- bcd svg spec
- bounds multimethod
- upgrade electron
- drag-end method of select tool
- move multimethod renamed to translate
- transform method simplified
- README.md
Fixed
"},{"location":"roadmap/changelog/#011-2022-03-19","title":"0.1.1 (2022-03-19)","text":"Added
- document title to app header
- paste in position
- multiple commands to user namespace
- right click check
- ungroup event
- ruler tool
- fill keyboard shortcut
- keyboard shortcuts for multiple tools
- dropper tool
Removed
- reagent and re-frame from bootstrap entries
- re-frame events from repl completions
- path button
Changed
- import/export buttons disabled
- hide browser compatibility data
- mouse event simplified
- button styles
- dropper tool
- image tool
- packages upgraded
Fixed
- monospace font
- drag page method
- delete and ungroup methods
- shorcuts order
- no accessibility filter selection
- zoom validation
"},{"location":"roadmap/changelog/#010-2022-03-6","title":"0.1.0 (2022-03-6)","text":"Added
- Initial proof of concept.
"}]}
\ No newline at end of file
+{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Studio","text":" -
History tree
Maintain all user actions and travel through time, without ever losing your undo/redo stack.
-
Interactive SHELL
Evaluate Clojure and Javascript code on the embedded REPL to generate shapes, or even extend the editor on the fly.
-
SMIL animations
Create and edit SMIL animations, an extension of SVG allowing to animating SVG elements.
-
Powered by SVG
Educational-driven exposing the specification and rendering on an SVG canvas.
-
Accessibility testing
Built-in tools that help you evaluate the accessibility of your creations.
-
Open Source
Distributed under the terms of the AGPL-3.0 license.
"},{"location":"contribute/CONTRIBUTING/","title":"Contributing","text":"Thank you for your interest in actively participating in the project's development! Please read the Contributor Covenant Code of Conduct and the Contributor License Agreement first.
The project is written in ClojureScript - a compiler for Clojure that targets JavaScript, and is based on re-frame - a framework for building Modern Web Apps in ClojureScript. You should probably take a look at their exceptional documentation first.
"},{"location":"contribute/CONTRIBUTING/#style-guide","title":"Style Guide","text":"We try to follow the Clojure Style Guide as much as possible.
An additional resource about how to name Clojure functions by Stuart Sierra.
In addition to the idiomatic names, we use the following conventions
\ne -> event\nel, els -> element, elements\nattr, attrs -> attribute, attributes\nprop, props -> property, properties\nw, h -> width, height\nt -> time\nh, m, s, ms -> hours, minutes, seconds, milliseconds\n
We also use the following namespace aliases
\nv -> views\ne -> events\nh -> handlers\ns -> subs\nfx -> effects\n
If the namespace belongs to a dedicated module, we use module.v
.
"},{"location":"contribute/CONTRIBUTING/#app-structure","title":"App structure","text":"Main structure
\nsrc\\\n\u251c\u2500\u2500 renderer\\ <--- Renderer Process\n\u251c\u2500\u2500 electron\\ <--- Main Process & Preload script\n\u251c\u2500\u2500 lang\\ <--- Translation files\n\u2514\u2500\u2500 worker\\ <--- Web Workers\n
We are trying to split our code under renderer into relatively independent modules, following re-frame's app structure suggestions with some minor additions.
\nmodule\\\n\u251c\u2500\u2500 core.cljs <--- entry point\n\u251c\u2500\u2500 db.cljs <--- schema, validation\n\u251c\u2500\u2500 views.cljs <--- reagent views\n\u251c\u2500\u2500 events.cljs <--- event handlers\n\u251c\u2500\u2500 subs.cljs <--- subscription handlers\n\u251c\u2500\u2500 handlers.cljs <--- helper functions for db transformations\n\u251c\u2500\u2500 effects.cljs <--- effect handlers\n\u251c\u2500\u2500 styles.css <--- styles\n\u2514\u2500\u2500 README.md <--- documentation\n
"},{"location":"contribute/CONTRIBUTING/#re-frame-recommendations","title":"Re-frame recommendations","text":"Avoid chaining events to create new ones. Always prefer composing pure functions that directly transform the db. That is the whole purpose of handlers
namespace.
Use interceptors sparingly. Although they look (and probably are) ingenious, it is hard to write and reason with them. Doing things explicitly, is usually easier to grasp and maintain.
Always use auto-qualified keywords (e.g. ::copy
) for subscriptions, events and effects. You can use as-alias
to require those namespaces without evaluating the registrations multiple times.
"},{"location":"contribute/CONTRIBUTING/#spec","title":"Spec","text":"We use malli to describe the shape of our app db and selectively validate incoming data (e.g. file loading). We also use this spec to generate default values. You can optionally enable full db validation on dev mode (see renderer.dev
namespace).
Function inline schemas are used selectively on critical namespaces, like renderer.utils.bounds
. Instrumentation is enabled by default on dev environment only.
"},{"location":"contribute/CONTRIBUTING/#useful-development-shortcuts","title":"Useful development shortcuts","text":"Ctrl+Shift+I Toggle devtools\nCtrl+Shift+X Toggle 10x\nCtrl+R Reload app\n
"},{"location":"contribute/cla/","title":"Contributor License Agreement","text":"This Contributor License Agreement (\u201cCLA\u201d) applies to any contribution that you make to any product or project managed by us (the \u201cproject\u201d), and sets out the intellectual property rights you grant to us in the contributed materials. The term \u201cus\u201d shall mean Konstantinos Kaloutas. The term \u201cyou\u201d shall mean the person or entity identified below. If you agree to be bound by these terms, fill in the information requested below and sign the CLA where indicated below. Read this agreement carefully before signing. These terms and conditions constitute a binding legal agreement.
- The term 'contribution' or \u2018contributed materials\u2019 means any source code, object code, patch, tool, sample, graphic, specification, manual, documentation, or any other material posted or submitted by you to the project.
- With respect to any worldwide copyrights, or copyright applications and registrations, in your contribution:
- you hereby assign to us joint ownership, and to the extent that such assignment is or becomes invalid, ineffective or unenforceable, you hereby grant to us a perpetual, irrevocable, non-exclusive, worldwide, no-charge, royalty-free, unrestricted license to exercise all rights under those copyrights. This includes, at our option, the right to sublicense these same rights to third parties through multiple levels of sublicensees or other licensing arrangements;
- you agree that each of us can do all things in relation to your contribution as if each of us were the sole owners, and if one of us makes a derivative work of your contribution, the one who makes the derivative work (or has it made) will be the sole owner of that derivative work;
- you agree that you will not assert any moral rights in your contribution against us, our licensees or transferees;
- you agree that we may register a copyright in your contribution and exercise all ownership rights associated with it; and
- you agree that neither of us has any duty to consult with, obtain the consent of, pay or render an accounting to the other for any use or distribution of your contribution.
- With respect to any patents you own, or that you can license without payment to any third party, you hereby grant to us a perpetual, irrevocable, non-exclusive, worldwide, no-charge, royalty-free license to:
- make, have made, use, sell, offer to sell, import, and otherwise transfer your contribution in whole or in part, alone or in combination with or included in any product, work or materials arising out of the project to which your contribution was submitted, and
- at our option, to sublicense these same rights to third parties through multiple levels of sublicensees or other licensing arrangements.
- Except as set out above, you keep all right, title, and interest in your contribution. The rights that you grant to us under these terms are effective on the date you first submitted a contribution to us, even if your submission took place before the date you sign these terms. Any contribution we make available under any license will also be made available under a suitable FSF (Free Software Foundation) or OSI (Open Source Initiative) approved license.
- You covenant, represent, warrant and agree that:
- each contribution that you submit is and shall be an original work of authorship and you can legally grant the rights set out in this CLA;
- to the best of your knowledge, each contribution will not violate any third party's copyrights, trademarks, patents, or other intellectual property rights; and
- each contribution shall be in compliance with U.S. export control laws and other applicable export and import laws.
You agree to notify us if you become aware of any circumstance which would make any of the foregoing representations
This document is a modified version of Oracle Contributor Agreement \u2013 version 1.7.1 Licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
"},{"location":"contribute/translate/","title":"Translate","text":"Coming soon!
"},{"location":"docs/shortcuts/","title":"Shortcuts","text":"Command Shortcut Undo CTRL + Z Redo CTRL + Y, CTRL + SHIFT + Z New document CTRL + N Toggle grid # Raise elements PAGE UP Lower element PAGE DOWN Raise element to top HOME Lower element to top END Pan to active page and set zoom to default 1 Fit active page to canvas 2 Fill active page to canvas 3 Pan MIDDLE CLICK + MOUSE MOVE Zoom in/out CTRL + SCROLL, ALT + SCROLL Zoom in = Zoom Out - Toggle element tree CTRL + T Toggle element properties CTRL + P Toggle menu CTRL + L Convert elements to path CTRL + SHIFT + P Copy elements CTRL + C Cut elements CTRL + X Paste elements CTRL + V Paste elements in place CTRL + ALT + V Paste element styles CTRL + SHIFT + V Duplicate elements CTRL + D Delete elements DEL , SHIFT + DEL , BACKSPACE Select all elements CTRL + A Deselect all elements ESC Select same type CTRL+ SHIFT + A Exclude CTRL + E Unite CTRL + U Intersect CTRL + I Subtract CTRL + S Divide CTRL + / Move elements up \u2191 Move elements down \u2193 Move elements left \u2190 Move elements right \u2192 Select tool C Edit tool E Zoom tool Z Circle tool C Rect tool R Line tool L Text tool T Fill tool F Cancel action ESC Close window ALT + F4"},{"location":"get-studio/build-from-source/","title":"Build from source","text":"git clone https://github.com/repath-project/repath-studio.git\n
cd studio\n
npm install && npm run build\n
npm run dist\n
"},{"location":"get-studio/download/","title":"Download","text":"Warning
This project is in alpha stage!
Select your operating system
See all releases
"},{"location":"roadmap/changelog/","title":"Changelog","text":""},{"location":"roadmap/changelog/#043-2024-09-23","title":"0.4.3 (2024-09-23)","text":"Added
- Font preview on font select
- Persisting snap options
- System language
- Initial attr value for browsers
- Portfolio
- Default document title on save dialog
Removed
- Dropper error message
- Id, title and saved from saved documents
Changed
- Enhance brush cursor
- Enhance square-handle styles
- Simplify select messages
- Enhance attribute info on browsers
- Persist the last history state only
- Performance enhancements
Fixed
- Document migration
- Local storage clear and relaunch
- Mobile pointer events
- Deleting text element when there is no content
- Avoid creating empty paths after bool operation
- Persist on canvas zoom
- Mobile app height
- Clearing temp element on deactivation
- Multiple file load
- Saved indicator
- Disabled state on attributes
- Minor icon issues
"},{"location":"roadmap/changelog/#041-2024-08-30","title":"0.4.1 (2024-08-30)","text":"Added
Changed
"},{"location":"roadmap/changelog/#030-2024-08-29","title":"0.3.0 (2024-08-29)","text":"Added
- System font select on supported browsers
- Auto center on resize
- Document templates and icons to home
- Print document
- Missing icons
- Scaling children while holding alt
- Persist documents on local storage
- Version to db and clear storage on incompatible versions
Removed
Changed
- Use
:id
instead of :key
to avoid shadowing - Enhance image performance
- Scrollbars
- Enhance mobile view
- Enhance tool messages
- Enhance recent view on home
- Reduce auto-pan threshold
- Update CONTRIBUTING
- Enhance error handling
Fixed
- Auto center on load
- Attributes of multiple selected elements
- Select all
- Title-bar saved indicator
- Brush bounds
- Style attribute on render to string
- Eye dropper tool
- Dynamic snap threshold based on zoom level
- Dialog title accessibility
- Set parent locked condition
- Group element bounds
"},{"location":"roadmap/changelog/#0213-2024-08-13","title":"0.2.13 (2024-08-13)","text":"Added
- Copy to system clipboard
- System theme option
- Spec validation
- Various icons
- Per tag attribute dispatch
- Font family attribute search
- Font weight attribute dropdown
Changed
- Small icons eliminated
- Minor mobile fixes
- Default panel sizes
- Document saved info
- Enhance attribute info card
Fixed
- Deleting nested selected elements
- Group index
- Fullscreen event listener
- String drop to canvas
- Dialog markup
- Recent documents order
- Image trace
- Initial value and disabled state of attribute
"},{"location":"roadmap/changelog/#0212-2024-07-31","title":"0.2.12 (2024-07-31)","text":"Added
- Multiple dialogs support
- Disabled state of menubar items
- Stroke attribute to line
Removed
- Resize handles of tree and properties panel
- Ruler lock button
Changed
- Enhance item tree arrow handling
- Enhance untitled document handling
- Enhance dialog a11y
- Enhance closing multiple unsaved documents
- Move status text to canvas
- Use setPointerCapture to maintain cursor styles
Fixed
- Brush pressure
- Window document title
- Parent element after boolean operation
- Element tree overflow
- Pointer leave on element tree
"},{"location":"roadmap/changelog/#0211-2024-06-19","title":"0.2.11 (2024-06-19)","text":"Removed
"},{"location":"roadmap/changelog/#0210-2024-06-19","title":"0.2.10 (2024-06-19)","text":"Added
Removed
- kibit development dependency
Changed
- Project name
- Simplify light theme
Fixed
- Selection on animate
- Paste in place selection
- Parent of pasted elements
- Saved document subs
- Popover arrow
- Attribute grid styles
"},{"location":"roadmap/changelog/#029-2024-04-22","title":"0.2.9 (2024-04-22)","text":"Added
- Image tracing
- Image triangulation
- SVG import
- Snap options
- Path manipulations (simplify, smooth, flatten, reverse)
- Brush circle pointer
- Open document on drop
- Various icons
- Web workers and loading indicator
Removed
- Element-to-path dependency
- Tooltip arrow
Changed
- Allow selecting svg elements on drag
- Enable chromium devtools on prod
- Enhance focus styles
- Rearrange toolbars and menus
- Move tool help text to statusbar
- Enhance a11y
- Enhance performance
Fixed
- Set-zoom event
- Render to string
- Default modal focus
- Text element creation
- Point parsing
- Prevent copying empty selection
- Recent documents on home
"},{"location":"roadmap/changelog/#028-2024-04-09","title":"0.2.8 (2024-04-09)","text":"Added
- Snapping to points
- Image drop
- Export for browsers
- Open and download file for legacy browsers
- Multi-select on file open
Changed
- File association
- Enhanced error notifications and dialogs
- Replaced shortcuts with command dialog
- Remove ctrl from multiselect
Fixed
- Tree item double click area
- Attribute order
- Prevent default on canvas
"},{"location":"roadmap/changelog/#027-2024-03-15","title":"0.2.7 (2024-03-15)","text":"Fixed
- Image sources
- Shortcuts
- Git version
"},{"location":"roadmap/changelog/#026-2024-03-15","title":"0.2.6 (2024-03-15)","text":"Added
- Keyboard shortcuts dialog
- About dialog
- Close and save confirmation dialog
- Command button to menubar
- Path editing (wip)
Changed
- Enhance command dialog
- Refine shortcuts
- Refactor toolbar styles
- Enhance popovers
Fixed
"},{"location":"roadmap/changelog/#025-2024-03-05","title":"0.2.5 (2024-03-05)","text":"Added
- Recent documents to home page
- close saved and containing directory actions to document menu
- Disabled state on context menu items
- Documents menu
Changed
- Rename frame events
- Enhance slider
- Enhance window controls
- Enhance file operations
Fixed
- Nil recent paths
- App icon margin
- Undo/redo dom structure
- Select content max height
- Setting parent of non-existing element
- Missing default element attrs
- Window keyboard listeners
"},{"location":"roadmap/changelog/#024-2024-03-03","title":"0.2.4 (2024-03-03)","text":"Added
- Support save/load file on supported browsers
- Recent open documents
- Pull request template
Changed
- Enhance home page
- Enhance undo/redo styles
Fixed
"},{"location":"roadmap/changelog/#023-2024-03-01","title":"0.2.3 (2024-03-01)","text":"Fixed
- Electron log
- Electron reloader
- Default panel size
"},{"location":"roadmap/changelog/#022-2024-03-01","title":"0.2.2 (2024-03-01)","text":"Added
- File save/load
- Auto reload on main changes
Changed
- Url handling
- Refactor element to path
Fixed
- History tree rendering
- Element selection
"},{"location":"roadmap/changelog/#021-2024-02-26","title":"0.2.1 (2024-02-26)","text":"Changed
Fixed
"},{"location":"roadmap/changelog/#020-2024-02-22","title":"0.2.0 (2024-02-22)","text":"Added
- Timeline module
- History tree module
- Notification module
- Error boundary component
- Pressure-sensitive brush tool
- Select similar objects
- Multi-element resize on anchor point
- Theme switch
- Persist workspace configuration
- Introduce centroid (wip)
- Translation module (wip)
Removed
- Page element
- Most google closure deps
- Fluentui dependency
Changed
- UI rewrite
- Extended refactoring
- Enhance all tools
- Enhance menubar
- Enhance user repl commands
Fixed
Too many fixes to list.
"},{"location":"roadmap/changelog/#013-2022-05-09","title":"0.1.3 (2022-05-09)","text":"Added
- deps.edn to add de-dupe dependency
- matrix chat to README.md
- new page button action
- overlay color
- element selection to document history
- history icon and button
- XML view and code icon
- double-click multimethod
- select drag-end default case
- shape functions to user namespace
- edit multimethod and state
- select-box component
- multi-element scaling support
Changed
- history select background
- xml and history moved under documents
- package upgrades
- page element and render to string method
- radius calculation
- attribute module refactoring
- dropper tool refactoring
- rotate, history, ungroup icons
- cancel event enhanced
- maintain default state on zoom, pan, ruler
- banner image
- bound operations refactoring
- scale multimethod
- move state renamed
- zoom tool enhanced
Removed
- selected method to fix a build error
- mouse over canvas flag
- xml-formatter dependency
- mouse click simulation from canvas
Fixed
- default background value of page
- render to string method
- update codemirror on value change
- export to svg
- bounds and size visibility
- align method
- select tool
"},{"location":"roadmap/changelog/#012-2022-04-09","title":"0.1.2 (2022-04-09)","text":"Added
- out of canvas mouse tracking and and auto-panning
- active document interceptor
- clj-holmes.yml
- CONTRIBUTING.md
- help function to user namespace
- animation icons
Changed
- events and subs
- bcd svg spec
- bounds multimethod
- upgrade electron
- drag-end method of select tool
- move multimethod renamed to translate
- transform method simplified
- README.md
Fixed
"},{"location":"roadmap/changelog/#011-2022-03-19","title":"0.1.1 (2022-03-19)","text":"Added
- document title to app header
- paste in position
- multiple commands to user namespace
- right click check
- ungroup event
- ruler tool
- fill keyboard shortcut
- keyboard shortcuts for multiple tools
- dropper tool
Removed
- reagent and re-frame from bootstrap entries
- re-frame events from repl completions
- path button
Changed
- import/export buttons disabled
- hide browser compatibility data
- mouse event simplified
- button styles
- dropper tool
- image tool
- packages upgraded
Fixed
- monospace font
- drag page method
- delete and ungroup methods
- shorcuts order
- no accessibility filter selection
- zoom validation
"},{"location":"roadmap/changelog/#010-2022-03-6","title":"0.1.0 (2022-03-6)","text":"Added
- Initial proof of concept.
"}]}
\ No newline at end of file
diff --git a/sitemap.xml b/sitemap.xml
index 03360b9..2481847 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -2,42 +2,34 @@
https://repath.studio/
- 2024-08-29
- daily
+ 2024-10-02
https://repath.studio/contribute/CONTRIBUTING/
- 2024-08-29
- daily
+ 2024-10-02
https://repath.studio/contribute/cla/
- 2024-08-29
- daily
+ 2024-10-02
https://repath.studio/contribute/translate/
- 2024-08-29
- daily
+ 2024-10-02
https://repath.studio/docs/shortcuts/
- 2024-08-29
- daily
+ 2024-10-02
https://repath.studio/get-studio/build-from-source/
- 2024-08-29
- daily
+ 2024-10-02
https://repath.studio/get-studio/download/
- 2024-08-29
- daily
+ 2024-10-02
https://repath.studio/roadmap/changelog/
- 2024-08-29
- daily
+ 2024-10-02
\ No newline at end of file
diff --git a/sitemap.xml.gz b/sitemap.xml.gz
index b8cf8db..a7225b8 100644
Binary files a/sitemap.xml.gz and b/sitemap.xml.gz differ