All Projects → fixthestatusquo → proca

fixthestatusquo / proca

Licence: AGPL-3.0 license
Widget to transform your website into a cutting-edge campaign in 10 min. multi-lingual, privacy first.

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to proca

Whatsapp-Direct-Messaging-API
An API that opens Whatsapp application directly start a conversation based on given mobile number
Stars: ✭ 66 (+127.59%)
Mutual labels:  whatsapp
node-red-contrib-whatsappbot
Whatsapp Bot 🤖 for Node-Red
Stars: ✭ 37 (+27.59%)
Mutual labels:  whatsapp
whatsanalyze
Analyze your WhatsApp Chat in Seconds. Reveal insights & get statistics, while all data stays on your device. No chat data is sent to a server it runs only locally in your browser.
Stars: ✭ 41 (+41.38%)
Mutual labels:  whatsapp
kde-plasmoid-betterinlineclock
Your usual clock widget, just way better and on a single line!
Stars: ✭ 18 (-37.93%)
Mutual labels:  widget
nl.fokkezb.form
[UNMAINTAINED] Alloy TableView Form Widget
Stars: ✭ 43 (+48.28%)
Mutual labels:  widget
cryptocoins-desklet-cinnamon
Cryptocurrency Ticker (Desklet) for Cinnamon Desktop that displays the current price for thousands of cryptocurrencies, and their daily percent changes.
Stars: ✭ 18 (-37.93%)
Mutual labels:  widget
virgil-crypto-javascript
Virgil JavaScript Crypto Library is a high-level cryptographic library that allows you to perform all necessary operations for secure storing and transferring data and everything required to become HIPAA and GDPR compliant.
Stars: ✭ 31 (+6.9%)
Mutual labels:  gdpr
SteamTracking-GDPR
📜 Tracking Valve's GDPR related pages
Stars: ✭ 21 (-27.59%)
Mutual labels:  gdpr
digital
Public documentation and wiki for DoIT’s Digital team. Monorepo for new services.
Stars: ✭ 17 (-41.38%)
Mutual labels:  civic-tech
ACCESS-NYC-PATTERNS
ACCESS NYC Pattern library and design system documentation for https://access.nyc.gov. Maintained by @NYCOpportunity
Stars: ✭ 14 (-51.72%)
Mutual labels:  civic-tech
vux-weixin
基于vue,vux,运行在微信上,增加了 http拦截器, auth权限 , jwt认证 , storage ,目录结构灵感来源于ngx-admin
Stars: ✭ 14 (-51.72%)
Mutual labels:  whatsapp
wppconnect-server
Wppconnect Server is a ready-to-use API, just download, install, and start using, simple as that.
Stars: ✭ 290 (+900%)
Mutual labels:  whatsapp
SvgViewerWidgetTWX
Thingworx widget for runtime display and manipulation of a SVG
Stars: ✭ 13 (-55.17%)
Mutual labels:  widget
whatsapp-clone-react
Build a WhatsApp Clone with React JS and FireBase.
Stars: ✭ 38 (+31.03%)
Mutual labels:  whatsapp
vemdezapbe.be
Vem de zap bb 😏😊😂
Stars: ✭ 33 (+13.79%)
Mutual labels:  whatsapp
text-style-editor
Text style editor widget for flutter
Stars: ✭ 25 (-13.79%)
Mutual labels:  widget
Love-Calculator
Let's Calculate love with real data. Love Calculator by Mohammed Cha
Stars: ✭ 54 (+86.21%)
Mutual labels:  whatsapp
enhanced-privacy-m1
Magento 1 Enhanced Privacy extension for easier compliance with GDPR. Allows customers to delete, anonymize, or export their personal data.
Stars: ✭ 34 (+17.24%)
Mutual labels:  gdpr
flutter trianglify
Flutter library to generate beautiful triangle art views for android and ios.
Stars: ✭ 31 (+6.9%)
Mutual labels:  widget
MiniMusicView
A simple custom music play widget
Stars: ✭ 31 (+6.9%)
Mutual labels:  widget

Proca Progressive Campaigning

  • provide a state of the art campaiging tool
  • integrate with the campaign website, so no new CMS to learn
  • work with coalitions and GDPR
  • privacy first, every personal data of your supporter is encrypted with your organisation key

You want to engage your members and ask them to take an online action? Well, you won't be the first organisation, and you will soon realise that they aren't any decent looking petition tool that are easy to install and configure.

And this is what this tool solves.

Alternatively, we are providing this Campaign tool as a Service and are hosting and maintaining it for you if you prefer. It's definitely cheaper and easier if you have a one-off campaign, and cost effective if you have a more specific need or want us to provide some custom development.

Guiding principles and design

  • Focussed: this tool should do as little as possible. It doesn't have to be managing the content/layout of your campaign. You have already a prefered CMS for that, or can spin a wordpress one in no time. We provide action/petition widgets that you can embed into your site, we don't want to be yet another site you need to manage
  • Build relationship: We don't believe a petition is only a step in your campaign. Collecting their information so you can contact them later for more actions and campaigns
  • Privacy: We will always ask the people taking action to consent to their contact details being shared with your org. We will never use these contacts without their/and your consent.
  • Sharing is caring: We have seen how supporters can use social media to convince others to join. We see the sharing step as a key component to this tool
  • Integrated: with your CRM/mailing list. If your supporter consented it, it should be as simple as possible to have their contact detail into your mailing plateform. CSV download is not simple, timeconsuming and errorprone.
  • Support coalitions: A successful campaign will have multiple partners. We make it easy to aggregate the signature counts, we make it easy to have multiple widgets for each partner (with different consent)

Embeded in your existing website

Introducing a new tool is often a source of frustration for the users (new login, new interface to learn, new workflow, new bugs) and extra work for the IT team (adapt the layout). There are as well the issue of introducing a new domain/subdomain (weak SEO, potential confusion for your supporters).

Our solution? This petition tool is as transparent as possible and embed the action into one (or several) of your existing pages).

With a bit of javascript or even just html, you can control and adjust the text or layout of your widget.

The widget can also send you events to let you know what your supporters have done, and allow you to update the journey, display extra information or whaterver you want to do ;)

Full encryption mode

If the campaigner organisation provides an encryption key (based on NaCl, probably the best elliptic curve encryption solution), we store the signatures and actions encrypted. We will not be able to read them anymore. Even if the bad guys compromise the security of our server, they will not be able to read any personal data either, because the campaign organisation (having the key) is the only one that can

This simplify GDPR and other privacy compliance: we do not store any personal data, only encrypted blobs of data that we can't read.

Privacy

We are fully GDPR compliant. As part of a mandatory element of the signature form, we do ask the signatory to consent to be contacted, and record that information.

Performance

Benchmarked at > 1'000'000 signatures per hour on a 16 cores.

Technology

Front and back are clearly separated. the backend is a bunch of APIs clearly documented (so it's easier to build a different front end or switch the back end)

  • front-end: react, react-hook-form and material-ui
  • Back-end: elixir
  • api: graphql

Setup and 3 min intro

  • git clone this repository

  • yarn (or npm to install the dependencies)

  • cp .env.example .env and put your login + pwd

  • yarn pull folowed by the action page id as seen in the backend. For instance

    yarn pull 42

    This will create the configuration file for the widget with id 42.

  • edit config/42.json to adjust the steps, configure the components, change the color, whatever)

  • yarn start 42 runs a local server with the widget

  • yarn build 42 generates the widget under d/{actionpage.NAME of the widget}

  • yarn push 42 save the local config (under config) to the server

You can find more information in this config documentation

Documentation and Translation

One of the most common contribution we receive is help on the translations. We are using weblate and you are encouraged to participate, either to improve an existing language or request a new one.

We are usually following the material-ui guidelines:

  • Be concise
  • Use the present tense to describe product behavior
  • Use simple, direct language that makes content easy to understand.
  • Avoid using punctuation in places where it isn't necessary
  • Use common words that are clearly and easily understandable across all reading levels

We strive to use an inclusive language in the code, translations, documentation and issue tracker. By contributing to this project, you agree to listen when someone raise an issue that doesn't affect you directly, reflect on it and refrain to argue endlessly. Atalassian has a good list that isn't meant to be exclusive but a starting point.

Community and code of conduct

Our vision is for radical change in society in a socialist, feminist, antiracist and sustainable direction. Our role within that is to make online campaigning easier and more effective and we are building a flexible and easy to use action tool which has all the useful features to help progressive campaigners change the world. We hope to help grow a diverse online community of progressive campaigners, technologists and activists who will support each other, share tricks and stories and grow together.

Before starting to change something, we recommend you to contact us (create an issue on github is fine), who knows, what you need might already be almost there, we are just missing some documentation and explanation.

Please note that this project is released with a Contributor Covenant. By participating in this project you agree to abide by its terms.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].