0
0
mirror of https://github.com/neon-mmd/websurfx.git synced 2024-12-21 20:08:21 -05:00
Mirror of the Websurfx project https://github.com/neon-mmd/websurfx
Go to file
2023-05-09 18:53:12 +03:00
.github add security policy, config.yml for issue templates and add pull request template 2023-05-04 12:28:07 +03:00
images restructing and formating readme.md 2023-05-05 12:43:53 +03:00
public add previous and next button to navigate to different pages 2023-05-03 21:31:52 +03:00
src add support for dockerized container hosting 2023-05-09 18:53:12 +03:00
tests add code to evade ip blocking, improve pagination code and fix documentation 2023-05-02 11:58:21 +03:00
websurfx add code to evade ip blocking, improve pagination code and fix documentation 2023-05-02 11:58:21 +03:00
.dockerignore add support for dockerized container hosting 2023-05-09 18:53:12 +03:00
.gitignore initial commit 2023-04-22 14:35:07 +03:00
Cargo.lock add support for dockerized container hosting 2023-05-09 18:53:12 +03:00
Cargo.toml add code to evade ip blocking, improve pagination code and fix documentation 2023-05-02 11:58:21 +03:00
CONTRIBUTING.md change org to md format and delete goals.org 2023-05-04 22:52:39 +03:00
docker-compose.yml add support for dockerized container hosting 2023-05-09 18:53:12 +03:00
Dockerfile add support for dockerized container hosting 2023-05-09 18:53:12 +03:00
LICENSE changing license from GPLv3 to AGPLv3 2023-04-27 20:31:40 +03:00
PULL_REQUEST_TEMPLATE.md add security policy, config.yml for issue templates and add pull request template 2023-05-04 12:28:07 +03:00
README.md fix formatting issues and fix grammer 2023-05-05 12:56:13 +03:00
SECURITY.md add security policy, config.yml for issue templates and add pull request template 2023-05-04 12:28:07 +03:00

Websurfx

A modern-looking, lightning-fast, privacy-respecting, secure meta search engine (pronounced as websurface or web-surface /wɛbˈːrfəs/.) written in Rust. It provides a fast and secure search experience while respecting user privacy.



Readme | Discord | GitHub | Documentation

GitHub GitHub Repo stars GitHub forks GitHub code size in bytes GitHub issues GitHub pull requests GitHub Workflow Status

Table of Contents

Features 🌈

  • Proper NSFW blocking
  • 🎨 High level customizability with 9 colorchemes provided by default with a simple theme, also supporting creation of your custom themes and colorschemes very quickly and easily
  • 🔍 Advanced image search
  • 🔐 Fast, private and secure
  • 🆓 100% free and open source
  • 🌈 and lots more...

⬆️ Back to Top

Preview 🔭

Main Page

Search Page

404 Error Page

⬆️ Back to Top

Installation and Testing 🛠️

For full setup instructions, see: Installation

To get started with Websurfx, clone the repository, edit the config file which is located in the websurfx{.verbatim} directory and install redis server by following the instructions located here and 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
redis-server -p 8082 &
./target/debug/websurfx

If you want to use the rolling/edge branch, run the following commands instead:

git clone https://github.com/neon-mmd/websurfx.git
cd websurfx
git checkout rolling
cargo build
redis-server -p 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.

Warning

Please be aware that the project is still in the testing phase and is not ready for production use.

⬆️ Back to Top

Configuration 🔧

For full configuration instructions, see: Configuration

Websurfx is configured through the config.lua file, located at websurfx/config.lua.

⬆️ Back to Top

Theming 🎨

For full theming and customization instructions, see: Theming

Websurfx comes with several themes and colorschemes by default which you can apply and edit through the config file. Support for custom themes and colorschemes using css and develop your own unique-looking website.

⬆️ Back to Top

Multi-Language Support 🌍

Note

Currently, we do not support other languages but in future we would start accepting contributions regarding language support because we believe that language should not be a barrier for entry.

⬆️ Back to Top

System Requirements 📊

At present, we only support x86_64 architecture systems but will love to have contributions to extend to other architectures as well.

⬆️ Back to Top

FAQ (Frequently Asked Questions) 🗨️

Why Websurfx?

The main goal of the Websurfx project is to provide a fast, secure, and privacy-focused meta search engine. While there are many meta search engines available, they do not always guarantee the security of their search engine, which is essential for ensuring privacy. For example, memory vulnerabilities can leak private or sensitive information, which is never good. Websurfx is written in Rust, which guarantees memory safety and eliminates such problems. Many meta search engines also lack key features such as advanced image search, which is required by many graphic designers, content creators, and others. Websurfx aims to provide these features and others, such as proper NSFW blocking, to improve the user experience.

Why AGPLv3?

Websurfx is released under the AGPLv3 license to ensure that the source code remains open and transparent. This helps to prevent the inclusion of spyware, telemetry, or other malicious code in the project. AGPLv3 is a strong copyleft license that ensures the source code of the software remains open and available to everyone, including any modifications or improvements made to the code.

Why Rust?

Rust was chosen as the programming language for Websurfx due to its memory safety features, which can help prevent vulnerabilities and make the codebase more secure. Rust is also faster than C++, which helps to make Websurfx fast and responsive. In addition, Rust's ownership and borrowing system allows for safe concurrency and thread safety in the codebase.

⬆️ Back to Top

More Contributers Wanted 📣

We are looking for more willing contributors to help grow this project.For more information on how you can contribute, check out the project board and the CONTRIBUTING.org file for guidelines and rules for making contributions.

⬆️ Back to Top

Supporting Websurfx 💖

For full details and other ways you can help out, see: Contributing

If you're using Dashy and would like to help support its development, then that would be awesome! Contributions of any type, any size, are always very much appreciated, and we will appropriately credit you for your effort.

Several areas that we need a bit of help with at the moment are:

  • Better and more colorchemes - Help fix colorchemes and add other famous colorchemes.
  • Improve evasion code for bot detection - Help improve code related to evade ip blocking and emulate human behaviours located in everyone engine file.
  • Logo - Help create a logo for the project and website.
  • Docker Support - Help write a docker compose file for the project.
  • Submit a PR to add a new feature, fix a bug, update the docs, add a theme, widget or something else.
  • Star Websurfx on GitHub.

⬆️ Back to Top

Documentation 📘

Note

We are willing to have any contribution regarding documentation as this helps everyone using this project.

⬆️ Back to Top

Roadmap 🛣️

Coming soon!! 🙂.

⬆️ Back to Top

Contributing 🙋

Contributions are welcome from anyone. It doesn't matter who you are; you can still contribute to the project in your way.

Not a developer but still want to contribute?

Check out this video by Mr. Nick on how to contribute.

Developer

If you are a developer, have a look at the CONTRIBUTING.org document for more information.

⬆️ Back to Top

License 📜

Websurfx is available under the AGPLv3 license.

⬆️ Back to Top

Credits 🤝

We would like to thank the following people for their contributions and support:



⬆️ Back to Top




Thank you for Visiting