Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/devpavan04/0xwriter
A decentralized blogging app that facilitates writers to write user-centric blog posts and create token-gated access to their content 📝
https://github.com/devpavan04/0xwriter
3id-connect blockchain ceramic-network dapp decentralized-identity erc20 lit-protocol polygon solidity textile-threaddb
Last synced: about 2 months ago
JSON representation
A decentralized blogging app that facilitates writers to write user-centric blog posts and create token-gated access to their content 📝
- Host: GitHub
- URL: https://github.com/devpavan04/0xwriter
- Owner: devpavan04
- Created: 2022-05-05T19:08:52.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2024-09-12T11:15:30.000Z (5 months ago)
- Last Synced: 2024-09-12T22:35:17.300Z (5 months ago)
- Topics: 3id-connect, blockchain, ceramic-network, dapp, decentralized-identity, erc20, lit-protocol, polygon, solidity, textile-threaddb
- Language: JavaScript
- Homepage: https://www.youtube.com/watch?v=ZXcJMdZ59NE
- Size: 17.3 MB
- Stars: 6
- Watchers: 3
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
A decentralized blogging app that facilitates writers to write user centric blog posts and to create token gated access to their content.
This project was submitted at [Encode x Polygon Hackathon 2022](https://www.encode.club/polygon-hackathon)
0xWriter main [contract](https://mumbai.polygonscan.com/address/0xeEDc52b142FED56c675D7157f6C7F4f91aad33b0#code) is deployed and verified on polygon mumbai testnet.
## Features
- Write blog posts that are owned only by you.
- Create, read, update and delete posts.
- Deploy an ERC20 contract to create token gated access to your blog.
- All posts are encrypted.
- Set access control condition - minimum no. of your ERC20 tokens a reader must own to decrypt your content. Setting more conditions will be supported in the future.
- Writer - can mint their ERC20 tokens, transfer them, set new token price and withdraw their contract balance.
- Reader - can mint new writer's tokens and transfer them.
- Set or update your decentralized identity's basic profile - name, description and emoji.## Demo
[Youtube](https://youtu.be/ZXcJMdZ59NE)
## Installation
Clone this project to test locally
```bash
git clone https://github.com/devpavan04/0xWriter.git
cd 0xWriter
npm install
```Also install client and middleware dependencies
```bash
cd middleware
npm install
cd ..
cd client
npm install
cd ..
```## Environment Variables
Add the following in the .env file inside `middleware` folder :
`USER_GROUP_KEY`
`USER_GROUP_SECRET`
You can get the above keys by going through [Textile Docs](https://docs.textile.io/hub/apis/#user-group-key)
Add the following in the .env file inside `client` folder :
`REACT_APP_INFURA_API_KEY`
`REACT_APP_SERVER_URL` - http://localhost:3001
`REACT_APP_CERAMIC_URL` - http://localhost:7007
## Run Locally
Start ceramic daemon
```bash
npm install -g @ceramicnetwork/cli
ceramic daemon
```Run middleware
```bash
cd middleware
npm start
```Start client
```bash
cd client
npm start
```Go to http://localhost:3000 on your browser to interact with the dapp.
## Technologies used
- [Ceramic DID DataStore](https://developers.ceramic.network/tools/glaze/did-datastore/)
- [Textile ThreadDB](https://docs.textile.io/threads/)
- [Lit Protocol](https://litprotocol.com/)
Read more on how the above technologies are used in the app [here](https://glory-barber-0dd.notion.site/0xWriter-Tech-Stack-e2e79965a4524147ac6dc079b82e3ac8)
## Built With
- [Create React App](https://create-react-app.dev/)
- [Express JS](https://expressjs.com/)
- [Geist UI](https://geist-ui.dev/en-us)
- [Remix Icons](https://remixicon.com/)
## Author
[@pavansoratur](https://github.com/devpavan04)