T9-T12: env config + live owner search + responsive (§V11, I.env, I.web)
- config.py: env/.env (python-dotenv), defaults = konstanta lama; get_voters & dashboard pakai config - dashboard: ?q= server filter + /api/search JSON (substring, LIKE-escape, rank global via correlated count) - static/app.js: debounced live search; degrades to GET ?q= - static/style.css: input search + responsive (1024/768/480), list→kartu berlabel di mobile - test_dashboard: search/API/rank-global/config tests; .env.example; .env gitignored
This commit is contained in:
1 parent
0b3a86aad2
commit
205ad35c70
12 files changed
+440
-65
No files matched your search
@@ -0,0 +1,30 @@
|
||||
"""Konfigurasi proyek dari env / `.env`.
|
||||
|
||||
Bacaan tipe via `os.getenv`; nilai default = konstanta lama. Muat `.env` sekali
|
||||
di sini supaya semua modul (get_voters, dashboard) berbagi sumber yang sama.
|
||||
"""
|
||||
|
||||
import os
|
||||
|
||||
from dotenv import load_dotenv
|
||||
|
||||
load_dotenv()
|
||||
|
||||
# BP target
|
||||
TARGET_BP = os.getenv('VEX_TARGET_BP', 'databisnisid')
|
||||
|
||||
# Node RPC publik Vexanium
|
||||
API_NODE = os.getenv('VEX_API_NODE', 'https://v2.vexascan.com:2096')
|
||||
|
||||
# Lokasi basis data SQLite (dipakai fetcher & dashboard)
|
||||
DB_PATH = os.getenv('VEX_DB_PATH', 'voters.db')
|
||||
|
||||
# Syarat minimum stake (dalam VEX) untuk disimpan
|
||||
MIN_STAKED_VEX = float(os.getenv('VEX_MIN_STAKED_VEX', '1000'))
|
||||
|
||||
# Dashboard: ukuran halaman list
|
||||
PAGE_SIZE = int(os.getenv('DASH_PAGE_SIZE', '50'))
|
||||
|
||||
# Dashboard: host & port server Flask
|
||||
DASH_HOST = os.getenv('DASH_HOST', '127.0.0.1')
|
||||
DASH_PORT = int(os.getenv('DASH_PORT', '5000'))
|
||||
Reference in new issue
Block a user