Début du projet
This commit is contained in:
commit
e7d4e607f6
23 files changed
+4855
No files matched your search
@@ -0,0 +1,37 @@
|
||||
-- Initialisation de la base de données
|
||||
CREATE TABLE IF NOT EXISTS articles (
|
||||
id TEXT PRIMARY KEY,
|
||||
title TEXT NOT NULL,
|
||||
url TEXT NOT NULL UNIQUE,
|
||||
source TEXT,
|
||||
source_language TEXT DEFAULT 'fr',
|
||||
language TEXT DEFAULT 'fr',
|
||||
published_at DATETIME,
|
||||
summary TEXT,
|
||||
categories TEXT, -- JSON array
|
||||
status TEXT NOT NULL DEFAULT 'pending', -- pending, published, hidden, rejected
|
||||
created_at DATETIME DEFAULT (datetime('now')),
|
||||
updated_at DATETIME DEFAULT (datetime('now')),
|
||||
collected_by TEXT DEFAULT 'rss' -- rss, ai
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_articles_status ON articles(status);
|
||||
CREATE INDEX IF NOT EXISTS idx_articles_published_at ON articles(published_at DESC);
|
||||
CREATE INDEX IF NOT EXISTS idx_articles_url ON articles(url);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS sources (
|
||||
id TEXT PRIMARY KEY,
|
||||
name TEXT NOT NULL,
|
||||
url TEXT,
|
||||
enabled INTEGER DEFAULT 1,
|
||||
last_collected_at DATETIME,
|
||||
created_at DATETIME DEFAULT (datetime('now'))
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS activity_log (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
action TEXT NOT NULL, -- collect, validate, hide, reject, delete, publish
|
||||
article_id TEXT,
|
||||
details TEXT,
|
||||
created_at DATETIME DEFAULT (datetime('now'))
|
||||
);
|
||||