1101
27
1102
34
1103
36

Tauri 1.0 was released in June 2022 and introduced an app toolkit for developers to build apps using HTML, CSS, and JavaScript with the security and performance of Rust. Tauri has been pivotal in redefining and asking the question: “What is an app?”

Version 1.0 launched with support for Linux, macOS, and Windows and has been updated with new features, DX improvements, and bug fixes to bring us to Tauri 1.4 that is available now.

But there’s one question the Tauri Working Group gets asked time and time again. We affectionately refer to it as “Mobile when?!?” and today we’d like to outline the path ahead of us to get to Tauri 2.0 and to answer that question.

Mastodon: https://fosstodon.org/@TauriApps/111023727923212531

1104
4
1105
34
submitted 3 years ago* (last edited 3 years ago) by neon_arch@programming.dev to c/rust@programming.dev

Introduction

Hello everybody, About 5 months ago I started building an alternative to the Searx metasearch engine called Websurfx which brings many improvements and features which lacks in Searx like speed, security, high levels of customization and lots more. Although as of now it lacks many features which will be added soon in futures release cycles but right now we have got everything stabilized and are nearing to our first release v1.0.0. So I would like to have some feedbacks on my project because they are really valuable part for this project.

In the next part I share the reason this project exists and what we have done so far, share the goal of the project and what we are planning to do in the future.

Why does it exist?

The primary purpose of the Websurfx project is to create a fast, secure, and privacy-focused metasearch engine. While there are numerous metasearch engines available, not all of them guarantee the security of their search engine, which is critical for maintaining privacy. Memory flaws, for example, can expose private or sensitive information, which is never a good thing. Also, there is the added problem of Spam, ads, and unorganic results which most engines don't have the full-proof answer to it till now. Moreover, Rust is used to write Websurfx, which ensures memory safety and removes such issues. Many metasearch engines also lack important features like advanced picture search, which is required by many graphic designers, content providers, and others. Websurfx attempts to improve the user experience by providing these and other features, such as providing custom filtering ability and Micro-apps or Quick results (like providing a calculator, currency exchanges, etc. in the search results).

Preview

Home Page

Search Page

404 Page

What Do We Provide Right Now?

  • Ad-Free Results.
  • 12 colorschemes and a simple theme by default.
  • Ability to filter content using filter lists (coming soon).
  • Speed, Privacy, and Security.

In Future Releases

We are planning to move to leptos framework, which will help us provide more privacy by providing feature based compilation which allows the user to choose between different privacy levels. Which will look something like this:

  • Default: It will use wasm and js with csr and ssr.
  • Harderned: It will use ssr only with some js
  • Harderned-with-no-scripts: It will use ssr only with no js at all.

Goals

  • Organic and Relevant Results
  • Ad-Free and Spam-Free Results
  • Advanced Image Search (providing searches based on color, size, etc.)
  • Dorking Support (in other words advanced search query syntax like using And, not and or in search queries)
  • Privacy, Security, and Speed.
  • Support for low memory devices (like you will be able to host websurfx on low memory devices like phones, tablets, etc.).
  • Quick Results and Micro-Apps (providing quick apps like calculator, and exchange in the search results).
  • AI Integration for Answering Search Queries.
  • High Level of Customizability (providing more colorschemes and themes).

Benchmarks

Well, I will not compare my benchmark to other metasearch engines and Searx, but here is the benchmark for speed.

Number of workers/users: 16
Number of searches per worker/user: 1
Total time: 75.37s
Average time per search: 4.71s
Minimum time: 2.95s
Maximum time: 9.28s

Note: This benchmark was performed on a 1 Mbps internet connection speed.

Installation

To get started, clone the repository, edit the config file, which is located in the websurfx directory, and install the Redis server by following the instructions located here. Then run the websurfx server and Redis server using the following commands.

git clone https://github.com/neon-mmd/websurfx.git
cd websurfx
cargo build -r
redis-server --port 8082 &
./target/debug/websurfx

Once you have started the server, open your preferred web browser and navigate to http://127.0.0.1:8080 to start using Websurfx.

Check out the docs for docker deployment and more installation instructions.

Call to Action: If you like the project then I would suggest leaving a star on the project as this helps us reach more people in the process.

"Show your love by starring the project"

Project Link:

https://github.com/neon-mmd/websurfx

1106
19
This Week in Rust 511 (this-week-in-rust.org)
1107
6
submitted 3 years ago* (last edited 3 years ago) by erlend_sh@lemmy.world to c/rust@programming.dev

As your application grows in features you want to make sure different flows work as expected. For isolated pieces of logic it’s very practical to use the built-in approach for tests in cargo.

In other cases you may encounter a more complex scenario, with different layers, from data input to database queries. You will expect a specific output given certain input.

The Project

Consider one of my very rencent projects Gabble, a chat solution you can host yourself.

Gabble has different layers of logic, every operation will be processed in each layer in the following order:

  1. GraphQL
  2. Services (Domain Logic)
  3. Database (PostgreSQL)
1108
7
1109
11
1110
29

For those interested in embedded Rust, the first issue of The Embedded Rustacean newsletter went live on September 1st.

The newsletter dives into the world of Embedded Rust with a curated compilation of articles, news, educational resources, and jobs, among other items. The newsletter is fit for both the experienced and the beginner. You can check out the first issue here.

The newsletter has a bi-monthly frequency. You can subscribe for regular updates by going to theembeddedrustacean.com/subscribe

1111
26
submitted 3 years ago* (last edited 3 years ago) by ozkriff@programming.dev to c/rust@programming.dev
1112
13
submitted 3 years ago* (last edited 3 years ago) by boblaw0@lemmy.world to c/rust@programming.dev
1113
-13

I'm working on a tool that aims to do two things:

  • bootstrap Lemmy communities with content from their "equivalent" subreddit

  • help people migrate away from Reddit, by setting up a bot account on Lemmy that can be later taken over by their legitimate reddit owner. The idea is that the bot account would follow the equivalent lemmy communities and "registration" could be as easy as having the reddit user sending a DM to a bot to authenticate themselves.

I'm wondering how the people here would feel about me trying out this tool by mapping /r/rust to !rust@programming.dev ? My plan would be to set up a Lemmy instance that could exclusively be the home for the bot accounts, and then I would handpick a few posts every day to get them mirrored here, comments included. I also have in the roadmap to have responses to let users on Reddit to be notified of the conversations/replies received on the Lemmy post.

My view of pros/cons:

Pros:

  • Those who are already on Lemmy but stay on Reddit because of specific, niche communities will be able to ditch Reddit entirely.
  • More content in the instance, which would help mitigate the common "I want to move to Lemmy, but the content is not there" complaints.
  • A clearer path to migration and less time discussing "where to go if we are leaving reddit?"
  • Admins who object to this can simply deferate from the mirror instance(s).

Cons:

  • If abused, Lemmy communities might start looking like they are filled with bots only. Not really my intention, this is why I am not planning to fully automate this, but also not a big issue given that admins can easily protect themselves for instances that spam too much.
  • It's a legal grey area (though there are so many repost bots out there and I don't see how anyone would try to enforce copyright claims) whose support is mostly on the hands of reddit users.
  • If people look at it as a tool to help them migrate, we can win them over. If this feels too forced, they will more likely side with Reddit and refuse to migrate.

Anyway, please let me know your thoughts.

1114
16

... might be interesting for most people

1115
11
1116
34
1117
17

Not sure what happened exactly... it was working fine and I didn't change anything in this file. It has to be related to something I did recently:

  1. Ran a migration adding a unique constraint on a table
  2. Generated two new entities of a couple very basic tables.

The handler I'm using isn't even using the new tables, so I don't know why this randomly broke. Anyone have any ideas? Or even some guidance on how to decipher that obscure error would be helpful.

1118
20
1119
30
1120
20
Rust Analyzer Changelog #197 (rust-analyzer.github.io)
1121
30
1122
53
1123
21
submitted 3 years ago by teolan@lemmy.world to c/rust@programming.dev
1124
36
1125
24
view more: ‹ prev next ›

Rust

8252 readers
30 users here now

Welcome to the Rust community! This is a place to discuss about the Rust programming language.

Wormhole

!performance@programming.dev

Credits

  • The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)

founded 3 years ago
MODERATORS