nitter/src/nitter.nim

41 lines
818 B
Nim

import asyncdispatch
from net import Port
import jester
import types, config, prefs
import views/[general, about]
import routes/[preferences, timeline, media, rss]
const configPath {.strdefine.} = "./nitter.conf"
let cfg = getConfig(configPath)
createPrefRouter(cfg)
createTimelineRouter(cfg)
createMediaRouter(cfg)
createRssRouter(cfg)
settings:
port = Port(cfg.port)
staticDir = cfg.staticDir
bindAddr = cfg.address
routes:
get "/":
resp renderMain(renderSearch(), Prefs(), cfg.title)
get "/about":
resp renderMain(renderAbout(), Prefs(), cfg.title)
post "/search":
if @"query".len == 0:
resp Http404, showError("Please enter a username.", cfg.title)
redirect("/" & @"query")
extend preferences, ""
extend rss, ""
extend timeline, ""
extend media, ""
runForever()