Alpress is a self-governing publication platform based on ENS + IPFS + smart contracts. You can read more about Alpress here.
Alpress is currently in MVP stage. The MVP offers full functionality for private authors. This functionality is not final and may be changed based on DXdao feedback. The easiest way to see Alpress functionality is either to watch this video, or try Alpress MVP yourself (instructions).
The first partnership vertical in Almonit’s proposal to DXdao contains two items.
The rest of the document describes the “DAO-accounts” functionality we propose to build for DXdao.
The core of this proposal is that DAO-accounts will be managed by a list of authorized authors.
DAO proposals would be needed in two cases.
Authors from the access list can write, modify and remove articles.
There is almost no risk to the DAO meaning if an author’s account is compromised, the author is simply removed from the access list upon successful voting based on DAO proposal. The only downside can be a temporarily bad publication in the DAO blog, which would consecutively be removed by one of the other authors.
Almonit will create an AccessList contract for DAOs to manage a list of authors with authorized access to platforms. This contract is general and could be used in the future for many other purposes besides Alpress DAO account.
Below is a sketch for the AccessList contract signatures.
interface AccessList {
// Logged when granting access to a new user .
event AccessGranted(address user);
// Logged when revoking access of an existing user .
event AccessRevoked(address user);
// grants access to a user
function grantAccess(address user) external;
// revokes access to a user
function revokeAccess(address user) external;
// check if a user has access
function hasAccess(address user) external view returns (bool);
}
Opening a DAO account will be done by invoking Alpress contract. For this we add the following function to Alpress contract:
function buyDAO(string calldata name, address accessList) external payable
The function would include, in addition to the name of the account itself, also an address of an AccessList contract which manages the list of people who operate the blog.
A DAO-account for DXdao can be opened in one of two ways:
buyDAO
function or,We assume the second way would actually be preferred as it is simpler and does not contain any risk to DXdao.
DXdao can grant and revoke access using DAO proposals.
To work with the DAO blog, authors with access would need to log in to the system as “DAO authors”. Once they are logged in, the functionality is the same as for private authors’ accounts.
The login process would check if the author is on the access list of the DAO.
There are a few possibilities for UX: