cross-posted from: https://programming.dev/post/2678496

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

👁️👄👁️
link
fedilink
English
141Y

The title implied that Searx is not privacy preserving or open source, both of which it is.

neon-mmd
creator
link
fedilink
English
11Y

Sorry for the delay in reply.

Yes, it is, but I just wanted to emphasize that my project is also open source and does support privacy. If I don’t add this then it can raise some doubts whether it is open source or not and whether it is privacy respecting or not. So to make it clear, I added it :).

RT Redréovič
link
fedilink
English
241Y

I appreciate the project and would follow up on its development, it looks quite interesting, however I must make a small highlight regarding the title. The writing makes it seem as if SearX is not open source and provides ads. I think some rephrasing might make it more accurate.

neon-mmd
creator
link
fedilink
English
21Y

Sorry for the delay in reply.

Thanks for the suggestion :). Even I myself hate ads and I avoid doing so, but I just did add that just to emphasize that my project is also open source and does not support ads. Because if I don’t add this then it can raise some doubts whether it is open source or not and whether it supports ads or not. So to make it clear, I added it :).

@aksdb@feddit.de
link
fedilink
English
121Y

Replacing a python service (searxng) by one written in rust? Count me in.

I feel like your comment made a better job at selling the project than the whole post.

I read the post and I was thinking meh, bit after reading your comment I’m ready to install it to see if it can replace searXNG

@aksdb@feddit.de
link
fedilink
English
21Y

Happy to help.

neon-mmd
creator
link
fedilink
English
21Y

Sorry for the delay in reply.

Building on BastingChemina’s comment. Thanks for the help :).

Fell
link
fedilink
11Y

@aksdb @neon_arch Oh yes! I used SearXNG and it was quite slow.

neon-mmd
creator
link
fedilink
English
21Y

Sorry for the delay in reply.

Thanks aksdb you are in ;).

This looks AWESOME. I really like the way the page looks, its in Rust, and the “Hardened-with-no-scripts” option.

Peter
link
fedilink
01Y

Neat project. Following.

neon-mmd
creator
link
fedilink
English
11Y

Sorry for the delay in the reply.

Thanks for the feedback :).

@blackbarn@lemm.ee
link
fedilink
English
71Y

I would be most interested in prebuilt versioned docker images and configuration via file or env vars.

neon-mmd
creator
link
fedilink
English
31Y

Sorry for the delay in reply.

Thanks for the suggestion :). We are already having plans of supporting this in the near future.

MaggiWuerze
link
fedilink
English
51Y

Docker build fails currently. Would have liked to try it out

neon-mmd
creator
link
fedilink
English
3
edit-2
1Y

Sorry for the delay in reply.

Thanks for checking out my project. We are already working on fixing this issue, and we will fix it soon as possible as :).

Also, I would suggest following this issue. Here I explain on how to fix this issue.

Here is the link:

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

If you find any difficulties, just leave a reply on this issue. We would be glad to help :).

MaggiWuerze
link
fedilink
English
21Y

Yeah I subscribed to that issue. Hoping you can find a quick fix.

neon-mmd
creator
link
fedilink
English
3
edit-2
1Y

Yes, I have found the fix. I will publish it tomorrow morning as soon as possible, so no worries :).

Create a post

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.

Rules:

  1. Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it’s not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

  • 1 user online
  • 191 users / day
  • 419 users / week
  • 1.14K users / month
  • 3.85K users / 6 months
  • 1 subscriber
  • 3.71K Posts
  • 74.6K Comments
  • Modlog