Skip to content

yash-garg/actual-server-cloudflare

Repository files navigation

Actual Budget on Cloudflare Containers

This project runs Actual Budget - a local-first personal finance tool - on Cloudflare Containers.

What is Actual Budget?

Actual is a 100% free and open-source personal finance tool written in Node.js. It features:

  • Local-first approach with optional synchronization
  • Envelope budgeting methodology
  • Bank account integration
  • Modern web interface
  • Cross-platform support

Architecture

This setup uses:

  • Cloudflare Containers to run the Actual Budget server
  • Cloudflare Workers to route requests to the container
  • SQLite database for data persistence within the container

Getting Started

Prerequisites

  • Node.js 20+
  • npm or yarn
  • Cloudflare account with Containers access

Local Development

  1. Install dependencies:
npm install
  1. Start the development server:
npm run dev
  1. Open http://localhost:8787 to access Actual Budget

Deployment

Deploy to Cloudflare:

npm run deploy

Container Structure

  • container_src/ - Contains the complete Actual Budget application
  • src/index.ts - Cloudflare Worker that routes requests to the container
  • Dockerfile - Container configuration for Actual Budget

Configuration

The container is configured to:

  • Run on port 5006 (Actual Budget's default)
  • Use production Node.js environment
  • Sleep after 10 minutes of inactivity
  • Maintain a single instance for data consistency

Learn More

About

Actual Budget Server running on Cloudflare Containers

Topics

Resources

Stars

Watchers

Forks

Contributors