├── .dockerignore ├── .github └── workflows │ └── publish-docker.yml ├── .gitignore ├── .prettierignore ├── .prettierrc.mjs ├── .vscode ├── extensions.json ├── launch.json ├── settings.json └── tasks.json ├── Dockerfile ├── LICENSE ├── README.md ├── components ├── AddOrEditExpenseForm.tsx ├── CategoryManager.tsx ├── ExpenseList.tsx ├── Layout.tsx ├── PaymentMethodManager.tsx ├── stats │ ├── StatsCharts.tsx │ ├── StatsFilters.tsx │ ├── StatsTables.tsx │ └── SummaryCards.tsx └── ui │ └── ExpenseItem.tsx ├── compose.dev.yaml ├── compose.yaml ├── db ├── index.ts ├── migrations │ ├── 0000_sweet_brood.sql │ └── meta │ │ ├── 0000_snapshot.json │ │ └── _journal.json └── schema.ts ├── drizzle.config.ts ├── hooks └── useProjectStats.ts ├── misc ├── screenshot_1.png ├── screenshot_2.png └── screenshot_3.png ├── next-env.d.ts ├── next.config.js ├── package.json ├── pages ├── _app.tsx ├── _document.tsx ├── api │ ├── categories │ │ ├── [id].ts │ │ └── index.ts │ ├── expenses │ │ ├── [id].ts │ │ └── index.ts │ ├── payment-methods │ │ ├── [id].ts │ │ └── index.ts │ └── projects │ │ ├── [id] │ │ ├── export.ts │ │ ├── index.ts │ │ ├── members.ts │ │ ├── members │ │ │ └── [memberId].ts │ │ └── stats.ts │ │ ├── import.ts │ │ └── index.ts ├── index.tsx └── projects │ ├── [id].tsx │ ├── [id] │ └── stats.tsx │ ├── join.tsx │ └── new.tsx ├── postcss.config.js ├── public ├── icons │ ├── icon-192x192.webp │ ├── icon-512x512.webp │ └── icon.svg └── manifest.json ├── scripts ├── generate-icons.js └── init-db.js ├── styles └── globals.css ├── tailwind.config.js ├── tsconfig.json └── utils ├── api.ts ├── currency.ts ├── id.ts └── localStorage.ts /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/.dockerignore -------------------------------------------------------------------------------- /.github/workflows/publish-docker.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/.github/workflows/publish-docker.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | public/ 2 | .git/ 3 | package-lock.json 4 | -------------------------------------------------------------------------------- /.prettierrc.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/.prettierrc.mjs -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/.vscode/extensions.json -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/.vscode/tasks.json -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/README.md -------------------------------------------------------------------------------- /components/AddOrEditExpenseForm.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/components/AddOrEditExpenseForm.tsx -------------------------------------------------------------------------------- /components/CategoryManager.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/components/CategoryManager.tsx -------------------------------------------------------------------------------- /components/ExpenseList.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/components/ExpenseList.tsx -------------------------------------------------------------------------------- /components/Layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/components/Layout.tsx -------------------------------------------------------------------------------- /components/PaymentMethodManager.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/components/PaymentMethodManager.tsx -------------------------------------------------------------------------------- /components/stats/StatsCharts.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/components/stats/StatsCharts.tsx -------------------------------------------------------------------------------- /components/stats/StatsFilters.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/components/stats/StatsFilters.tsx -------------------------------------------------------------------------------- /components/stats/StatsTables.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/components/stats/StatsTables.tsx -------------------------------------------------------------------------------- /components/stats/SummaryCards.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/components/stats/SummaryCards.tsx -------------------------------------------------------------------------------- /components/ui/ExpenseItem.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/components/ui/ExpenseItem.tsx -------------------------------------------------------------------------------- /compose.dev.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/compose.dev.yaml -------------------------------------------------------------------------------- /compose.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/compose.yaml -------------------------------------------------------------------------------- /db/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/db/index.ts -------------------------------------------------------------------------------- /db/migrations/0000_sweet_brood.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/db/migrations/0000_sweet_brood.sql -------------------------------------------------------------------------------- /db/migrations/meta/0000_snapshot.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/db/migrations/meta/0000_snapshot.json -------------------------------------------------------------------------------- /db/migrations/meta/_journal.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/db/migrations/meta/_journal.json -------------------------------------------------------------------------------- /db/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/db/schema.ts -------------------------------------------------------------------------------- /drizzle.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/drizzle.config.ts -------------------------------------------------------------------------------- /hooks/useProjectStats.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/hooks/useProjectStats.ts -------------------------------------------------------------------------------- /misc/screenshot_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/misc/screenshot_1.png -------------------------------------------------------------------------------- /misc/screenshot_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/misc/screenshot_2.png -------------------------------------------------------------------------------- /misc/screenshot_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/misc/screenshot_3.png -------------------------------------------------------------------------------- /next-env.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/next-env.d.ts -------------------------------------------------------------------------------- /next.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/next.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/package.json -------------------------------------------------------------------------------- /pages/_app.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/_app.tsx -------------------------------------------------------------------------------- /pages/_document.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/_document.tsx -------------------------------------------------------------------------------- /pages/api/categories/[id].ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/api/categories/[id].ts -------------------------------------------------------------------------------- /pages/api/categories/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/api/categories/index.ts -------------------------------------------------------------------------------- /pages/api/expenses/[id].ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/api/expenses/[id].ts -------------------------------------------------------------------------------- /pages/api/expenses/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/api/expenses/index.ts -------------------------------------------------------------------------------- /pages/api/payment-methods/[id].ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/api/payment-methods/[id].ts -------------------------------------------------------------------------------- /pages/api/payment-methods/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/api/payment-methods/index.ts -------------------------------------------------------------------------------- /pages/api/projects/[id]/export.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/api/projects/[id]/export.ts -------------------------------------------------------------------------------- /pages/api/projects/[id]/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/api/projects/[id]/index.ts -------------------------------------------------------------------------------- /pages/api/projects/[id]/members.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/api/projects/[id]/members.ts -------------------------------------------------------------------------------- /pages/api/projects/[id]/members/[memberId].ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/api/projects/[id]/members/[memberId].ts -------------------------------------------------------------------------------- /pages/api/projects/[id]/stats.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/api/projects/[id]/stats.ts -------------------------------------------------------------------------------- /pages/api/projects/import.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/api/projects/import.ts -------------------------------------------------------------------------------- /pages/api/projects/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/api/projects/index.ts -------------------------------------------------------------------------------- /pages/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/index.tsx -------------------------------------------------------------------------------- /pages/projects/[id].tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/projects/[id].tsx -------------------------------------------------------------------------------- /pages/projects/[id]/stats.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/projects/[id]/stats.tsx -------------------------------------------------------------------------------- /pages/projects/join.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/projects/join.tsx -------------------------------------------------------------------------------- /pages/projects/new.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/pages/projects/new.tsx -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/postcss.config.js -------------------------------------------------------------------------------- /public/icons/icon-192x192.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/public/icons/icon-192x192.webp -------------------------------------------------------------------------------- /public/icons/icon-512x512.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/public/icons/icon-512x512.webp -------------------------------------------------------------------------------- /public/icons/icon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/public/icons/icon.svg -------------------------------------------------------------------------------- /public/manifest.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/public/manifest.json -------------------------------------------------------------------------------- /scripts/generate-icons.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/scripts/generate-icons.js -------------------------------------------------------------------------------- /scripts/init-db.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/scripts/init-db.js -------------------------------------------------------------------------------- /styles/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/styles/globals.css -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/tailwind.config.js -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/tsconfig.json -------------------------------------------------------------------------------- /utils/api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/utils/api.ts -------------------------------------------------------------------------------- /utils/currency.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/utils/currency.ts -------------------------------------------------------------------------------- /utils/id.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/utils/id.ts -------------------------------------------------------------------------------- /utils/localStorage.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shynewt/kostos/HEAD/utils/localStorage.ts --------------------------------------------------------------------------------