30 open-source projects similar to expensify/app, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best App alternative.
Akaunting is a modular business enterprise resource planning system and self-hosted accounting software. It provides a comprehensive platform for small business financial management, centering on a double-entry bookkeeping system with a general ledger and chart of accounts. The platform is designed for extensibility through a module-based architecture and a dedicated marketplace for procuring third-party applications. It supports multi-tenant data isolation and utilizes role-based access control to manage granular user permissions. Its capability surface covers a wide range of business opera
This application is a personal finance tracker that utilizes a cloud-based spreadsheet as its primary database for recording and organizing daily spending. It provides a web-based dashboard for managing individual transactions and generating monthly summaries to assist with budget oversight. The project distinguishes itself by leveraging spreadsheet-based storage to enable collaborative financial management, allowing multiple users to access and update shared records in real time. It further automates record maintenance through recurring transaction scheduling and integration with external wo
ezbookkeeping is a self-hosted personal finance manager designed for tracking income and expenses. It functions as a multi-currency bookkeeping tool that manages account balances and total wealth through a private application. The system distinguishes itself by integrating a language model transaction processor to extract data from receipt images and automate financial entry. It also provides a REST-based finance API and a corresponding command-line client, enabling programmatic finance automation and the integration of records with external scripts. The platform includes a financial data an
Build Offline-First Apps for Web and React Native
uni-app is a cross-platform framework for building mobile and web applications from a single Vue.js codebase. It provides a multi-platform app compiler and a cross-platform UI library to ensure consistent behavior and visual presentation across different operating systems. The project features a native API bridge and a universal plugin system that wrap native SDKs into a unified interface, allowing developers to access device hardware and operating system functions. It utilizes a specialized rendering engine and native performance compilation to bypass standard document overhead and achieve h
Amis is a JSON-driven UI framework and low-code page builder used to generate complex administrative interfaces from schema configurations. It functions as an administrative interface generator that renders web pages and data-entry forms using declarative JSON specifications to eliminate manual component coding. The framework utilizes a schema-driven component library where reusable UI elements are instantiated and managed through structured data definitions. This approach enables a rapid prototyping workflow by allowing interface designs and layouts to be modified via schema files without re
Beancount is a plain-text double-entry accounting system. It enforces zero-sum transactions, organizes accounts into a hierarchical five-type tree, and verifies balances at specific dates using precision-derived tolerances. Transactions are recorded in plain-text files with a strict syntax that supports currency-specific rounding, automatic interpolation of missing amounts, and comprehensive metadata including tags, links, and payee annotations. Beyond core bookkeeping, Beancount offers investment portfolio tracking with lot-based cost basis management, configurable booking strategies (FIFO,
This project is a cross-platform development framework and application boilerplate designed to build mobile, desktop, and web applications from a single shared codebase. It functions as a React Native development tool, utilizing declarative components to render platform-specific user interfaces while maintaining consistent business logic across all supported environments. The framework distinguishes itself by centralizing core application rules and data management, ensuring identical functional results regardless of the target device. It employs a build-time file resolution system that allows
Firefly III is a self-hosted personal finance management system built on a double-entry bookkeeping engine. It provides a comprehensive platform for tracking income, expenses, and account balances while maintaining financial integrity through structured accounting principles. Designed for private use, the system supports multi-user access, allowing independent financial administrations to coexist within a single installation. The platform distinguishes itself through extensive automation and integration capabilities. It features a robust REST JSON API and webhook system that enables programma
Uno is a cross-platform development framework used to build native mobile, web, desktop, and embedded applications from a single C# and XAML codebase. It provides a native UI framework that renders visual elements across different operating systems using shared layout and styling rules. The platform features a hot reload development environment that allows for the modification of code and layouts in a running application without restarting the process. It supports a dual-mode rendering system, offering a choice between a shared cross-platform canvas and native platform controls. The framewor
Big Capital is a cloud accounting management system designed to track assets, liabilities, and equity through a digital ledger. It provides a multi-tenant organizational framework that supports multi-branch tracking and regional currency settings. The system distinguishes itself through integrated bank feed management, utilizing secure token exchanges and webhook processing for automated transaction synchronization and rule-based categorization. It also features a multi-currency ledger that handles base currency conversions and specific currency codes. The platform covers comprehensive finan
Wallos is a self-hosted subscription tracking dashboard and financial expense manager. It serves as a budgeting tool for monitoring recurring payments and due dates to ensure subscription services are paid on time. The application identifies expenditure patterns through personal finance analytics, utilizing visual charts and spending statistics. It handles multi-currency finance tracking by retrieving live exchange rates from external services to translate global currencies into a single primary value. Additional capabilities include a notification system that sends payment reminders via ema
Cashew is a local-first budgeting application and personal finance tracker designed to log income and expenses across multiple accounts. It functions as a multi-currency expense manager and personal net worth dashboard, storing financial records in an on-device database to ensure private financial data storage. The project distinguishes itself through a focus on privacy and flexibility, offering optional personal cloud synchronization for multi-device access and biometric security to protect sensitive information. It features a currency conversion engine that calculates total values across di
Crater is an open-source invoicing and expense tracking software designed for individuals and small businesses. It serves as a self-hosted billing platform that allows users to monitor the overall financial health of a business by recording professional services rendered and tracking outgoing costs. The system functions as a payment gateway integrator, connecting to third-party providers such as Stripe to process secure transactions for issued invoices. It provides specialized tools for freelance invoice management, including the generation of professional billing documents and cost estimates
Crater is an invoicing and billing software system designed for creating professional invoices, estimates, and recurring billing schedules. It serves as a multi-entity accounting manager, allowing for the organization and separation of financial data and billing records across multiple different business organizations. The platform integrates payment gateway services to collect funds directly from customers and provides a secure client billing portal where customers can access account details and pay outstanding invoices. It also functions as an expense tracking application to log outgoing co
Zustand is a state management library that provides a centralized store for managing shared application data. It functions as a reactive container that connects application state to components, allowing them to subscribe to specific slices of data and trigger updates automatically. By utilizing selector-based data access and immutable state updates, the library ensures that components only re-render when their observed data changes, maintaining a predictable and efficient data flow. The library distinguishes itself through a pluggable, middleware-based architecture that allows for the extensi
Midday is an open-source, self-hosted financial dashboard designed for business expense management and automated bookkeeping. It functions as a centralized platform that aggregates transaction history and account balances from multiple external banking providers, allowing users to maintain full control over their sensitive financial data on private infrastructure. The platform distinguishes itself through its automated reconciliation workflows, which categorize business expenditures and generate structured financial reports to reduce manual data entry. By integrating with financial data aggre
This project is a client-side data management library and query orchestrator designed to synchronize remote server state with local client state. It functions as a type-safe state manager and cache orchestrator that coordinates data loading across diverse backends, including REST, GraphQL, and WebSockets. The system distinguishes itself through a durable workflow engine for executing asynchronous functions with persisted state and deterministic replay. It also provides a standardized AI integration adapter to connect large language models to application data, supporting real-time response str
React Easy State is a state management library for React that utilizes the observable store pattern to synchronize user interface components with application data. It employs ES6 proxies to wrap plain JavaScript objects, enabling the system to monitor data mutations and automatically trigger component re-renders whenever accessed properties are modified. The library distinguishes itself through a transparent reactive system that eliminates the need for explicit data binding or boilerplate code. By tracking dependencies during the rendering process, it ensures that components only update when
TinyBase is a reactive data store and in-memory relational database designed for client-side state persistence. It serves as a local-first sync engine that merges distributed state using conflict-free replicated data types and logical clocks to ensure deterministic data convergence. The project features a schema validation library that converts external definitions from tools like Zod, Yup, and TypeBox into type-safe store definitions. It provides an infrastructure for real-time collaborative editing, utilizing synchronization with Automerge, Yjs, and PartyKit to maintain consistent state acr
DoctrineExtensions is a collection of reusable behavioral extensions for Doctrine ORM designed to automate common entity tasks. It provides a system for tracking historical changes to database entities, implementing soft deletion workflows, managing nested set tree structures for hierarchical data, and storing translated field values based on language locales. The project distinguishes itself by providing specialized tools for entity auditing, which logs modified values and timestamps, and a translation framework for multilingual content management. It also includes a tree manager to organize
This is a mobile object database and NoSQL local data store that replaces relational tables with a schema-based model. It functions as a reactive data store, using live object observations and change notifications to trigger automatic user interface refreshes. The system provides built-in mobile cloud data synchronization to keep local datasets consistent with a remote server across multiple devices. It also includes security features for encrypted local storage, protecting sensitive on-disk data using at-rest encryption keys and fine-grained access control. Broad capabilities include object
re-frame is a functional framework for building single-page applications in ClojureScript. It provides a centralized, immutable database that serves as the single source of truth for the entire application state, enforcing a strict unidirectional data flow where events trigger state transitions and subsequent view updates. The framework distinguishes itself through a reactive signal graph and an interceptor-based middleware pipeline. By treating application logic as a sequence of data-driven events and declarative side effects, it decouples business logic from the view layer. This architectur
mobx-react is a library that provides state bindings to connect React components to MobX observable state. It functions as a component state synchronizer, ensuring that user interface elements automatically re-render only when the specific observed data they consume changes. The project enables a decoupled state architecture by moving business logic and domain state into standalone stores, separating data management from the React component tree. It facilitates global state distribution across deep component hierarchies using providers and context to avoid manual prop drilling. The library c
This project is an ARMv8 assembly programming guide and tutorial designed to teach the translation of high-level logic into low-level machine instructions. It serves as a low-level systems programming reference for writing and executing code specifically for the ARMv8 architecture. The resource provides instructions for cross-platform assembly implementation, focusing on unifying symbol naming and memory addressing to ensure source code builds across different operating systems. It also covers the integration of assembly routines with higher-level languages using standardized calling conventi
Instant is a real-time backend as a service and relational graph database designed to synchronize data across clients automatically. It functions as a data synchronization layer that provides authentication, permissions, and relational data storage for web and mobile applications. The platform includes an optimistic UI framework that updates local interfaces immediately during writes and handles automatic server rollbacks. It also features a real-time presence system to broadcast transient user states, such as cursor positions and online status, to other connected clients. The system manages
Vuex is a centralized state management library for Vue.js applications. It provides a single source of truth for application data, ensuring consistent state across a component tree through a reactive data store. The system organizes the global state tree into independent, namespaced modules to prevent naming collisions and maintain code organization. It distinguishes between synchronous mutations for predictable state transitions and asynchronous actions for handling complex operations. The library includes cached getters for derived state, store lifecycle hooks for mutation interception, an
Crater is an open source invoicing software and multi-tenant accounting system. It serves as a financial management tool for creating professional invoices and estimates, tracking business expenses, and managing the financial records of several distinct business entities within a single instance. The platform integrates with payment processors to collect client payments automatically and provides a dedicated billing portal where customers can access their history and pay invoices online. It includes a template-based engine for generating PDF invoices and supports the automation of recurring s
Dokploy is a self-hosted platform-as-a-service designed to simplify the deployment and management of containerized applications and databases. It provides a centralized control plane that decouples administrative management from application workloads, allowing users to oversee infrastructure across multiple server nodes through a unified web interface or a command-line tool. The platform distinguishes itself through an extensive library of pre-configured application templates, enabling the rapid deployment of databases, identity providers, and various productivity or development tools. It sup
This project is a community-curated directory of open-source software designed for deployment in private server environments and home labs. It serves as a comprehensive resource for discovering independent, self-hosted alternatives to mainstream cloud services, enabling users to maintain full data ownership and control over their digital infrastructure. The directory is structured through a hierarchical taxonomy that organizes a vast collection of applications into logical categories, ranging from media management and data analytics to private communication and team productivity tools. It dis