Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: page title hints #371

Merged
merged 7 commits into from
Jul 26, 2023
Merged

feat: page title hints #371

merged 7 commits into from
Jul 26, 2023

Conversation

lukeromanowicz
Copy link
Contributor

Description

Resolves #334
Adds title hints to all pages

Demo

image

Checklist:

  • I have read and followed the Contributing Guide
  • My change does not require a change to the documentation.

@github-actions
Copy link

Deployed to https://pr-371-aescan.stg.aepps.com

Copy link
Collaborator

@janmichek janmichek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work! Let's tune the content a bit.

I am not really satisfied with the visual representation. The contrast is really low. I think it should be darker and bigger to compensate the font size
image

src/utils/hints/accountHints.js Outdated Show resolved Hide resolved
src/utils/hints/tokensHints.js Outdated Show resolved Hide resolved
src/utils/hints/oraclesHints.js Outdated Show resolved Hide resolved
@janmichek janmichek mentioned this pull request Jul 19, 2023
2 tasks
@lukeromanowicz
Copy link
Contributor Author

Thanks for the review @janmichek, I was told on a call with @danilosierrac to reuse the designs for hints in dashboard panel titles:
image

As you can see there isn't available any dedicated design for the page titles. Could you, please, reach out to Danilo and figure out with him what would work best here? I'm out of ideas how to make it look good

Copy link
Collaborator

@janmichek janmichek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sweet, thanks for improvements 🔥

Copy link
Collaborator

@michele-franchi michele-franchi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I left some suggestions, I would also add links to the specific protocol page for these hints. Example:
https://docs.aeternity.com/protocol/AENS/

It would be also nice to have @marc0olo ideas/review here.

@@ -1,4 +1,5 @@
export const contractsHints = {
contract: 'A self-executing program deployed in the blockchain that can be used to facilitate a wide range of business processes, exchange of value, and agreements.',
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
contract: 'A self-executing program deployed in the blockchain that can be used to facilitate a wide range of business processes, exchange of value, and agreements.',
contract: 'A program deployed on the blockchain that runs when predetermined conditions are met. Smart Contracts are written in Sophia, a typed functional programming language. ',

I would adjust it a little bit mentioning Sophia, what do you think?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good idea - fixed

@@ -1,5 +1,5 @@
export const namesHints = {
name: 'Unique identifier that may be configured to point to accounts, smart contracts or oracles.',
name: 'A unique identifier that may be configured to point to accounts, smart contracts or oracles.',
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here I think the explanation should be a little bit more complete, seems to be a bit too short to explain what a name is. In my opinion it is ok to have this in the table header but not in the title hint.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fair point. I hope the second iteration makes more sense.

I'm trying to limit the hints because on mobile it will take a significant amount of space to display the message, while there is a "Learn more" button with an infinitely more detailed description

@@ -1,4 +1,5 @@
export const transactionsHints = {
transaction: 'A record of value transfer or an operation execution that enables the participants to verify and confirm these actions on the blockchain.',
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In my opinion it seems to be a bit vague, it should be a bit more focused on aeternity's characteristics.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tried to add a little bit more to it but I find it hard to describe it well. Any proposals?

@@ -1,4 +1,5 @@
export const stateChannelsHints = {
stateChannel: 'An off-chain mechanism that allow participants to conduct multiple transactions or interactions without involving the main blockchain for each step. By reducing transaction fees and increasing transaction speed, state channels provide a scalable solution for applications requiring frequent and rapid interactions while still leveraging the security of the Aeternity blockchain.',
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
stateChannel: 'An off-chain mechanism that allow participants to conduct multiple transactions or interactions without involving the main blockchain for each step. By reducing transaction fees and increasing transaction speed, state channels provide a scalable solution for applications requiring frequent and rapid interactions while still leveraging the security of the Aeternity blockchain.',
stateChannel: 'State Channels allow the gas-free execution of smart contracts and transactions, privately and with the speed of light, while still being able to escalate on-chain in case of disagreement.',

I would use the same we have on the dashboard and I would also add a "Learn more" link to https://aeternity.com/state-channels

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added here in other places whenever there was a dedicated documentation page. The rest of the entities are described only on medium and github RFCs (at least as per my search)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this changed already? I agree with @michele-franchi here 👍

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I provided another suggestion with "A state channel" instead of "State Channels", see below

@michele-franchi
Copy link
Collaborator

I also agree that hints are barely visible and the contrast is really low. What can we do here @danilosierrac?

@janmichek
Copy link
Collaborator

I also agree that hints are barely visible and the contrast is really low. What can we do here @danilosierrac?

Let's solve it separately, so we are not blocking most of the work. I already set the issue #388

@lukeromanowicz
Copy link
Contributor Author

@michele-franchi would that be ok? ☝️

@michele-franchi
Copy link
Collaborator

@lukeromanowicz yes, makes sense

Copy link
Contributor

@marc0olo marc0olo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tried to make some things more clear.

and again I am a little bit wondering about consistency when talking about "smart contracts" or other entities 😅

I wrote everything with small letters within the sentences.

@@ -1,4 +1,5 @@
export const stateChannelsHints = {
stateChannel: 'An off-chain mechanism that allow participants to conduct multiple transactions or interactions without involving the main blockchain for each step. By reducing transaction fees and increasing transaction speed, state channels provide a scalable solution for applications requiring frequent and rapid interactions while still leveraging the security of the Aeternity blockchain.',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this changed already? I agree with @michele-franchi here 👍

@@ -1,4 +1,5 @@
export const oraclesHints = {
oracle: 'A component that connects smart contracts with real-world data. It acts as a trusted source of external information by fetching data from various sources and validating its accuracy.',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
oracle: 'A component that connects smart contracts with real-world data. It acts as a trusted source of external information by fetching data from various sources and validating its accuracy.',
oracle: 'An oracle can be queried to put off-chain real-world data from any kind of data source on the æternity blockchain for smart contracts to use on-chain. This is necessary because smart contracts running on æternity are deterministic and cannot access information stored outside the blockchain network.',

@@ -1,4 +1,5 @@
export const accountHints = {
account: 'An abstract cryptographic entity that can send and receive transactions in æternity blockchain.',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
account: 'An abstract cryptographic entity that can send and receive transactions in æternity blockchain.',
account: 'An account is an abstract cryptographic entity that can execute transactions and send or receive funds on the æternity blockchain. An account can also be converted into a so-called Generalized Account where a smart contract will be attached to the account and take over its authorization logic, thus enabling a variety of different use cases.',

@@ -1,4 +1,5 @@
export const contractsHints = {
contract: 'A program deployed on the blockchain that runs when predetermined conditions are met. Smart Contracts are written in Sophia, a typed functional programming language.',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
contract: 'A program deployed on the blockchain that runs when predetermined conditions are met. Smart Contracts are written in Sophia, a typed functional programming language.',
contract: 'A smart contract is a program that runs on the æternity blockchain. It's a collection of code (its functions) and data (its state) that resides at a specific address (contract id) on the æternity blockchain. Each smart contract has an account associated to it. Functions can be executed by any account via ContractCallTx and may change the smart contract's state. Smart contracts on the æternity blockchain are written in Sophia, a typed functional programming language.',

@@ -1,4 +1,5 @@
export const tokensHints = {
token: 'A smart contract that implements the AEX-9 Simple Fungible Token Standard. It is used to represent any asset that is fungible, tradeable and transferable.',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
token: 'A smart contract that implements the AEX-9 Simple Fungible Token Standard. It is used to represent any asset that is fungible, tradeable and transferable.',
token: 'A token is implemented via a smart contract and can represent virtually anything on æternity. The AEX-9 fungible token standard allows developers to build token applications that are interoperable with other products and services. A fungible token is divisible and interchangeable.',

@@ -1,5 +1,5 @@
export const namesHints = {
name: 'Unique identifier that may be configured to point to accounts, smart contracts or oracles.',
name: 'A unique, transferrable identifier that provides a way for users to map human-readable names to blockchain resources such as accounts, smart contracts or oracles. It expires after a fixed amount of time unless it gets extended.',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
name: 'A unique, transferrable identifier that provides a way for users to map human-readable names to blockchain resources such as accounts, smart contracts or oracles. It expires after a fixed amount of time unless it gets extended.',
name: 'The æternity naming system (AENS) is a distributed, open, and built-in naming system on the æternity blockchain. Each .chain name is a unique, transferrable identifier that provides a way for users to map human-readable names to blockchain resources such as accounts, smart contracts, oracles or state channels.',

@@ -1,4 +1,5 @@
export const transactionsHints = {
transaction: 'A record of value transfer or an operation execution that enables the participants to verify and confirm these actions on the blockchain. The purpose and the parties involved in the transactions vary depending on their type.',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
transaction: 'A record of value transfer or an operation execution that enables the participants to verify and confirm these actions on the blockchain. The purpose and the parties involved in the transactions vary depending on their type.',
transaction: 'A transaction is a cryptographically signed instruction from an account. An account will initiate a transaction to update the state of the æternity blockchain. The simplest transaction is transferring AE coins from one account to another. The purpose and the parties involved in the transactions vary depending on their type.',

@@ -1,4 +1,5 @@
export const stateChannelsHints = {
stateChannel: 'An off-chain mechanism that allow participants to conduct multiple transactions or interactions without involving the main blockchain for each step. By reducing transaction fees and increasing transaction speed, state channels provide a scalable solution for applications requiring frequent and rapid interactions while still leveraging the security of the Aeternity blockchain.',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would make it singular to be consistent with other tooltips

Suggested change
stateChannel: 'An off-chain mechanism that allow participants to conduct multiple transactions or interactions without involving the main blockchain for each step. By reducing transaction fees and increasing transaction speed, state channels provide a scalable solution for applications requiring frequent and rapid interactions while still leveraging the security of the Aeternity blockchain.',
stateChannel: 'A state channel allows the gas-free execution of smart contracts and transactions, privately and with the speed of light, while still being able to escalate on-chain in case of disagreement.',

@lukeromanowicz
Copy link
Contributor Author

lukeromanowicz commented Jul 25, 2023

Thanks Marco, very good additions. I've applied all of them

Copy link
Collaborator

@michele-franchi michele-franchi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good job 👏

@lukeromanowicz lukeromanowicz merged commit 66dbd21 into develop Jul 26, 2023
2 checks passed
@lukeromanowicz lukeromanowicz deleted the feat/page-title-hints branch July 26, 2023 08:01
@marc0olo
Copy link
Contributor

@lukeromanowicz @michele-franchi I think following titles have not been updated according to latest deployment:

  • Smart Contracts
  • Oracles
  • Account

@michele-franchi
Copy link
Collaborator

@marc0olo @lukeromanowicz ah, I was checking your suggestions thinking these were already integrated.

@lukeromanowicz
Copy link
Contributor Author

My bad, I didn't push the second commit. I'll create a second PR right away

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Show descriptions in entities pages
4 participants