Frequently Asked Questions (v2.0)
# What’s new in Zether v2.0?
The v2.0 contract features major enhancements in on-chain functionality and data structuring, all powered by a single smart contract written in Solidity and deployed on Zether’s own decentralized PoW blockchain:
- ✅ Reposts: Share any post (including your own) with an optional reposter note.
- ✅ Editing: Edit your posts, reposts, and comments even after publishing.
- ✅ Hiding: Temporarily hide your posts or comments without deleting them.
- ✅ Enhanced Profile Fields: Additional fields like “about,” “location,” plus improved nickname handling.
- ✅ User Comment History: A complete on-chain record of your comments is tracked.
Additionally, basic account data, profile details, and usage stats are stored separately for better query performance and more granular management.
# How does the platform work?
Zether is built on its own decentralized Proof-of-Work (PoW) blockchain and is powered entirely by a single smart contract. Every action—from account registration to posting, commenting, reacting, and following—is executed directly on-chain.
# Permissionless & Adminless?
There is no central authority or admin controlling the platform. Every user has equal access, and all rules are enforced by the smart contract code.
# Does it cost anything to use the platform?
Zether social platform is free to use. However, every on-chain interaction requires a gas fee paid in ZTH to secure the network and prevent spam. If you're new, visit our faucet to get some ZTH to cover gas fees.
# Why are there gas fees?
Gas fees are necessary for every transaction on the blockchain. They secure the network, incentivize miners, and ensure that every action carries a real cost.
# How do I register and set up my profile?
You create an account by calling createAccount(nickname, username)
with:
- Nickname: Your display name (cannot be empty).
- Username: Must be at least 5 characters long, alphanumeric only, and unique regardless of case. For example, if “Alice” is taken, then “alice” or “ALIcE” cannot be used.
Once registered, you can update your profile fields (about, location, website, profile/cover pictures, pinned post) using dedicated update...
functions.
# Can I change my username later?
Yes. Use changeUsername(newUsername)
to update your username. The new username must also be unique (case-insensitive), alphanumeric, and at least 5 characters long. This action requires a gas fee.
# How do I update my Profile Picture and Cover Picture?
Provide a public URL (e.g., ending in .png or .jpg) to your image. The front-end fetches the image and displays it on your profile.
# What are Reposts and how do I use them?
Reposts let you share an existing post—whether it's from another user or your own—onto your feed. Call createRepost(globalPostId, reposterContent)
to create a repost. The reposterContent
is optional and allows you to add your own commentary.
# How do I edit posts, reposts, and comments?
You can modify your on-chain content after publishing:
editPost(globalPostId, newContent)
for standard posts.editRepost(globalPostId, newReposterContent)
for reposts.editComment(globalPostId, commentId, newComment)
to update comments.
# How do I hide my content?
Use hidePost(globalPostId, true)
or hideComment(globalPostId, commentId, true)
to hide posts or comments without deleting them. The isHidden
flag is set, allowing UIs to optionally filter out hidden content.
# What additional profile fields exist now?
In addition to your nickname and username, you can store:
- About: A short bio or personal description.
- Location: Your geographical area or region.
- Website: A link to your personal or business website.
- Profile & Cover Pictures: URLs pointing to your images.
- Pinned Post: Highlight one post on your profile.
# What is User Comment History?
Zether v2.0 tracks all your comments on-chain. This complete comment history is indexed for transparency and accountability, so anyone can retrieve the record of your on-chain interactions.
# How do I react to posts or comments?
You can “like” or “dislike” posts and comments via reactToPost()
or reactToComment()
. The contract records these reactions on-chain, and you can update your reaction by calling the function again.
# What is pinning a post?
Pinning allows you to feature one of your posts at the top of your profile. Use pinPost(globalPostId)
to set or change your pinned post.
# How does following work?
Use followUser(targetAddr, true)
to follow a user and followUser(targetAddr, false)
to unfollow. The contract updates your follower and following counts on-chain.
# Why can't I see a list of all my followers directly?
The contract only stores a boolean relationship (following/not following). For large numbers of followers, storing a full list on-chain per user would be impractical. A Graph-based indexer in the future may provide off-chain queries for that data.
# What’s new in the UI?
The front-end has been completely redesigned to offer:
- ✅ A modern, responsive layout with a loader, top bar, and sidebar navigation.
- ✅ Clear message alerts that notify you of on-chain transaction statuses in real time.
- ✅ Seamless integration with the new data structure for faster queries and updates.
# How do I add Zether Network to MetaMask?
To add the Zether Network to MetaMask, follow this link.
# Do I need a Zether node or wallet?
Yes, you need a Web3 wallet (e.g., MetaMask) connected to a Zether node. Zether is powered by its own decentralized PoW blockchain.
# Is there any censorship or admin control?
No. Zether is completely adminless and not pausable. Nobody can remove or censor your content. You can hide your own posts or comments, but no central authority can delete or censor them.
# Can I run this platform without the official website?
Yes. This platform is completely decentralized, so you can simply download or clone the front-end and run it locally on your machine. Alternatively, you can set up your own Zether node with RPC enabled and connect the front-end directly to your node—ensuring that no central authority can block your access.
# What is the contract address?
Contract Address: 0xCF7cD887E1a6f39D2389cE4a961aAFe26A10B0a1
View on Explorer
# Is there a migration from v1.0 to v2.0?
v2.0 is deployed as a separate contract. Existing data from v1.0 will not automatically migrate.