leptos-obfuscate

Crates.ioleptos-obfuscate
lib.rsleptos-obfuscate
version0.2.0
sourcesrc
created_at2023-12-30 21:21:54.219041
updated_at2024-02-02 16:26:47.633299
descriptionSimple email obfuscation component for Leptos
homepage
repositoryhttps://github.com/sebadob/leptos-obfuscate
max_upload_size
id1084423
size7,056
(sebadob)

documentation

README

leptos-obfuscate

This is for easy email address obfuscation to prevent bots and spammers.

Add the following to your CSS stylesheet:

span.obfuscate {
  unicode-bidi: bidi-override;
  direction: rtl;
  cursor: pointer;
}
span.obfuscate > i {
  display: none;
}
span.obfuscate > span::after {
  content: '@';
}

The component accepts an optional honeypot email address / link you can use, if you want to have a sophisticated setup and blacklist any sender that sends an E-Mail to it.

The delay_seconds can be set as well. After this timeout, when mounted inside the browser, the honeypot address will be exchanged with the real one. This means the link will not work with HTML only, but there is no good way to prevent bots without Javascript / WASM.

Then just use it like this:

let (email, _) = create_signal("mail@example.com".to_string());
view! { <ObfuscateEmail email /> }

Panics

If the given String does not contain '@'

Leptos Compatibility

Leptos v0.6

leptos-obfuscate v0.2+

Leptos v0.5

leptos-obfuscate v0.1

Commit count: 6

cargo fmt