Build beautiful desktop apps with flutter and rust. 🌠 (wip)

Related tags

GUI rust gui flutter
Overview

flutter-rs

Crates.io flutter version Discord chat MIT licensed

Build flutter desktop app in dart & rust.

flutter-app-template

Get Started

Install requirements

Develop

  • install the cargo flutter command

    cargo install cargo-flutter

  • create your new project from the template

    git clone https://github.com/flutter-rs/flutter-app-template

  • To develop with cli hot-reloading:

    cd flutter-app-template

    cargo flutter run

Distribute

  • To build distribution, use: cargo flutter --format appimage build --release

Contribution

To contribute to flutter-rs, please see CONTRIBUTING.

ChangeLog

CHANGELOG.

Comments
  • Hack to make X11 work

    Hack to make X11 work

    This is a lot less invasive than my previous pull requests. Feels like a hack though. I am checking against the OS which doesn't specifically block out X11, but seeing as how flutter uses X11 for linux, we shouldn't run into any issues.

    opened by j4qfrost 11
  • Add flutter-winit

    Add flutter-winit

    This works on linux wayland and kind of works on android using a simple test app.

    Things that are missing:

    • [x] window and platform handlers need to be implemented properly
    • [x] text plugin needs to be hooked up
    • [ ] https://github.com/rust-windowing/winit/pull/1328
    • [ ] https://github.com/rust-windowing/glutin/pull/1249
    • [x] app demo needs to be updated and some android specific code added
    opened by dvc94ch 10
  • build and link `libflutter_engine` statically

    build and link `libflutter_engine` statically

    Hello, Is there is any reason why we don't already build the flutter-engine and link it as a static library? it would make it easier to bundle the whole application and send it to the consumer.

    Also, I made a try to build my simple (counter) project to musl target. but it failed to compile glfw, anyway it's not related maybe I would open another issue for that.

    Here is some information about my system:

    $ uname -a
    Linux Hex 4.19.60-1-MANJARO #1 SMP PREEMPT Sun Jul 21 12:17:26 UTC 2019 x86_64 GNU/Linux
    
    $ rustc -Vv                
    rustc 1.38.0-nightly (dddb7fca0 2019-07-30)
    binary: rustc
    commit-hash: dddb7fca09dc817ba275602b950bb81a9032fb6d
    commit-date: 2019-07-30
    host: x86_64-unknown-linux-gnu
    release: 1.38.0-nightly
    LLVM version: 9.0
    
    opened by shekohex 10
  • flutter + rs on (macos) desktop

    flutter + rs on (macos) desktop

    I've been investigating flutter for the desktop for a new project. I develop on Mac, but want to develop for cross-platform.

    I was happy to see and be able to use the flutter desktop support as documented here: https://flutter.dev/desktop

    But I haven't figured out how to do flutter development in rust using flutter-rs for the desktop.

    I think the problems are related to the use of a specific flutter-engine?

    Sorry it's a bit of a vague question - but, is it possible for me to configure things to use flutter-rs, compatible with flutter master channel to get support for desktop on macos?

    opened by andrewdavidmackenzie 9
  • Use builder pattern

    Use builder pattern

    An initial step towards supporting more configuration options.

    In the future, handler will be broken down in opengl handler or something of the likes, allowing the engine to be constructed with with_gl_backend(), with_software_backend() etc.

    It also then allows for optional features to be added in the future, such as with_semantics_handler, or with_persistent_cache.

    Currently, FlutterEngine::new is going to get bloated, one solution is some sort of FlutterConfig struct for data that doesn't change, then allowing engine.config().assets()

    opened by csnewman 8
  • Make flutter engine independent of GLFW

    Make flutter engine independent of GLFW

    As a follow up to #88, I propose refactoring the library into:

    flutter-engine-sys: the ffi code flutter-engine: codec, channels, pointer events, tasks etc (i.e. wrapper around sys crate) flutter-engine-plugins: text-input etc, each plugin could be a feature flag flutter-engine-glfw: current logic around glfw rendering

    This means that the flutter-engine crate is no longer dependent on opengl etc, or glfw, and can be used as an independent library in the following manor:

    
    struct MyHandler {
    
    }
    
    impl FlutterEngineHandler for MyHandler {
        fn swap_buffers(&self) -> bool {
            unimplemented!()
        }
    
        fn make_current(&self) -> bool {
            unimplemented!()
        }
    
        fn clear_current(&self) -> bool {
            unimplemented!()
        }
    
        fn fbo_callback(&self) -> u32 {
            unimplemented!()
        }
    
        fn make_resource_current(&self) -> bool {
            unimplemented!()
        }
    
        fn gl_proc_resolver(&self, proc: *const i8) -> *mut c_void {
            unimplemented!()
        }
    
        fn wake_platform_thread(&self) {
            unimplemented!()
        }
    
        fn run_in_background(&self,  func: Box<dyn Future<Output = ()> + Send + 'static>) {
            unimplemented!()
        }
    
        fn get_texture_frame(
            &self,
            texture_id: i64,
            size: (usize, usize),
        ) -> Option<ExternalTextureFrame> {
            unimplemented!()
        }
    }
    
    // Handler is called by the engine on different threads to handle embedder specific tasks
    let handler = Arc::new(MyHandler);
    let engine = FlutterEngine::new(Arc::downgrade(&handler) as _);
    
    // Add plugins (plugins can registered before the engine starts)
    engine.add_plugin(KeyEventPlugin::default());
    
    // Start engine
    engine.run(assets_path, icu_data_path, arguments).expect("Failed to create engine");
    
    // In some sort of loop, you can call execute_platform_tasks, which will give the time you should sleep to for the next task
    let next_task_time = engine.execute_platform_tasks();
    

    If in the future flutter gets alternative renderers, such as Vulkan, we can break down the FlutterEngineHandler into multiple traits, or use a feature flag.

    TaskRunner are now an independent concept, meaning if flutter adds extra task runners in the future, the logic should be reusable.

    opened by csnewman 8
  • Better threading

    Better threading

    This PR adds a custom task runner to eliminate the deprecated call to __FlutterEngineFlushPendingTasksNow. The task runner will let glfw wait indefinitely for window events if no tasks have been posted. This improves performance by polling glfw events less often. There's also a new function available to plugins that allows tasks to be posted to the render thread. Plugins can use this function to do full OpenGL rendering to the resource window.

    I have also formatted the code and fixed some warnings.

    opened by 999eagle 6
  • Window flushes black when resizing

    Window flushes black when resizing

    I don't know if this is an issue on other platform or not, but in macOS, when you resize the window, it flush black then it render! so it's like there is no mechanism that resize the flutter content dynamically so it feel more natural.

    If you take a look to feather-apps, their application flush black less when resizing.

    That's the behavior, we suppose to get

    t-bug help wanted 
    opened by btwael 6
  • Text doesn't show up in example

    Text doesn't show up in example

    I suspect that this is a missing library, but I'm not sure which one. When I run the example app (https://github.com/gliheng/flutter-app-template) I see this:

    flutter-desktop-no-text

    Everything is there except the text. Any suggestions? I'm on Ubuntu 18.10. I installed the following dependencies to get the Python script to work:

    • libglfw3
    • cmake
    • libxrandr-dev
    • libxcb-xinerama0-dev
    • libxinerama-dev
    • libxcursor-dev
    • freeglut3-dev
    • libxi-dev
    t-bug help wanted 
    opened by glesica 6
  • Fix CursorEntered event crash

    Fix CursorEntered event crash

    This change is dependent on https://github.com/dvc94ch/winit/pull/1

    After tinkering with the app with the fix, I discovered an issue with holding down a mouse button. I will investigate further.

    opened by j4qfrost 5
  • wireguard - https://github.com/cloudflare/boringtun

    wireguard - https://github.com/cloudflare/boringtun

    I am thinking about integrating the wireguard ( boringtun) with flutter. Not sure though is flutter-rs is at a stage where it could that. The FFI bindings should allow to build a wireguard GUI in flutter and then talk directly over FFI to configure it - in theory. And then all the flutter network calls would be using wireguard.

    Pretty cool if it works.

    opened by joeblew99 5
  • Bump smallvec from 1.4.0 to 1.8.0

    Bump smallvec from 1.4.0 to 1.8.0

    Bumps smallvec from 1.4.0 to 1.8.0.

    Release notes

    Sourced from smallvec's releases.

    v1.8.0

    • Add optional support for the arbitrary crate (#275).

    v1.7.0

    • new_const and from_const constructors for creating a SmallVec in const contexts. Requires Rust 1.51 and the optional const_new feature. (#265)

    v1.6.1

    • Fix a possible buffer overflow in insert_many (#252, #254).

    v1.6.0

    • The "union" feature is now compatible with stable Rust 1.49 (#248, #247).
    • Fixed warnings when compiling with Rust 1.51 nightly (#242, #246).

    v1.5.1

    • Improve performance of push (#241).

    v1.5.0

    • Add the append method (#237).
    • Add support for more array sizes between 17 and 31 (#234).
    • Don't panic on deserialization errors (#238).

    v1.4.2

    • insert_many no longer leaks elements if the provided iterator panics (#213).
    • The unstable const_generics and specialization features are updated to work with the most recent nightly Rust toolchain (#232).
    • Internal code cleanup (#229, #231).

    v1.4.1

    • Don't allocate when the size of the element type is zero. Allocating zero bytes is undefined behavior. (#228)
    Commits
    • 0a4fdff Version 1.8.0
    • 6d0dea5 Auto merge of #275 - as-com:arbitrary-support, r=mbrubeck
    • 9bcd950 Add support for arbitrary
    • 7cbb3b1 Auto merge of #271 - saethlin:drain-aliasing-test, r=jdm
    • 0fced9d Test for drains that shift the tail, when inline
    • 218e0bb Merge pull request #270 from servo/github-actions
    • 52c50af Replace TravisCI with Github Actions.
    • 5ae217a Include the cost of shifts in insert/remove benchmarks (#268)
    • 58edc0e Version 1.7.0
    • 1e4b151 Added feature const_new which enables SmallVec::new_const() (#265)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump futures-task from 0.3.4 to 0.3.6

    Bump futures-task from 0.3.4 to 0.3.6

    Bumps futures-task from 0.3.4 to 0.3.6.

    Release notes

    Sourced from futures-task's releases.

    0.3.6

    • Fixed UB due to missing 'static on task::waker (#2206)
    • Added AsyncBufReadExt::fill_buf (#2225)
    • Added TryStreamExt::try_take_while (#2212)
    • Added is_connected_to method to mpsc::{Sender, UnboundedSender} (#2179)
    • Added is_connected_to method to oneshot::Sender (#2158)
    • Implement FusedStream for FuturesOrdered (#2205)
    • Fixed documentation links
    • Improved documentation
    • futures-test: Added track_closed method to AsyncWriteTestExt and SinkTestExt (#2159)
    • futures-test: Implemented more traits for InterleavePending (#2208)
    • futures-test: Implemented more traits for AssertUnmoved (#2208)

    0.3.5

    • Added StreamExt::flat_map.
    • Added StreamExt::ready_chunks.
    • Added *_unpin methods to SinkExt.
    • Added a cancellation() future to oneshot::Sender.
    • Added reunite method to ReadHalf and WriteHalf.
    • Added Extend implementations for Futures(Un)Ordered and SelectAll.
    • Added support for reexporting the join! and select! macros.
    • Added no_std support for the pending! and poll! macros.
    • Added Send and Sync support for AssertUnmoved.
    • Fixed a bug where Shared wasn't relinquishing control to the executor.
    • Removed the Send bound on the output of RemoteHandle.
    • Relaxed bounds on FuturesUnordered.
    • Reorganized internal tests to work under different --features.
    • Reorganized the bounds on StreamExt::forward.
    • Removed and replaced a large amount of internal unsafe.
    Changelog

    Sourced from futures-task's changelog.

    0.3.6 - 2020-10-06

    NOTE: This release has been yanked. See #2310 for details.

    • Fixed UB due to missing 'static on task::waker (#2206)
    • Added AsyncBufReadExt::fill_buf (#2225)
    • Added TryStreamExt::try_take_while (#2212)
    • Added is_connected_to method to mpsc::{Sender, UnboundedSender} (#2179)
    • Added is_connected_to method to oneshot::Sender (#2158)
    • Implement FusedStream for FuturesOrdered (#2205)
    • Fixed documentation links
    • Improved documentation
    • futures-test: Added track_closed method to AsyncWriteTestExt and SinkTestExt (#2159)
    • futures-test: Implemented more traits for InterleavePending (#2208)
    • futures-test: Implemented more traits for AssertUnmoved (#2208)

    0.3.5 - 2020-05-08

    NOTE: This release has been yanked. See #2310 for details.

    • Added StreamExt::flat_map.
    • Added StreamExt::ready_chunks.
    • Added *_unpin methods to SinkExt.
    • Added a cancellation() future to oneshot::Sender.
    • Added reunite method to ReadHalf and WriteHalf.
    • Added Extend implementations for Futures(Un)Ordered and SelectAll.
    • Added support for reexporting the join! and select! macros.
    • Added no_std support for the pending! and poll! macros.
    • Added Send and Sync support for AssertUnmoved.
    • Fixed a bug where Shared wasn't relinquishing control to the executor.
    • Removed the Send bound on the output of RemoteHandle.
    • Relaxed bounds on FuturesUnordered.
    • Reorganized internal tests to work under different --features.
    • Reorganized the bounds on StreamExt::forward.
    • Removed and replaced a large amount of internal unsafe.
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump net2 from 0.2.34 to 0.2.37

    Bump net2 from 0.2.34 to 0.2.37

    Bumps net2 from 0.2.34 to 0.2.37.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump miow from 0.2.1 to 0.2.2

    Bump miow from 0.2.1 to 0.2.2

    Bumps miow from 0.2.1 to 0.2.2.

    Commits
    • 6fd7b9c Bump version to 0.2.2
    • 550efc2 Merge branch 'fix-sockaddr-convertion-v0.2.x' into 0.2.x
    • ca8db53 Stop using from_ne_bytes to be compatible with Rust < 1.32.0
    • 3e217e3 Bump net2 dep to 0.2.36 without invalid SocketAddr convertion
    • 27b77cc Adapt to winapi 0.2
    • 2783715 Safely convert SocketAddr into raw SOCKADDR
    • f6662ef Clarify wording of license information in README.
    • See full diff in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump image from 0.22.5 to 0.23.12

    Bump image from 0.22.5 to 0.23.12

    Bumps image from 0.22.5 to 0.23.12.

    Changelog

    Sourced from image's changelog.

    Version 0.23.12

    • Fix a soundness issue affecting the impls of Pixel::from_slice_mut. This would previously reborrow the mutable input reference as a shared one but then proceed to construct the mutable result reference from it. While UB according to Rust's memory model, we're fairly certain that no miscompilation can happen with the LLVM codegen in practice. See 5cbe1e6767d11aff3f14c7ad69a06b04e8d583c7 for more details.

    • Fix imageops::blur panicking when sigma = 0.0. It now defaults to 1.0 as all negative values.

    • Fix re-exporting png::{CompressionType, FilterType} to maintain SemVer compatibility with the 0.23 releases.

    • Add ImageFormat::from_extension

    • Add copyless DynamicImage to byte slice/vec conversion.

    • Add bit-depth specific into_ and to_ DynamicImage conversion methods.

    Version 0.23.11

    • The NeuQuant implementation is now supplied by color_quant. Use of the type defined by this library is discouraged.
    • The jpeg decoder can now downscale images that are decoded by 1,2,4,8.
    • Optimized the jpeg encoding ~5-15%.
    • Deprecated the clamp function. Use num-traits instead.
    • The ICO decoder now accepts an empty mask.
    • Fixed an overflow in ICO mask decoding potentially leading to panic.
    • Added ImageOutputFormat for AVIF
    • Updated tiff to 0.6 with lzw performance improvements.

    Version 0.23.10

    • Added AVIF encoding capabilities using the ravif crate. Please note that the feature targets the latest stable compiler and is not enabled by default.
    • Added ImageBuffer::as_raw to inspect the underlying container.
    • Updated gif to 0.11 with large performance improvements.

    Version 0.23.9

    • Introduced correctly capitalized aliases for some scream case types
    • Introduced imageops::{vertical_gradient, horizontal_gradient} for writing simple color gradients into an image.
    • Sped up methods iterating over Pixels, PixelsMut, etc. by using exact chunks internally. This should auto-vectorize ImageBuffer::from_pixel.
    • Adjusted Clone impls of iterators to not require a bound on the pixel.
    • Add Debug impls for iterators where the pixel's channel implements it.
    • Add comparison impls for FilterType

    Version 0.23.8

    ... (truncated)

    Commits
    • 07b0b85 Update release notes and meta data for 0.23.12
    • b99a2a9 Merge pull request #1368 from fintelia/bug-1365
    • 28ac73e Merge pull request #1362 from Mike-Neto/master
    • 229a687 Fix bug 1365
    • cd4c57a Fixes #983. blur 0.0 panic
    • 085300e Merge pull request #1361 from a1phyr/format_from_extension
    • b6507cf Add examples
    • 3843286 Make ImageFormat::from_extension take an &OsStr
    • fa37687 Add ImageFormat::from_extension
    • e0261ce Merge pull request #1358 from HeroicKatora/fix-mutability-provenance-of-pixels
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump socket2 from 0.3.12 to 0.3.19

    Bump socket2 from 0.3.12 to 0.3.19

    Bumps socket2 from 0.3.12 to 0.3.19.

    Changelog

    Sourced from socket2's changelog.

    0.4.5

    Changed

    Added

    Fixed

    0.4.4

    Fixed

    • Libc v0.2.114 fixed an issue where ip_mreqn where was not defined for Linux s390x.

    0.4.3 (yanked)

    Added

    0.4.2

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
Releases(0.3.0)
Owner
null
Experimental embedder for Flutter

NativeShell (Experimental embedder for Flutter) Features Leverages existing Flutter desktop embedder on each platform Unlike Flutter desktop embedders

NativeShell 552 Dec 31, 2022
A simple, clean, and beautiful WYSIWYG Markdown editor and content-management system

ScribeDown Current version: v0.0.1 Feature level: See the roadmap Beautiful, Clean, Writer-Oriented The goal of ScribeDown is to make Markdown the bes

Alex Dumas 4 Dec 20, 2022
Build smaller, faster, and more secure desktop applications with a web frontend.

TAURI Tauri Apps footprint: minuscule performance: ludicrous flexibility: gymnastic security: hardened Current Releases Component Descrip

Tauri 56.3k Jan 3, 2023
Sycamore - A reactive library for creating web apps in Rust and WebAssembly

Sycamore What is Sycamore? Sycamore is a modern VDOM-less web library with fine-grained reactivity. Lightning Speed: Sycamore harnesses the full power

Sycamore 1.8k Jan 5, 2023
Automatically create GUI applications from clap3 apps

Automatically create GUI applications from clap3 apps

Michał Gniadek 340 Dec 20, 2022
SixtyFPS is a toolkit to efficiently develop fluid graphical user interfaces for any display: embedded devices and desktop applications. We support multiple programming languages, such as Rust, C++ or JavaScript.

SixtyFPS is a toolkit to efficiently develop fluid graphical user interfaces for any display: embedded devices and desktop applications. We support multiple programming languages, such as Rust, C++ or JavaScript.

SixtyFPS 5.5k Jan 1, 2023
ZeroTier Desktop Tray Application and UI

ZeroTier Desktop Tray Application and User Interface This is (as of ZeroTier 1.8) the system tray application and user interface for controlling a loc

ZeroTier, Inc. 102 Dec 20, 2022
Native Maps for Web, Mobile and Desktop

mapr Native Maps for Web, Mobile and Linux A map rendering library written in Rust. Example | Book | API | Chat in Matrix Space Project State This pro

MapLibre 942 Jan 2, 2023
A powerful desktop widget app for windows, built with Vue and Tauri.

DashboardX Widgets A powerful desktop widget app for windows, built with Vue and Tauri. Still in development Currently only runs on windows (uses nati

DashboardX Widgets 3 Oct 25, 2023
Access German-language public broadcasting live streams and archives on the Linux Desktop

Deutsche Version Televido Televido (“Television” in Esperanto) lets you livestream, search, play and download media from German-language public televi

David C. 10 Nov 4, 2023
A WIP Float32 soft FPU implementation

Software-emulated FPU in Rust Use 32-bit unsigned integer to represent Float32 in IEEE-754 and do float calculation. Usage There is an operator-trait-

Inoki 20 Feb 14, 2022
Desktop GUI Framework

Azul - Desktop GUI framework WARNING: The features advertised in this README may not work yet. Azul is a free, functional, immediate mode GUI framewor

Maps4Print 5.4k Jan 1, 2023
Better GNOME Desktop Experience

Better GNOME Desktop Experience Tired of having the best feeling DE with the worst defaults? This app is for you. Transform the default GNOME look to:

Dimitar Dimitrov 3 May 10, 2022
Azul - Desktop GUI framework

Azul - Desktop GUI framework Azul is a free, functional, reactive GUI framework for Rust and C++, built using the WebRender rendering engine and a CSS

Felix Schütt 5.4k Dec 31, 2022
A desktop application wrapper for CovidValidator.app

A desktop application wrapper for CovidValidator.app Check EU Digitial Covid Certificates with ease and validate them against local or country rules.

Timo Koenig 2 Mar 15, 2022
Build GUI applications with minimal dependencies in Rust

winapi-app-windows A crate to build applications' windows in Windows using WinAPI. This would be less confusing if the operating system was called som

Lonami 5 Jul 26, 2022
Prototype for a Deno to npm package build tool.

dnt - Deno to Node Transform Prototype for a Deno to npm package build tool. What does this do? It takes a Deno module and creates an npm package for

David Sherret 573 Jan 9, 2023
Prototype for a Deno to npm package build tool.

dnt - Deno to Node Transform Prototype for a Deno to npm package build tool. What does this do? It takes a Deno module and creates an npm package for

Deno Land 570 Dec 28, 2022
Deno is a simple, modern and secure runtime for JavaScript and TypeScript that uses V8 and is built in Rust.

Deno Deno is a simple, modern and secure runtime for JavaScript and TypeScript that uses V8 and is built in Rust. Features Secure by default. No file,

Derek Jones 2 Aug 13, 2022