-- Initial database schema for Owly News Summariser

-- News table to store articles
CREATE TABLE IF NOT EXISTS news
(
    id         INTEGER PRIMARY KEY AUTOINCREMENT,
    title      TEXT      NOT NULL,
    summary    TEXT,
    url        TEXT      NOT NULL,
    published  TIMESTAMP NOT NULL,
    country    TEXT      NOT NULL,
    created_at INTEGER DEFAULT (strftime('%s', 'now'))
);

-- Index for faster queries on published date
CREATE INDEX IF NOT EXISTS idx_news_published ON news (published);

-- Feeds table to store RSS feed sources
CREATE TABLE IF NOT EXISTS feeds
(
    id      INTEGER PRIMARY KEY,
    country TEXT,
    url     TEXT UNIQUE NOT NULL
);

-- Settings table for application configuration
CREATE TABLE IF NOT EXISTS settings
(
    key TEXT PRIMARY KEY,
    val TEXT NOT NULL
);

-- Meta table for application metadata
CREATE TABLE IF NOT EXISTS meta
(
    key TEXT PRIMARY KEY,
    val TEXT NOT NULL
);
