File size: 4,358 Bytes
15fc415
 
5ed8714
15fc415
3024ef4
 
 
 
 
 
 
 
 
 
 
 
 
15fc415
 
 
b21c96a
15fc415
 
5ed8714
15fc415
5e1122b
b21c96a
f8c3c8d
15fc415
 
5ed8714
3024ef4
 
5ed8714
3024ef4
 
 
b21c96a
f8c3c8d
3024ef4
 
5ed8714
15fc415
b21c96a
15fc415
f940001
 
108bebc
b21c96a
 
 
 
f940001
3024ef4
 
 
 
5ed8714
3024ef4
a410a57
3024ef4
5ed8714
3024ef4
 
 
5ed8714
3024ef4
15fc415
 
5ed8714
15fc415
5ed8714
15fc415
5ed8714
15fc415
 
 
5ed8714
15fc415
 
 
5ed8714
e791000
 
 
5ed8714
e791000
5ed8714
e791000
fe8f5de
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
* Websurfx

Websurfx is a lightning-fast, privacy-respecting, secure [[https://en.wikipedia.org/wiki/Metasearch_engine][meta search engine]] (pronounced as websurface or web-surface /wɛbˈsɜːrfəs/.) written in Rust. It provides a fast and secure search experience while respecting user privacy.

* Preview

** Main Page

[[file:images/main_page.png]]

** Search Page

[[file:images/search_page.png]]

** 404 Error Page

[[file:images/404_error_page.png]]

* Installation and Testing

To get started with Websurfx, clone the repository, edit the config file which is located in the =websurfx= directory and install redis server by following the instructions located [[https://redis.io/docs/getting-started/][here]] and then run the websurfx server and redis server using the following commands:

#+begin_src shell
  git clone https://github.com/neon-mmd/websurfx.git
  cd websurfx
  cargo build
  redis-server -p 8082 &
  ./target/debug/websurfx
#+end_src

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

#+begin_src shell
  git clone https://github.com/neon-mmd/websurfx.git
  cd websurfx
  git checkout rolling
  cargo build
  redis-server -p 8082 &
  ./target/debug/websurfx
#+end_src

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

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

* 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 [[https://github.com/neon-mmd/websurfx/projects?query=is%3Aopen][project board]] and the [[file:CONTRIBUTING.org][CONTRIBUTING.org]] file for guidelines and rules for making contributions.

* Testers Wanted

We are looking for willing testers to test whether the code to evade IP blocking works and is resillient enough to prevent IP blocks and banning by the upstream servers. 

* FAQ (Frequently Asked Questions)

** Why Websurfx?

The main goal of the Websurfx project is to provide a fast, secure, and privacy-focused [[https://en.wikipedia.org/wiki/Metasearch_engine][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.

* 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 [[https://youtu.be/FccdqCucVSI][video]] by Mr. Nick on how to contribute.

** Developer

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

* License

Websurfx is available under the [[file:LICENSE][AGPLv3]] license.

* Credits

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

- [[https://github.com/XFFXFF][zhou fan]]
- [[https://gitlab.com/johannesrexx][johannes rex]]
- [[https://github.com/alamin655][alamin655]]