{"id":21133262,"url":"https://github.com/radzhiv25/expense-tracker","last_synced_at":"2025-12-30T21:17:25.640Z","repository":{"id":254936472,"uuid":"840726415","full_name":"radzhiv25/expense-tracker","owner":"radzhiv25","description":"PennWise: A simple web-app to manage your expenses with graphical representation","archived":false,"fork":false,"pushed_at":"2024-08-27T11:38:12.000Z","size":62,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-21T06:25:30.898Z","etag":null,"topics":["chartjs","localstorage","react-chartjs-2","react-icons","reactjs","tailwindcss"],"latest_commit_sha":null,"homepage":"https://pennwise.vercel.app","language":"JavaScript","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/radzhiv25.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}},"created_at":"2024-08-10T13:55:05.000Z","updated_at":"2024-08-28T08:43:11.000Z","dependencies_parsed_at":"2024-08-27T03:26:26.126Z","dependency_job_id":"27306a33-9516-4a59-8093-2f690046435a","html_url":"https://github.com/radzhiv25/expense-tracker","commit_stats":null,"previous_names":["radzhiv25/expense-tracker"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radzhiv25%2Fexpense-tracker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radzhiv25%2Fexpense-tracker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radzhiv25%2Fexpense-tracker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radzhiv25%2Fexpense-tracker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/radzhiv25","download_url":"https://codeload.github.com/radzhiv25/expense-tracker/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243576690,"owners_count":20313468,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["chartjs","localstorage","react-chartjs-2","react-icons","reactjs","tailwindcss"],"created_at":"2024-11-20T06:05:28.117Z","updated_at":"2025-10-06T04:24:09.802Z","avatar_url":"https://github.com/radzhiv25.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PennWise\n\nA simple and intuitive expense tracker application built with ReactJS and TailwindCSS. This application allows users to add, delete, and edit transactions, categorize them as income or expenses, and visualize their financial data. It helps you manage your finances effectively by keeping track of all your transactions in one place.\n\n## Table of Contents\n\n- [Demo](#demo)\n- [Features](#features)\n- [Installation](#installation)\n- [Usage](#usage)\n- [Technologies Used](#technologies-used)\n- [Project Structure](#project-structure)\n- [Contributing](#contributing)\n\n## Demo\n\nCheck out the live demo: [PennWise](https://pennwise.vercel.app/)\n\n## Features\n\n- **Add New Transactions**: Record income and expenses by specifying the amount, category, date, and description.\n- **Edit Transactions**: Modify existing transactions directly from the transaction list.\n- **Delete Transactions**: Remove transactions that are no longer needed.\n- **View Summary**: See a summary of total income, total expenses, and the balance (Income - Expenses).\n- **Visualize Data**: View a chart that visually represents income and expenses over time.\n- **Responsive Design**: Seamlessly use the application on any device, thanks to TailwindCSS.\n\n## Installation\n\nTo get a local copy up and running, follow these simple steps:\n\n### Prerequisites\n\n- Node.js (version 12 or higher)\n- npm (version 6 or higher) or yarn\n\n### Installation Steps\n\n1. **Clone the repository:**\n\n    ```sh\n    git clone https://github.com/your-username/expense-tracker.git\n    cd expense-tracker\n    ```\n\n2. **Install dependencies:**\n\n    ```sh\n    npm install\n    # or if you prefer yarn\n    yarn install\n    ```\n\n## Usage\n\n1. **Start the development server:**\n\n    ```sh\n    npm start\n    # or if you prefer yarn\n    yarn start\n    ```\n\n2. **Open your browser and navigate to `http://localhost:5173`**\n\n3. **Use the application to manage your transactions.**\n\n## Technologies Used\n\n- **ReactJS**: A JavaScript library for building user interfaces, especially single-page applications, using a component-based architecture.\n- **Tailwind CSS**: A utility-first CSS framework for rapid UI development.\n- **Chart.js**: A popular JavaScript library for creating charts to visualize your data.\n- **React Icons**: A library of popular icons for React applications.\n- **Supabase**: Managed Postgres database for persisting transactions and preferences.\n\n## Environment Variables\n\nCreate a `.env` file at the project root with the following variables (these are required for Supabase connectivity):\n\n```\nVITE_SUPABASE_URL=your_supabase_project_url\nVITE_SUPABASE_ANON_KEY=your_supabase_anon_key\n```\n\nRefer to the [Supabase documentation](https://supabase.com/docs/guides/getting-started/quickstarts) to obtain these values.\n\n## Project Structure\n\n```plaintext\n├── src\n│   ├── components\n│   │   ├── Footer.jsx\n│   │   ├── Navbar.jsx\n│   │   ├── Summary.jsx\n│   │   ├── TransactionForm.jsx\n│   │   ├── TransactionList.jsx\n│   │   ├── Summary.jsx\n│   │   └── ...\n│   ├── App.jsx\n│   ├── index.css\n│   ├── main.jsx\n│   └── ...\n├── tailwind.config.js\n├── package.json\n└── ...\n```\n\n## Contributing\n\nContributions are welcome! Please follow these steps:\n\n1. Fork the repository.\n2. Create a new branch (`git checkout -b feature-branch`).\n3. Make your changes.\n4. Commit your changes (`git commit -m 'Add some feature'`).\n5. Push to the branch (`git push origin feature-branch`).\n6. Open a pull request.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fradzhiv25%2Fexpense-tracker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fradzhiv25%2Fexpense-tracker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fradzhiv25%2Fexpense-tracker/lists"}