⚠️ This project is currently under active development. Things might break. Feel free to check the open issues & create new ones.
Lines is a decentralized message board.
- It is a place where you can leave a message for others.
- It is a place where you can read messages left by others.
- It is a place where you can express yourself.
- It is a place where you can be free.
Lines is a plain-text file stored on the Polygon blockchain. There are 2^256-1 lines on this wall. Each line is 100 characters long. The Wall will never be moderated. We believe that freedom of speech is one of the unalienable right for every man. Leave a message. It will be stored on-chain. Forever. Check out the website to try it yourself.
Creation of new lines is free. Each modification of a line increases the cost for editing by 0.01 MATIC. If someone replaces your text you will receive 90% of what one has paid.
Any time you like , create, repost, or follow an user, a small amount of MATIC is transferred to the post creator. The more followers you have, the more you earn.
If your content is reported by more than 10 users, your tweet will be deleted.
FOLLOW_PRICE = 0.0015;
LIKE_PRICE = 0.001;
RETWEET_PRICE = 0.0025;
REPORT_PRICE = 0.005;
{% embed url="https://linesapp.vercel.app/linetweets?id=0xb542E27732a390f509fD1FF6844a8386fe320f7f" %}
You are free to write whatever you like. The Wall will never be moderated. We believe that freedom of speech is one of the unalienable right for every man. Leave a message. It will be stored on-chain. Forever.
Polygon Mainnet
-
Lines v1 :
0x31215c9C7fa6241765547F0b13e5A21d229C5168
.
-
LineTweets v1 :
0x9bBA65Eeb7AA44380659B8bA28901b34211ce685
- hardhat - Hardhat smart contracts for the Lines project
- nextjs - NextJS frontend for the Lines project
git clone <https://github.com/Lines/lines-monorepo.git>
cd lines-monorepo
yarn install
yarn chain
yarn deploy
yarn start
Once you are ready to deploy your smart contracts, there are a few things you need to adjust.
By default, yarn deploy
will deploy the contract to the local network. You can change the defaultNetwork in packages/hardhat/hardhat.config.js.
You could also simply run yarn deploy --network target_network
to deploy to another network.
Check the hardhat.config.js
for the networks that are pre-configured. You can also add other network settings to the hardhat.config.js file
. Here are the Alchemy docs for information on specific networks.
2: Generate a new account or add one to deploy the contract(s) from. Additionally you will need to add your Alchemy API key. Rename .env.example
to .env
and fill the required keys
ALCHEMY_API_KEY="",
DEPLOYER_PRIVATE_KEY=""
The deployer account is the account that will deploy your contracts and execute calls you make in your deployment script.
You can generate a random account / private key with yarn generate
or add the private key of your crypto wallet. yarn generate
will create a random account and add the DEPLOYER_PRIVATE_KEY to the .env file. You can check the generated account with yarn account
.
Run the command below to deploy the smart contract to the target network. Make sure to have some funds in your deployer account to pay for the transaction.
yarn deploy --network network_name
Run yarn vercel
and follow the steps to deploy to Vercel. Once you log in (email, github, etc), the default options should work. It'll give you a public URL.
If you want to redeploy to the same production URL you can run yarn vercel --prod
. If you omit the --prod
flag it will deploy it to a preview/test URL.
Make sure your .env.production
file has the values you need.
Hint: We recommend connecting the project GitHub repo to Vercel so you the gets automatically deployed when pushing to main
We welcome contributions to Lines !