Exit.social is an application for gathering email addresses for Twitter followers. You share a link with custom message. After clicking your followers can input their email address, which you can then easily export. You can incentivize followers by payouts through ethereum (require metamask) or own incentives based on followers score.
Score is based on number of followers. More followers user has more score she gets.
You can try an app at Exit.Social
- gathering email address and ethereum address (for payouts) of your followers
- custom invite message
- affiliate link for your followers - each follower gets point for inviting new Twitter followers
- your community leaderboard - share who are your most active community members
- easy ethereum payouts(requires metamask), you can set how much is each point worth
- export to csv - compatible with Ghost.org
- Node.js
- React.js
- Styled Components
- Typescript
- Postmark - for sending verification emails
- tmux (optional - CLI start)
- VirtualBox (optional) - Vagrant boxes
- Vagrant (optional) - Vagrant boxes
- Clone the code
- Run
npm i
to prepare the environment. - Copy
server/.env.development.dist
toserver/.env.development
and add or replace all relevant properties. If you don't plan to use Vagrant box with MongoDB (server/vagrant
) don't forget to replaceDATABASE_
related properties as well. Server comes with Vagrant box for local MongoDB (so you don't have to set it up yourself). If you plan to use it, make sure VirtualBox as well as Vagrant is installed on your system. You can use*.sh
scripts inserver/vagrant
to manage the box or use included CLI for management. - Copy
view/.env.development.dist
toview/.env.development
and add or replace all relevant properties. Setup Postmark for sending verification emails. - Run
./cli.sh
as your entry point. This will run an interactive tool to help you manage the development as well as provisioning of the project.
Additionally, it is also possible to run the tool with specific arguments to start specific task without the user interaction (useful for CI).
To see the available commands run ./cli.sh help
.
To be able to use features of CLI and others, it is recommended to Enable Developer Mode and use Ubuntu Bash on Windows 10.
You can use package.json
scripts to manage the project from the root folder. Use yarn start
to run the whole project or yarn start:view
/yarn start:server
/yarn start:server:dev
to run parts of the project separately.
It is recommended to use CLI tool to create production ready packages but if you prefer yarn scripts, see package.json
.
To create production packages (either in your CI environment or locally):
- run
cli.sh build
- to build the projectVERSION={version:1.0.0} ./cli.sh package
- to package the project into/dist
directory - run
cli.sh package
- to package the project. After packaging/dist
will contain Linux binary file (twitter-exporter-server-{version}.bin
) for running the server andtwitter-exporter-view-{version}.zip
with static files for View - Copy
server/.env.production.template
to.env.production
. The file needs to be in the same directory as the binary file when running it. - Copy
/view/.env.production.template
to/view/.env.production
and add theREACT_APP_API_URL
variable into it before building the project.