dimchikkk / velo Goto Github PK
View Code? Open in Web Editor NEWApp for brainstorming & sharing ideas π¦ Learning Project
License: Apache License 2.0
App for brainstorming & sharing ideas π¦ Learning Project
License: Apache License 2.0
Currently, it's possible to select only one node, let's have ability to select few nodes simultaneously, e.g to be able to move them together.
Draw heart with particles, something like this but another shape: bevy_hanabi/gradient.gif at main Β· djeedai/bevy_hanabi
We are almost there for ligatures/emoji support in velo. Let's move bevy_markdown
to use bevy_cosmic_edit
and use fonts that support ligature/emoji.
Make sure that itβs embedded in release binary
make it more modular
Allow supporting several app languages.
Similarly how background color of a note can be changed there should be a way to change a text color.
Wasm target: https://staffengineer.github.io/velo/ (with limited feature set)
Let's automate process to deploy wasm target automatically on merge to main (see readme for build commands).
Currently it's passed to every text element separately, let's have a global one
Currently it's possible to load app state via document
url param on wasm target. It's nice way to share a document but it requires some manual steps to create public gist with app state. Let's implement GitHub integration, so user can sign in/give velo permissions to create public gist with document state.
Say, by clicking "Share Document" button the following steps are performed:
Native platform supports fuzzy search feature that is used for filtering documents that contain nodes with particular text. Let's developer fuzzy search feature further and highlight found nodes if they are on viewport.
When using the rename functionality, I've noticed that it stops working properly if I keep the delete key pressed for a prolonged period of time. This behavior doesn't occur if the key is pressed singularly.
The renaming process should work properly and be able to handle the deletion of characters even if the delete key is pressed continually.
The renaming process freezes and stops working.
We use bevy_embedded_assets
to embed assets, let's not do it for wasm, so assets is requested by separate request (this is default behaviour of bevy). Bevy loading screen have to be implemented as part of this issue.
@nx2k3 idea π‘ to use running bicycle gif during loading.
Instead of silently ignore errors or crash the app (during import/export from file/url) let's have a status bar that will report the error (status) to a user.
Let's add text fuzzy search support.
As the first iteration for this feature we can just filter documents and show document only if it has node with searched text.
Support markdown syntax in rectangle. Render markdown once a user stops editing rectangle.
Features:
E.g.
A lot of ergonomics may be improved when bevy moves to cosmic-text, potentially in 0.11.
Let's make pretty UI with rounded corners for rectangles, buttons, etc.
(possibly bevyengine/bevy#3991 have to be released first)
Keys: Ctrl+C / Ctrl+V
Source: https://github.com/StaffEngineer/velo/blob/main/crates/bevy_cosmic_edit/src/lib.rs
Note: would be cool to support both native and wasm targets
Useful links:
Some icons are already material-icons, see #68 with initial integration.
We can see how it's done in https://github.com/alepez/lavagna and implement similar idea with drawing pencil on canvas.
WebGL: INVALID_OPERATION is fixed for bevy's main branch. By updating project to use main branch we can remove special treatment for arrows introduced here: #29
Note: we may need to update some plugins to use bevy's main branch if they don't updated for that.
Currently it's localised to every button system, let's have a global one
Separate issue for one of the ideas from #42
Let's use https://github.com/johanhelsing/matchbox/tree/main/bevy_matchbox and have collaborative editing
Currently https://github.com/StaffEngineer/rusticify/blob/main/assets/bg.png is used as canvas background... let's have a way to customise it... maybe have a set of canvas image patterns to choose from and to have one-colour backgrounds (see https://excalidraw.com/ for inspiration)
Note: once there is a way to change canvas background it would be good to add it to saving/loading logic, so the user can have chosen background on app starup.
Currently, velo doesn't allow to remove document if there is only one document in memory:
if app_state.docs.len() < 2 {
return;
}
On app start velo loads only one document from database to memory, so user can't remove document on app start.
One of the options to fix this: if there is only one document in memory query database and load one more document to allow deleting.
Just noting the ideas to explore... feel free to contribute your ideas here:
Currently app uses database to store app data (documents) on native platform. Prior to storing data in database it was stored in json files in the first version of the app. PR that introduced database usage: #17 and removed saving/loading data from json file. It's useful feature to have ability to just export/import document to json file to share it with a buddy. Let's have an option to export/import document from database to json file.
Let's change the logic to workaround the issue bevyengine/bevy#5732
This will allow to run application on wasm without errors.
E.g. tooltip on hover, better shortcuts
A declarative, efficient, and flexible JavaScript library for building user interfaces.
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. πππ
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google β€οΈ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.