Code Monkey home page Code Monkey logo

friendbank's Introduction

friendbank

A relational organizing tool developed for Ed Markey's 2020 senate re-elect. Read more about the relational organizing strategy Team Markey employed.

In The Wild!!

Local Development

Requires Docker.

$ cp .env.example .env
$ make start

App is available at localhost:5000.

You can also run make unit-test-api to run the API test suite.

Deployment

Friendbank can run anywhere that supports Docker containers, for the Markey campaign we used Heroku for it's simplicity, but all major cloud providers should have no issues hosting Friendbank.

Configure your hostname

Once you've confirmed the deployment of your app, it will not successfully launch until you include your hostname.

You may edit the campaignResult.domains array and include your hostname: src/api/db/seed.js#L309

You must then seed the production database

$ MONGODB_URL=mongodb+srv://<...> npm run seed`

with your hostname and any other customizations changes ind the seed.js file.

Friendbank requires a MongoDB deployment, we recommend MongoDB Atlas, along with a SendGrid account for transactional email, and an AWS account with an S3 bucket to host images.

Note on Heroku deployment:

By default, Heroku does not detect a Docker stack. Run heroku stack:set container in the Heroku CLI and re-deploy the application.

Note on Sengrid:

For setting up the dynamic email templates, I've copied the two templates we used on the Markey campaign.

Note on production environment variables:

When deploying Friendbank, if your campaign does not use the Blue State Digital Tools, ignore the BSD_ environment variables and set DEBUG_CRM_SIGNUP=true.

Customization

To customize the default copy or photo options, edit src/api/db/seed.js and seed the database (make seed). User accounts with admin permission can also edit copy from within the tool.

To edit the overall site branding,

# Colors, fonts, etc
src/frontend/theme.js

# Campaign Logo
src/frontend/components/Nav.js

# Images, select options, web copy
src/api/db/seed.js

# A few more spots of web copy
src/frontend/components/FormFields.js
src/frontend/utils/getCopy.js

friendbank's People

Contributors

itsjoekent avatar wallace avatar ngooge avatar

Watchers

James Cloos avatar

Forkers

ngooge

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.