What is being said about Syria online today: public posts in Arabic, Kurdish and English grouped into stories, with how people and outlets are reacting. Daily briefs, weekly and monthly reports, open
翻译准备中
媒体HTML · PythonGitHub @Brunopomodoro在线运营者未确认
试用过了吗? 点一下就好,无需登录。
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证What is being said about Syria online today: public posts in Arabic, Kurdish and English grouped into stories, with how people and outlets are reacting. Daily briefs, weekly and monthly reports, open data.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗A website that updates itself every hour with the main narratives in public Syrian online discussion, and the tone around each one.
It reads Arabic, Kurdish and English posts from about 50 sources: Telegram channels (official, independent, opposition-origin, Kurdish-run, local, minority-community and regional outlets), news sites, YouTube comments (by search and under selected channels), Reddit, X and, optionally, Telegram comments and groups, Bluesky, Threads and Instagram hashtag posts.
index.html is the website (Tracker, Trends, Reports, Data and About pages); stories/, daily/, weekly/ and monthly/ hold the generated story pages, daily reports, weekly reports and monthly reports, each with share links and a print layout (digests and reports also as PDFs, made by scripts/report_pdf.py with the Chrome on GitHub's runners); feed.xml and feed-ar.xml are the digest feeds, feed-monthly.xml and feed-monthly-ar.xml the report feeds (full text, for newsletter services)assets/logo.svg is the logo (a speech bubble carrying a pulse line) and assets/logo-wordmark*.svg the logo with the name; scripts/brand.py draws them and makes every file derived from them: the preview card shown when a page is shared (assets/og.png, og-ar.png), the icons, the PNG copies for documentsscripts/social.py posts yesterday's daily report, each weekly report and each monthly report to the tracker's Facebook Page and X account once their secrets are set (GUIDE.md, "Posting to Facebook", "Posting to X")config.yaml holds your settings and sources (the only file you normally edit)scripts/pipeline.py collects posts, asks Claude to find narratives, and writes data/ (including data/snapshots/, the full analysis of every hour, which the website opens when you click a past hour), data/stories.json and data/headlines.json (what the website's search box looks through: stories from the past 14 days and outlet headlines from the past 7 days; posts by individuals are never stored).github/workflows/update.yml runs the pipeline every hour on GitHub Actions.gitignore blocks env files, keys and session files.assets/app.js and its policy (<meta> in index.html, _headers) allows scripts only from this origin: injected markup cannot run code. Generated story and digest pages allow no scripts at all. All text from posts and from the model is escaped before it reaches a page. After editing assets/app.js, bump the ?v= on its <script> tag so browsers fetch the new file._headers adds framing protection, HSTS and the rest. Cloudflare Pages and Netlify apply it automatically. GitHub Pages ignores it; if the site stays on GitHub Pages behind Cloudflare, add the same headers once under Cloudflare, Rules, Transform Rules, Modify Response Header. Until then, assets/app.js hides the home page when it is loaded inside another site's frame. Keep Cloudflare's features that rewrite pages (Rocket Loader, Mirage, Email Address Obfuscation) off: the page policy blocks the scripts they inject.Everything the tracker produces is in data/ and can be downloaded or read directly (licence: CC BY 4.0, see the website's Data page):
data/archive/YYYY-MM-DD.json: every run of that day in full, plus that day's outlet headlines. Permanent.
data/archive/index.json: one summary per day: volume and tone overall, per theme, per language and per source type. Feeds the Trends page.
data/exports/YYYY-MM/: flat tables per month for spreadsheets, R and Python: runs.csv, stories.csv (one row per story per run), themes.csv, headlines.csv, and stories.json (one entry per story with its full analysis). data/exports/index.json lists them with column names.
data/methodology.json: sources, themes, sampling settings, model, the exact analysis instructions, and the method changelog.
data/latest.json, data/history.json, data/snapshots/, data/stories.json, data/headlines.json: what the live site uses (the last 14 days).
data/weekly/: the weekly reports (text in both languages and the week's numbers).
data/validation.json: the results of the validation study, once one has been run (GUIDE.md, "Validation study").
Posts by individuals are never stored; the archive holds analyses and outlet headlines only. Licence: CC BY 4.0 (LICENSE-DATA.md); citation details in CITATION.cff and on the website's Data page.
Maintenance jobs (Actions -> Maintenance -> Run workflow): rebuild the index and downloads after editing themes or events in config.yaml, give themes to stories archived before themes existed, or rebuild the archive from the git history.
Setup instructions: see GUIDE.md.
Run it on your own computer (optional):
pip install -r requirements.txt
python scripts/pipeline.py --dry-run # test your sources, no cost
export ANTHROPIC_API_KEY=sk-ant-...
python scripts/pipeline.py # full run, writes data/
python -m http.server # then open http://localhost:8000