Skip to content

Ledger-CLI+GUI in Pure PHP #1

Description

@pedroalbanese

@kmpm, @larsks, @porjo, @howeyc, @qjcg, @verkaro, @jrick, @musvaage, @ghost, @whereswaldon, @aodhan-domhnaill

Greetings!

Greetings everyone; nice to meet you.

I know many of you are users of the go-ledger tool. I would like to proudly present Ledger-CLI written entirely in pure PHP. This project is a fork of go-ledger from 2021 (before Chris Howey adopted the Cobra console).

This project consists of three modules:

  • Library
  • CLI
  • GUI

The GUI is written in PHP/HTML/AJAX and is a fully interactive alternative to go-ledger’s lweb tool. It allows you to host one or more hidden journals discreetly on a simple free subdomain with 0600 permissions. The GUI is password-protected (optional) and is the only way for users without FTP access to interact with the journal.

GUI Overview

The GUI is composed of a terminal and only two tabs:

  • One for adding transactions with an unlimited number of entries
  • One for importing CSV files (an idea of mine that was later incorporated into the Ledger tool in 2021)

It was designed to run simultaneously on my mobile phone and notebook, without requiring any cloud service to access the journal from multiple devices.

Source Code

Live Demos

If you want to test it on a server, simply add the files ledger.php, ledger-cli.php, limport.php, and one of the index.php files.
I created three different themes, available here (my homepage):

The passphrase is "admin123".

Preview:
Image

Compatibility

This project consists of ledger-cli implemented in pure PHP, 100% compatible with Chris Howey’s Ledger tool. It enables browser integration without sacrificing terminal capabilities or underlying functionality, removing the need to keep a machine permanently running an lweb server. Use --help to explore the tool. Try bal --payee="Coffee".

Suggestions and feedbacks are very welcome.

Att.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions