Awesome
Opencast
A fully open source Twitter flavoured Farcaster client. Originally a fork of ccrsxx/twitter-clone.
The goal of this project is to be a fully standalone Farcaster client that you can run on your own machine. It only depends on stephancill/lazy-indexer and a connection to a Farcaster Hub.
Running it yourself
Prerequisites
- Clone the repo
git clone git@github.com:stephancill/opencast.git
- Copy .env.sample, rename it to .env and fill in the values
cp .env.sample .env
- Run the Docker Compose file
docker-compose up -d
- Go to Opencast at http://localhost:3000 and log in. It will take a few moments to index your profile and might require you to refresh the page.
Development
Farcaster Indexer
This project depends on the Lazy Farcaster Indexer. Follow the instructions at https://github.com/stephancill/lazy-indexer to set up an instance.
Local
Install dependencies
yarn install
Fill in the environment variables
cp .env.dev.sample .env
Run the development server
yarn dev
Todo
- Feed
- Reverse chronological feed
- Pagination
- Number of likes, comments, and reposts
- Recasts
- Cast detail
- Number of likes, comments, and reposts
- Paginated replies
- User profiles
- Casts
- Casts with replies
- Media
- Likes
- Edit profile
- Auth
- Engagement actions
- Post creation
- Text only
- Media
- Mentions
- Embeds
- Topic
- Post deletion
- Search
- User
- Topic
- Posts
- Channels (now called Topics)
- Channel detail
- Channel discovery
- Index channels
- Fix mobile layout
- Rebrand
- Renaming (casts -> tweets, etc)
- Images
- Code
- Notifications
- Badge counter
- Notifications page
- Optimize
- DB queries
- Bandwidth
...