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.

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.