A small public primitive.
Communities need a place for short public messages where the author and the editing boundary are unambiguous.
Wallvra's first version is a public message board. A post belongs to the wallet that created it. That wallet may change its current text or mark it removed. The project does not turn posting into a token, a reward scheme, or a paid subscription.
Make the authorship boundary useful. Keep the product around it honest.
A wallet, not a supplied name.
The contract assigns each post's author from the transaction caller. Users cannot pass another wallet as the author. Edits and removal check that same caller against the original author.
This proves which wallet performed an action within this contract. It does not establish a person's identity, the truth of their message, or permission to publish someone else's information. There is no administrator editing override or upgrade proxy in this version.
Publish. Edit. Remove.
Submit a message of 1–280 UTF-8 bytes. The contract stores the author, current text, removal flag, and creation timestamp, and emits a public post event.
The author may change the current text while the post is active. The same byte limit applies. Each change emits an event; old transactions are not rewritten.
The author may mark the post removed and clear its current text. Repeated removal and edits after removal are rejected. Removal does not erase chain history or third-party copies.
These entry points are nonpayable. They do not accept native-value transfers, issue tokens, approve spending, or hold assets. A configured transaction still consumes the chosen network's native gas.
Public is a lasting decision.
Messages, author addresses, timestamps, and historical edits may be inspected or copied by anyone. Do not post secrets, personal data, or content you do not have permission to make public.
The current Demo does not implement private messaging, anonymity, push notifications, a production indexer, spam filtering, or community moderation. A wallet can be compromised or lost. The contract cannot decide whether text is accurate, appropriate, or lawful.
Read the privacy and public-data note ↗Prepared locally. Not deployed.
Dedicated Solidity source, local compiler/test scripts, business assertions, a wallet interface, and an unsigned deployment preview are prepared in the same project. Local transactions have checked author restrictions, byte limits, editing, removal, and events.
These tests are not an independent security audit. No public contract address or target network is configured. The workspace clearly disables gas estimation and writes. A local draft check does not create a public post.
Deployment is its own decision.
Before deployment, the project must select and verify a compatible network and official RPC, choose a controlled signer, review parameters and source, check balance and gas, and generate a read-only preflight. A separate explicit authorization is required before signing or broadcasting.
The first contract is immutable. A future revision uses a separately reviewed new address and an explicit migration plan. It cannot silently overwrite this contract or rewrite its events. Offchain discovery or filtering may follow, but will not be presented as already shipped.
Explore the workspace ↗