Skip to content

A modern, elegant web application for managing petty cash accounts with multi-currency support

License

Notifications You must be signed in to change notification settings

argosback/petty-cash

Repository files navigation

Petty Cash Manager

A modern, elegant web application for managing petty cash accounts with multi-currency support.

License

Features

  • 💰 Multi-account management with different currencies
  • 📊 Real-time balance tracking and financial reports
  • 🔄 Income and expense transaction management
  • 📱 Responsive design for desktop and mobile
  • 🌍 Internationalization support (English/Spanish)
  • 🎨 Modern and intuitive user interface
  • 🔒 Secure authentication system
  • 📁 Category management for better organization
  • 📈 Financial statistics and trends
  • 💾 Data export capabilities

Tech Stack

  • Frontend:

    • React.js with Vite
    • Tailwind CSS for styling
    • Framer Motion for animations
    • i18next for internationalization
  • Backend:

    • Node.js
    • SQLite for data storage
    • Express.js for API
    • JWT for authentication

Getting Started

Prerequisites

  • Node.js (v16 or higher)
  • npm or yarn

Installation

  1. Clone the repository
git clone https://github.com/argosback/petty-cash.git
cd petty-cash
  1. Install dependencies
npm install
  1. Create a .env file in the root directory with the following content:
VITE_API_URL=http://localhost:3000
  1. Start the development server
# Start the backend server
npm run server

# In another terminal, start the frontend
npm run dev
  1. Open your browser and navigate to http://localhost:5173

Default Login

  • Username: admin
  • Password: password

Project Structure

petty-cash/
├── src/                    # Frontend source code
│   ├── components/         # React components
│   ├── contexts/          # React contexts
│   ├── hooks/             # Custom hooks
│   ├── i18n/              # Internationalization
│   ├── lib/               # Utilities and helpers
│   └── pages/             # Page components
├── public/                # Static assets
├── server.js              # Backend server
└── vite.config.js         # Vite configuration

Contributing

We welcome contributions! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

This project is licensed under the GNU Affero General Public License v3.0 - see the LICENSE file for details.

Why AGPL-3.0?

We chose the AGPL-3.0 license because:

  • It ensures that modifications to the code remain open source
  • It protects the original authors' rights
  • It requires attribution to the original work
  • It ensures that users of networked applications get access to the source code

Support

If you find this project helpful, please give it a star ⭐️

Author

Acknowledgments

  • Thanks to all contributors who have helped shape this project
  • Special thanks to the open source community for the amazing tools that made this possible

About

A modern, elegant web application for managing petty cash accounts with multi-currency support

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages