{"id":19904372,"url":"https://github.com/triple-ade/xtracker","last_synced_at":"2026-06-14T07:33:55.319Z","repository":{"id":258234546,"uuid":"868899985","full_name":"TRIPLE-ADE/xtracker","owner":"TRIPLE-ADE","description":"An expense-tracking application to help users monitor their spending habits and provide financial insights.","archived":false,"fork":false,"pushed_at":"2026-01-16T17:44:57.000Z","size":1125,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-17T05:43:40.575Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://xtracker-two.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TRIPLE-ADE.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-10-07T11:33:34.000Z","updated_at":"2026-01-16T17:45:01.000Z","dependencies_parsed_at":"2025-02-04T17:41:22.289Z","dependency_job_id":null,"html_url":"https://github.com/TRIPLE-ADE/xtracker","commit_stats":null,"previous_names":["triple-ade/xtracker"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/TRIPLE-ADE/xtracker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TRIPLE-ADE%2Fxtracker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TRIPLE-ADE%2Fxtracker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TRIPLE-ADE%2Fxtracker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TRIPLE-ADE%2Fxtracker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TRIPLE-ADE","download_url":"https://codeload.github.com/TRIPLE-ADE/xtracker/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TRIPLE-ADE%2Fxtracker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34313515,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-14T02:00:07.365Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-12T20:28:06.984Z","updated_at":"2026-06-14T07:33:55.303Z","avatar_url":"https://github.com/TRIPLE-ADE.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# XTracker\n\n**XTracker** is a web-based application for tracking and managing user expenses. It aims to provide financial insights and tools to help users better manage their finances. Built using **Next.js** and designed to be scalable and easy to maintain, XTracker follows industry-standard practices.\n\n## Table of Contents\n\n1. [Getting Started](#getting-started)\n   - [Prerequisites](#prerequisites)\n   - [Setup](#setup)\n2. [Project Structure](#project-structure)\n3. [Features](#features)\n4. [Contributing](#-contributing)\n   - [Contribution Guidelines](#contribution-guidelines)\n   - [Commit Cheat Sheet](#commit-cheat-sheet)\n5. [Tech Stack](#tech-stack)\n\n## Getting Started\n\n### Prerequisites\n\nEnsure you have the following installed on your machine:\n\n- [Node.js 18.19+](https://nodejs.org/)\n- [NPM](https://www.npmjs.com/) (or [Yarn](https://yarnpkg.com/) / [PNPM](https://pnpm.io/))\n- [Supabase Account](https://supabase.com/)\n- [Git](https://git-scm.com/)\n\n### Setup\n\n1. **Clone the repository:**\n\n   ```bash\n   git clone https://github.com/yourusername/xtracker.git\n   ```\n\n2. **Navigate into the project directory:**\n\n   ```bash\n   cd xtracker\n   ```\n\n3. **Install project dependencies:**\n\n   ```bash\n   npm install\n   ```\n\n4. **Set up environment variables:**\n\n   Create a `.env.local` file at the root of your project and add the following:\n\n   ```bash\n   NEXTAUTH_SECRET=your_nextauth_secret\n   NEXTAUTH_URL=http://localhost:3000\n   SUPABASE_URL=your_supabase_url\n   SUPABASE_KEY=your_supabase_key\n   ```\n\n5. **Run the development server:**\n\n   ```bash\n   npm run dev\n   ```\n\n6. **Open your browser to view the result:**\n   - [http://localhost:3000](http://localhost:3000)\n\n## Project Structure\n\nThe project follows a **feature-first** folder structure:\n\n```bash\nxtracker/\n│\n├── .husky/              # Husky configuration for pre-commit hooks\n├── app/                # App directory for routing and pages\n│   ├── api/            # API routes\n│   ├── components/      # Reusable components\n│   ├── layout.tsx       # Layout component\n│   ├── page.tsx         # Main entry point for the app\n│   ├── styles/          # Global styles (including Tailwind)\n│   ├── middleware.ts    # Middleware for authentication\n│   ├── hooks/           # Custom React hooks\n│   └── utils/           # Utility functions\n├── .eslintignore         # ESLint ignore rules configuration\n├── .eslintrc.json        # ESLint configuration\n├── .prettierignore       # Prettier ignore rules configuration\n├── .prettierrc.json      # Prettier configuration\n├── commitlint.config.mjs # Commitlint configuration\n├── next-env.d.ts        # TypeScript environment definitions\n├── next.config.mjs       # Next.js configuration\n├── package-lock.json       # Lockfile for npm dependencies\n├── package.json            # Project metadata and npm scripts\n├── postcss.config.mjs     # Tailwind Postcss configuration\n├── README.md            # Project documentation\n├── tailwind.config.ts    # Tailwind configuration\n└── tsconfig.json       # TypeScript  configuration\n```\n\n## Features\n\n- **User Authentication**: Powered by NextAuth.js with Supabase as the database backend.\n- **Expense Categorization**: Track expenses by categories like food, travel, etc.\n- **Financial Insights**: Visualize spending trends using charts.\n- **Budget Alerts**: Set budgets and receive notifications when close to limits.\n- **Export Reports**: Generate reports of your spending.\n- **Smart Budgeting**: AI-driven insights to help with budgeting decisions.\n\n## 🤝 Contributing\n\nContributions, issues, and feature requests are welcome! Please follow the steps below to contribute:\n\n### Contribution Guidelines\n\n1. **Clone the repository:**\n\n   ```bash\n   git clone https://github.com/TRIPLE-ADE/xtracker.git\n   ```\n\n2. **Create a new branch from `main`:**\n\n   ```bash\n   git checkout -b Feat/{feature-name} origin/main\n   ```\n\n3. **Ensure your branch is up to date:**\n\n   ```bash\n   git pull origin main\n   ```\n\n4. **Make your changes and run tests:**\n\n   ```bash\n   npm run test\n   ```\n\n5. **Commit your changes with a descriptive message:**\n\n   ```bash\n   git commit -m \"feat: {describe your feature here}\"\n   ```\n\n6. **Push your changes:**\n\n   ```bash\n   git push -u origin Feat/{feature-name}\n   ```\n\n7. **Create a pull request and describe your changes in detail.**\n\n### _Commit Cheat Sheet_\n\n| Type     | Description                                                       |\n| -------- | ----------------------------------------------------------------- |\n| feat     | A new feature you're adding                                       |\n| fix      | A bug fix                                                         |\n| docs     | Documentation only changes                                        |\n| style    | Changes that do not affect code logic (e.g., formatting, linting) |\n| refactor | Code change that neither fixes a bug nor adds a feature           |\n| perf     | Code change that improves performance                             |\n| test     | Adding or updating tests                                          |\n| build    | Changes that affect the build system or external dependencies     |\n| ci       | Changes to CI configuration files and scripts                     |\n| chore    | Other changes that don't modify source or test files              |\n| revert   | Reverts a previous commit                                         |\n\n#### Sample Commit Message\n\n- `feat: Add new expense categorization feature` := Adding a new feature to categorize expenses.\n\n## Tech Stack\n\n- **Frontend**: [Next.js](https://nextjs.org/)\n- **Styling**: [Tailwind CSS](https://tailwindcss.com/)\n- **Authentication**: [NextAuth.js](https://next-auth.js.org/)\n- **Backend**: [Supabase](https://supabase.com/)\n- **Linting**: [ESLint](https://eslint.org/) + [Prettier](https://prettier.io/)\n- **Git Hooks**: [Husky](https://typicode.github.io/husky/#/)\n- **Commit Guidelines**: [Commitlint](https://commitlint.js.org/)\n\n## Additional Setup\n\n- **Husky**: Pre-commit hooks to ensure code quality.\n\n  ```bash\n  npx husky install\n  ```\n\n- **Prettier + ESLint**: Ensure consistent code formatting and quality.\n  ```bash\n  npm run lint\n  ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftriple-ade%2Fxtracker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftriple-ade%2Fxtracker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftriple-ade%2Fxtracker/lists"}