Skip to content

The package manager of a Customizable e-democracy opinion collection and insight mining system. Built using Python and optimized for scalability and performance.

License

Notifications You must be signed in to change notification settings

NewJerseyStyle/LitePolis

Repository files navigation

LitePolis

Infrastructure for E-democracy
PyPI - Version

Overview

LitePolis is an advanced, Python-based infrastructure designed for building customizable opinion collection systems, extending beyond the capabilities of the original Polis. It offers a developer-friendly environment focused on flexibility and power.

Built with a modular, microservice-like architecture, LitePolis is distributed by default, leveraging the Ray framework for inherent auto-scaling capabilities right out of the box. This ensures your applications can handle large groups and high traffic volumes efficiently.

The core of LitePolis is a central package manager that discovers and orchestrates various components – API Routers, Middleware, and UI Packages. This modularity allows developers and data scientists to easily build, deploy, and iterate on sophisticated data-driven e-democracy tools and other opinion-gathering applications.

Video about LitePolis

Quick start

1. Install the LitePolis CLI

The litepolis-cli is your main tool for creating, managing, and deploying LitePolis packages.

  • Needs Python (3.12 recommended) and pip installed.
pip install litepolis

2. Explore Packages for Deployment

Awesome-LitePolis scans GitHub everyday for available LitePolis packges (including work in progress repositories)

3. Deploy

Add features you want in LitePolis

litepolis-cli deploy list-deps

# remove packages if you don't need default packages that provides Polis functionality
litepolis-cli deploy remove-deps litepolis-router-default

# add packages that you need
litepolis-cli deploy add-deps litepolis-router-simple-api

litepolis-cli deploy init-config

# setup password etc.
nano ~/.litepolis/config.conf

# start serving
litepolis-cli deploy serve

Next Steps:

  • Use StarRocks as database [WIP#todo]
  • Deploy to Google cloud with autoscale [WIP#todo]

About

The package manager of a Customizable e-democracy opinion collection and insight mining system. Built using Python and optimized for scalability and performance.

Topics

Resources

License

Stars

Watchers

Forks

Languages