Find answers to common questions about CitizenAI installation, configuration, and usage.
CitizenAI is an intelligent citizen engagement platform designed to revolutionize how governments interact with the public. It uses AI technologies like IBM Granite models and Watson to provide real-time, intelligent responses to citizen inquiries.
!!! info “Core Features” - AI Chat Assistant: Real-time conversational AI - Sentiment Analysis: Automatic feedback classification - Analytics Dashboard: Real-time visualizations and insights - Concern Reporting: Issue submission and tracking - User Authentication: Secure session management - Responsive Design: Works on all devices
Yes, CitizenAI is open-source and free to use under the MIT License. However, some AI features require IBM Watson API credentials, which may have associated costs depending on usage.
Minimum Requirements:
Recommended:
??? question “Python Installation Issues” On Windows: ```bash # Check if Python is installed python –version
# If not found, download from python.org
# Make sure to check "Add to PATH" during installation
```
**On macOS:**
```bash
# Install using Homebrew
brew install python
# Or download from python.org
```
**On Linux:**
```bash
# Ubuntu/Debian
sudo apt update
sudo apt install python3 python3-pip
# CentOS/RHEL
sudo yum install python3 python3-pip
```
This usually means dependencies aren’t installed correctly:
# Ensure you're in the project directory
cd Citizen-AI
# Create a virtual environment
python -m venv .venv
# Activate virtual environment
# Windows:
.venv\Scripts\activate
# macOS/Linux:
source .venv/bin/activate
# Install dependencies
pip install -r requirements.txt
python --version # Should be 3.11+
# Should show the virtual environment path
which python # macOS/Linux
where python # Windows
# Check if port 5000 is in use
netstat -an | grep 5000
# Run with verbose output
python app_demo.py --debug
Yes! Use the demo version which provides full functionality with mock AI responses:
# Run demo version (no Watson required)
python app_demo.py
The demo version includes:
Create production environment file: ```bash title=”.env.production” FLASK_ENV=production FLASK_DEBUG=False SECRET_KEY=your-very-secure-secret-key
WATSON_API_KEY=your-production-api-key WATSON_URL=your-watson-url
SESSION_COOKIE_SECURE=True SESSION_COOKIE_HTTPONLY=True ```
Default credentials for the demo:
adminpassword!!! warning “Security Note” Change these credentials before deploying to production!
For Demo Version:
For AI Version:
.env fileimport requests
response = requests.get(
'http://localhost:5000/api/v1/analytics/export',
params={'format': 'csv', 'date_range': '30d'}
)
Yes! You can customize:
static/css/styles.csstemplates/)Common Solutions:
# Add to your configuration
CACHE_TYPE = 'simple'
CACHE_DEFAULT_TIMEOUT = 300
# Install gunicorn
pip install gunicorn
# Run with gunicorn
gunicorn -w 4 -b 0.0.0.0:5000 app:app
This happens when uploading large files. Increase the upload limit:
# In your Flask configuration
app.config['MAX_CONTENT_LENGTH'] = 16 * 1024 * 1024 # 16MB
Check session configuration:
# Ensure these are set
app.config['SECRET_KEY'] = 'your-secret-key'
app.config['SESSION_TYPE'] = 'filesystem'
Currently, API access uses session-based authentication. For programmatic access:
response = requests.post(
'http://localhost:5000/api/v1/auth/login',
json={'username': 'admin', 'password': 'password'}
)
Default limits:
See the Contributing Guide for detailed instructions.
While primarily designed as a web application, you can import and use specific components:
from src.chat.engine import ChatEngine
from src.analytics.processor import AnalyticsProcessor
# Use individual components
chat_engine = ChatEngine(api_key='your-key')
response = chat_engine.process_message('Hello')
Recommended Production Setup:
See Deployment Guide for detailed instructions.
Yes! CitizenAI can be deployed on:
Using nginx:
server {
listen 443 ssl;
server_name your-domain.com;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
location / {
proxy_pass http://localhost:5000;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Currently, CitizenAI is a community-driven open-source project. For commercial support or custom development, you can:
!!! question “Question Not Answered?” If you can’t find the answer to your question here, please:
1. Search [GitHub Issues](https://github.com/AkhileshMalthi/Citizen-AI/issues)
2. Create a new [GitHub Discussion](https://github.com/AkhileshMalthi/Citizen-AI/discussions)
3. Check the [Troubleshooting Guide](/Citizen-AI/support/troubleshooting.html)