Time and money management for freelancers
HARRY TUTTLE: Bloody paperwork. Huh!
SAM LOWRY: I suppose one has to expect a certain amount.
HARRY TUTTLE: Why? I came into this game for the action, the excitement. Go anywhere, travel light, get in, get out, wherever there's trouble, a man alone.
Note: Tuttle is currently in development. The current version is a prototype, not quite ready for production use. However, we are happy to receive feedback from testers.
The working world is changing, the trend is towards freelancing: software developers, designers and journalists appreciate the freedom and creative possibilities of solo self-employment. More and more professionals are choosing it for themselves. It allows them to specialize and gain experience with many projects and clients.
With freelancing, there are many side activities: Marketing, client communication, legal and financial planning - although the latter probably appeals to few solo self-employed people. But what if software could make financial planning in freelancing almost as easy as being an employee? Our tool minimizes risks and makes the financial part of the job easy. Freelancing becomes more efficient, less risky, and therefore more beginner-friendly.
With Tuttle, we are developing a financial planning tool that is tailored to the needs of solo freelancers. We automate and give freelancers more time to do the work they love. The application provides analysis and forecasting functions on income, expenses, disposable income, uncertainty management or explainability of the forecast and convinces with portability, among other things.
We develop the solution as a desktop application. Sensitive financial data is processed locally on the end device without central data collection. For data analysis, we rely on open source tools from the Python ecosystem. We are consciously developing a desktop app with local data storage, not a web app, since your business data is none of our business.
Get an overview of your freelance business at a glance: revenue, outstanding invoices, project budgets and key performance indicators.
Track the time you spend on your projects. Import from your cloud calendar (iCloud), from an ICS file, or from a CSV export of your favorite time tracking tool.
Generate invoices and timesheets automatically from your time tracking data, or create invoices manually by entering the quantity of hours or days directly. Export to PDF and send via email.
Project your income for the next months based on your project planning. See how changes in your schedule affect your bottom line.
Track regular expenses, taxes and social security contributions. Estimate them for the future based on expected revenue.
Calculate your effective income and see how much you can spend without risking your financial security.
Tuttle is a desktop application with a Python core and an Electron UI shell.
- Python core (
tuttle/): Business logic, data models, invoicing, tax calculations, and a JSON-RPC server (tuttle/rpc_server.py) that exposes the core as a stdio service. - Electron shell (
ui/): React + TypeScript desktop UI that communicates with the Python core via JSON-RPC over stdio.
- Python 3.12 or newer
- uv (recommended) or pip
- Node.js 22 or newer
- Clone the repository:
git clone https://github.com/tuttle-dev/tuttle.git
cd tuttle- Install Python dependencies:
uv sync- Install Electron dependencies:
cd ui
npm installcd ui
npm run devThis starts the Electron app in development mode. The Python RPC sidecar is spawned automatically.
just buildThis builds the Python sidecar with PyInstaller and packages the Electron app with electron-builder.
uv run pytestYour contributions are welcome. Please follow the guide (CONTRIBUTING.md).
This project has received funding by the Prototype Fund in 2022.
Copyright 2022-2026 Christian Staudt and contributors. Licensed under the GNU General Public License v3.0.

