GithubHelp home page GithubHelp logo

lianetoolkit / liane-toolkit Goto Github PK

View Code? Open in Web Editor NEW
22.0 8.0 12.0 7.27 MB

Technology for Political Innovation

Home Page: https://liane.camp

License: MIT License

JavaScript 99.41% CSS 0.53% HTML 0.06% Dockerfile 0.01%
crm political innovation

liane-toolkit's Introduction

Liane

Technology for Political Innovation

Liane is a free software using Meteor, MongoDB, React, Redis and the Facebook API.

This project is under development.


Table of Contents

Getting Started

Dependencies

Install Meteor full-stack framework.

curl https://install.meteor.com/ | sh

Clone this repository.

git clone https://github.com/lianetoolkit/liane-toolkit

Configuration

Create a file at .deploy/local/ and name it settings.json. You can find an example at .deploy/settings.example.json

Facebook configuration

Paste your client id and secret and on your Facebook App dashboard you must add the app domain and URL on the Dashboard settings and OAuth setup. Default is http://localhost:3000.

If you are using strict mode (recommended) on your Facebook OAuth configuration, make sure to use the following path: http://localhost:3000/_oauth/facebook?close

Start the app

Make sure your Redis server is running and run your project.

npm start

Once the app install all of its dependencies, it will be running at http://localhost:3000. The first user created is automatically set with the admin role.

Routes Definition

This project uses FlowRouter for routes definition. You can find and modify routes at /imports/startup/client/routes.js

Application Structure

This projects follows Meteor guide recommendations for application struture.

imports/
  startup/
    client/
      routes/                       # set up all routes in the app
      index.js                      # import client startup through a single index entry point
    server/
      fixtures.js                   # fill the DB with example data on startup
      index.js                      # import server startup through a single index entry point
  api/
    campaigns/                      # a unit of domain logic
      server/
        campaignsHelpers.js
        campaignsPublications.js    # all campaigns-related publications
        campaignsMethods.js         # methods
      campaigns.js                  # definition of the Campaigns collection
  ui/
    components/                     # all reusable components in the application
    containers/                     # can be split by domain if there are many
    layouts/                        # wrapper components for behaviour and visuals
    pages/                          # entry points for rendering used by the router
client/
  main.js                           # client entry point, imports all client code
server/
  main.js

Cron jobs

This project uses Job Collection as job manager. It allows to add schedule jobs for repeating tasks along the campaign.

Internationalization

This project uses react-intl for internationalization. You can find and edit translations at /locales.

Translation files are automatically generated through npm run translations. You can update the available strings by running this command and manually translating the desired lang file, located at /locales/[lang].json. Do not manually insert new strings into the language files.

liane-toolkit's People

Contributors

chemuto avatar eldardo avatar gabijuns avatar garbolino avatar marcosriganti avatar mdegrati avatar miguelpeixe avatar pmarkun avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

liane-toolkit's Issues

Campo de "geolocation" mantém o texto após digitar

Caso a lista de entradas sugeridas no autocomplete da página de criação de geolocation tenha mais de uma sugestão - após selecionar o sistema mantém no textfield o texto digitado anteriormente.

O comportamento não é consistente quando você digita um autocomplete que retorne uma unica opção.

Marcar atividade concluida como "não concluida".

Se você já marcou uma tarefa como concluida e for na aba de Resolved Activities e clicar no simbolo de checado, ele retorna um erro.

Creio que o comportamento ideal é marcar ela como "não concluida" novamente.

Não é algo urgente, mas fica aqui como sugestão.

CRM Page

  • Display "last week" interactions count
  • Form to add/edit person metadata
  • Import/export people
  • Include disclaimer checkbox while importing

Audiência: Página inicial

  • Temáticas destacadas na páginas associadas (utilizando apenas a main geolocation)
  • Geolocations destacadas (sem temática)
  • Daily active users

CRM - Geocode

Ao preencher o endereço no formulário o sistema armazena automaticamente uma coordenada geográfica. Visualização disponível no link "Maps" do menu da campanha.

Problemas de visualização do mapa

Remover o 0% dos locais com 0% do mapa
Adicionar o contorno das regiões
Fazer chloroplet com % de votação (talvez opacidade?)
Mostrar o total absoluto de pessoas na região
Pensar em como resolver camadas de overlap:
No caso de São Paulo, queria tanto o total da cidade quanto bolas-radius das regiões da cidade.
No caso de SP, queria ver o total do estado com relação ao pais mas sem que fique um em cima do outro.

Audience page

  • Audience category summary (page and universe)
  • Locations summary
    • Map
    • Percentage and absolute estimates

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.