Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dgca/twitcaster
Automated Farcaster to Twitter cross-posting
https://github.com/dgca/twitcaster
Last synced: 7 days ago
JSON representation
Automated Farcaster to Twitter cross-posting
- Host: GitHub
- URL: https://github.com/dgca/twitcaster
- Owner: dgca
- Created: 2022-12-02T20:36:52.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2022-12-15T19:35:55.000Z (almost 2 years ago)
- Last Synced: 2024-04-14T10:31:48.076Z (7 months ago)
- Language: TypeScript
- Homepage: https://twitcaster.kewl.fun
- Size: 1.2 MB
- Stars: 1
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Twitcaster
Twitcaster is a service that lets users set up automated cross-posting from Farcaster to Twitter.
After a user authorizes Twitcaster to post on Twitter on their behalf, Twitcaster will periodically poll Farcaster to see if that user has any new casts. If new casts are found, they'll be tweeted.
## Hosting your own instance
### Prerequisites
1. Twitter Developer Account
2. Twitter project with oauth2 client id and client secret
3. Farcaster auth token (instructions on how to generate one below)
4. Node 18+ and Yarn
5. A MongoDB database### Initial setup
This application uses https://github.com/nrwl/nx to manage its separate projects, so commands will be run using `npx nx {command}`.
Note that **all commands can be run from the root folder**. I.e. you don't need to `cd` into an application to run its commands.
To get started, `yarn install` in the root directory.
### Generating a Farcaster auth token
**Note: This is not required if you already have a Farcaster auth token**
1. Create a `.env` file in the root directory
2. Set your Farcaster mnemonic as `FARCASTER_MNEMONIC`
3. Run `npx nx generate-auth-token farcaster-provider`
4. If successful, your auth token will be logged to the console. Store this value as `FARCASTER_AUTH_TOKEN` in your `.env` file### Finalizing setup
See `.env.example` for a list of additional environment variables required.
### Running the application
1. Start the API: `npx nx serve api`
2. Start the client: `npx nx serve client`
3. View the application at https://localhost:4200/