Self-hosted feed/dashboard (+ other utilities) application built with Blitz/Next.js, Prisma and PostgreSQL.
This project is mainly a (RSS) feed catcher/reader. It uses Next.js/Blitz for the frontend/backend, Prisma for database modeling, and PostgreSQL as the primary datastore. Docker compose files are included for containerized deployments.
- Feed ingestion and management
- Read lists, read/unread status, and feed entry summaries
- Statistics about feed loading
- an alternative frontend to <univis.uni-bamberg.de> (lecture information for University of Bamberg)
app/andlib/— application code (components, hooks, utility functions)pages/the Next Pagesdb/— Prisma schema, migrations and seedsdocker/— container deployment configs (demo, staging, production)docker-compose-db-only.yml— convenience compose file for just the DB
A demo deployment is available under https://demo.dash.y-lang.eu.
You can log in with (demo@example.com, demo). The deployment is reset at regular intervals.
- Node.js (recommended >= 20)
- Yarn
- optional: Docker & Docker Compose (for running Postgres locally)
yarndocker-compose -f docker-compose-db-only.yml up -dyarn blitz prisma migrate dev
yarn blitz db seedyarn devVisit http://localhost:3000 to open the dashboard.
Build and start the production server:
yarn build && yarn startFor containerized production, see the files under docker/production and the docker/ directory for compose examples.
crontab -l
*/5 \* \* \* _ curl --header "api-token: somesecretstring" https://prod.url/api/loadRSS >/dev/null 2>&1
0 4 * \* * curl --header "api-token: somesecretstring" https://prod.url/api/clean >/dev/null 2>&1Create an .env.local (or .env) in the project root with at least the variables indicated in .env.example
Adjust other provider or feature flags as needed.
Run the test suite with:
yarn testSee LICENSE.txt in the repository root.
- better logging