yew
yew copied to clipboard
Suggestion for a new slogan
I've been thinking about the docs, tone, and branding of Yew.
This issue is for my suggestion for a new slogan!
Slogan
Focus more on the user than the product.
I'm reminded of how Rust changed its slogan to be more user-focused[1].
Before:
Rust is a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety.
After:
Rust: The programming language that empowers everyone to become a systems programmer.
Since the 2018 article, the team has made some additional changes.
Today:
Rust: A language empowering everyone to build reliable and efficient software.
The slogan is now shorter and free of technical language. The result is a friendlier slogan which engages a larger audience. Rust has a great community and the slogan reflects that!
Now let's look at Yew. The current slogan:
Yew is a modern Rust framework for creating multi-threaded front-end web apps with WebAssembly.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ focuses on what Yew *is*
Yew is a modern Rust framework for creating multi-threaded front-end web apps with WebAssembly.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ technical language
Could this be better? I think so!
Inspiring Yew
I found it helpful look at some related projects and their slogans.
First up, React:
A JavaScript library for building user interfaces
^^^^^^^^^^^^^^^^^^^^^^^^ focuses on what it does for the user
A JavaScript library for building user interfaces
^^^^^^^^ fits in with `component-based`
I like React's slogan!
Other slogans:
- Angular: The modern web developer's platform
- React: A JavaScript library for building user interfaces
- Vue: The progressive JavaScript framework
- Svelte: Cybernetically enhanced web apps
WebAssembly, being such a big part of Yew, has set these goals:
- Efficient and fast
- Safe
- Open and debuggable
- Part of the open web platform
A slogan suggestion for Yew
Here it is!
Yew: Build interfaces like a systems programmer
Breaking it down:
Yew: Build interfaces like a systems programmer
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ focuses on what you can *do* with Yew
Yew: Build interfaces like a systems programmer
^^^^^ fits in with `component-based`
Yew: Build interfaces like a systems programmer
^^^^^^^^^^^^^^^^^^ - makes you think `fast`, `safe`, and *Rust*!
In making my suggestion, I wanted to:
- focus on Yew's utility to the user
- keep it Rust-y
I considered a slogan like:
Yew: Build reliable and efficient interfaces
However, I felt that while "reliable" or "safe" are suitable for describing the Rust language, they don't quite work for Yew in its current state. In fact, Yew's current README says "cutting edge"!
With this proposal. the first paragraph will inform the reader what Yew is (Rust, component-based, WASM) instead of the slogan. It does already.
Thoughts?
This is just my suggestion! What does the Yew team and the community think?
References
I love what you have raised here, thank you!!!
Maybe its a personal thing but "interfaces like a systems programmer", just screams to me that the API is going to be similar classic C++ gui libraries like imgui.
Also unlike javascript, yew being a rust library is visible in broader community than just the web developers. So having something related to wasm is truly important to have in there. User should immediately be warned that this is not a classic gui library that compiles to any target.
EDIT: i somehow did not register what is written in your issue
With this proposal. the first paragraph will inform the reader what Yew is (Rust, component-based, WASM) instead of the slogan. It does already.
So sorry my comment does not matter if we for sure focus on those things in first paragraph.
I agree that we need a better slogan. "Multi threaded" in our current slogan is also kinda misleading.
Thanks for the comments @voidpumpkin.
Thinking about it some more, "like a systems programmer" is unfamiliar to a lot of people and I'd like to move away from the suggestion. It is still proximal in that the user doesn't want to build "like a systems programmer". What they really want is what you get when you build like a systems programmer, i.e., fast and safe programs.
Is reliability a project goal of Yew?
I think I was too quick to rule out "reliable" for the slogan.
I'd like to ask the core team and community first: Is building reliable web apps a high-level goal of the Yew project?
I am in favour. I can think of exhaustive routes and serialization/deserialization as areas where Yew developers find a reliability benefit over a JS frontend developer. Not to mention the reliability benefits of being in Rust.
- If reliability is a goal, we should write more about it in the docs ;)
Iteration 2
What do you think of this? I put "reliable" in there to see how it would look.
Yew: A framework for building reliable and efficient user interfaces
And the output from sloganclippy
:
Yew: A framework for building reliable and efficient user interfaces
^^^^^^^^^^^ longer but more clear
Yew: A framework for building reliable and efficient user interfaces
^^^^^^^^^^^^^^^^^^^^^^ reminds of Rust
Yew: A framework for building reliable and efficient user interfaces
^^^^^^^^^^^^^^^ more clarity than "interfaces" alone
I would add "web applications" there. Yew isn't used to build just UIs
Whereas React calls itself a library, Vue and Angular are frameworks. I think "framework" is appropriate and informs that Yew is more comprehensive than just a "library".
I would prefer not to have "web applications" or "web apps" in the slogan because Yew can be use to make desktop apps too. I recently saw this blog post about it https://dev.to/stevepryde/create-a-desktop-app-in-rust-using-tauri-and-yew-2bhe.
To the end user, Yew is for implementing how things look, i.e., the "user interface". Just my two cents!
Agreed with "web applications" - from the linked article
Tauri essentially bundles your web app inside a desktop app using the OS-provided browser rendering engine to display your front-end.
Yew is still outputting a web application - Tauri is just bundling that into a desktop application.