esimkowitz / dev-widgets Goto Github PK
View Code? Open in Web Editor NEWCollection of useful conversions and widgets implemented as a portable Rust app
Home Page: https://widgets.fyi/
License: MIT License
Collection of useful conversions and widgets implemented as a portable Rust app
Home Page: https://widgets.fyi/
License: MIT License
Could potentially use something like https://github.com/rustdesk/rustdesk/tree/master/libs/scrap if I can get it to support WASM targets. That would involve something like the MediaDevices API.
It would also require being able to track the cursor outside of the bounds of the window, though I'm going to make that a separate issue as the rest of the color picker/any other sliders I add would benefit from this.
Dioxus has released 0.4.0 https://github.com/DioxusLabs/dioxus/releases/tag/v0.4.0
Most of the changes are straight-forward and already in the dev branch.
The biggest change is a complete revamp of the dioxus-router crate. I am going to need to rework/replace the WidgetEntry struct and PHF map with something that more closely resembles the new Routable trait that their router expects. I will also need to rethink how to display available widgets in the sidebar and home page.
Update the datetime converter time zone selector to be more intuitive. Right now, it is a list of all ~500 entries in the IANA time zone/locale database, provided by the chrono_tz crate. I want to improve this by allowing for filtering of time zones by area, etc.
Cards transform to a slightly larger size when hovered over, but there's a slight rasterization artifact when this happens. The fonts and icons rasterize after transforming, but the icons sometimes shift slightly when this happens.
This will require adding a file drop handler, which Tauri supports as part of the WindowBuilder, but it may not be super intuitive. We should also support the native file selector interface if possible. For now, we can just focus on getting it working for desktop, but we should plan to support the web api too.
Right now, I am using the standard Tauri window title bar, but I want to make a custom one that i can put the sidebar collapse button (#59) and the widget title inside.
Record the cursor position when it is outside the window/scope bounds so sliders don't abruptly stop moving if they go out of focus while still being tracked.
Tracking issue for:
With the new routing changes, Dioxus modifies the URL path. When refreshing the page on a browser, GitHub Pages tries to match the URL path, even though we only host the site at the root path. This is causing GitHub Pages to issue 404 errors. I want to capture that URL path and navigate to the root site, while preserving the intent (i.e. if someone's path shows they want to navigate to the QR Code generator, refreshing the page should take them back to the QR Code generator, rather than the home page)
The sidebar should have a button that can collapse it. Ideally, this should be in the title bar, though temporarily it can be inline with the home link.
I think the next set of changes I want to make are to rework the sidebar and create widget-type-specific homepages. The new router layout mechanism added a bunch of hidden pre tags to the sidebar that are causing the accordion sections to display an extra lower border that I don't like. Rather than try and address that here, I am just going to rewrite this so it's more flexible. I want to be able to click on the widget type and show a homepage with just widgets of that type. Clicking on the chevron itself should be the only thing that collapses the section. This PR adds new mod.rs files for each widget type module so I can host this sub-home-page there and reuse the layout and logic from the current global home page.
Similar to how things work in OG DevToys, show a field containing whether it is daylight savings, offset from UTC, offset from local time, etc.
Add a find/replace dialog to the TextAreaForm component
I want to get something between the version in DevToysMac and DevToys. I want a text field where a timestamp can be entered in pretty print and parsed. I also want to have a calendar/date selector, a dropdown to select the time zone to convert the timestamp to, and a field to paste in a Unix timestamp.
Right now the increment/decrement spinner buttons are small and don't match the rest of the styling
Looking into it, these are webkit-specific spinners. I may disable the spinners and make some form hover buttons that appear onfocus
Marking as high priority as it will block cross platform support
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.