All Projects → Orbitale → Compotes

Orbitale / Compotes

Licence: AGPL-3.0 License
A small app to manage bank account operations and display rich analytics. Demo app credentials are admin/admin. [In development]

Programming Languages

PHP
23972 projects - #3 most used programming language
Twig
543 projects
Makefile
30231 projects
shell
77523 projects
typescript
32286 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to Compotes

data-models
Collection of various biomedical data models in parseable formats.
Stars: ✭ 23 (-23.33%)
Mutual labels:  csv
django-csv-export-view
Django class-based view for CSV exports
Stars: ✭ 17 (-43.33%)
Mutual labels:  csv
plenopticam
Light-field imaging application for plenoptic cameras
Stars: ✭ 111 (+270%)
Mutual labels:  application
dbd
dbd is a database prototyping tool that enables data analysts and engineers to quickly load and transform data in SQL databases.
Stars: ✭ 30 (+0%)
Mutual labels:  csv
csv-to-sqlite
A desktop app to convert CSV files to SQLite databases!
Stars: ✭ 68 (+126.67%)
Mutual labels:  csv
brain-brew
Automated Anki flashcard creation and extraction to/from Csv
Stars: ✭ 55 (+83.33%)
Mutual labels:  csv
AndrOBD-Plugin
AndrOBD plugin development project
Stars: ✭ 38 (+26.67%)
Mutual labels:  csv
qwery
A SQL-like language for performing ETL transformations.
Stars: ✭ 28 (-6.67%)
Mutual labels:  csv
spparser
an async ETL tool written in Python.
Stars: ✭ 34 (+13.33%)
Mutual labels:  csv
phpindonesia.or.id-membership2
PHP Indonesia - Membership Application - Reloaded
Stars: ✭ 31 (+3.33%)
Mutual labels:  application
nimblenote
Simple keyboard-driven note taking application for macOS, Linux and Windows.
Stars: ✭ 31 (+3.33%)
Mutual labels:  application
hydrus
[DEPRECATED] Superseded by https://github.com/sul-dlss/happy-heron/ An application for self-deposit of digital objects into the Stanford Digital Repository for preservation and access.
Stars: ✭ 12 (-60%)
Mutual labels:  application
tf2-rich-presence
Discord Rich Presence for Team Fortress 2
Stars: ✭ 30 (+0%)
Mutual labels:  application
VBA-CSV-interface
The most powerful and comprehensive CSV/TSV/DSV data management library for VBA, providing parsing/writing capabilities compliant with RFC-4180 specifications and a complete set of tools for manipulating records and fields.
Stars: ✭ 24 (-20%)
Mutual labels:  csv
text2json
Performant parser for textual data (CSV parser)
Stars: ✭ 33 (+10%)
Mutual labels:  csv
Lazycard
A simple flashcard application where cards are formatted with Markdown.
Stars: ✭ 18 (-40%)
Mutual labels:  application
civ
A simple CSV interactive viewer written in Go
Stars: ✭ 23 (-23.33%)
Mutual labels:  csv
cli
CLI for Vela (Target's official Pipeline Automation Framework)
Stars: ✭ 23 (-23.33%)
Mutual labels:  application
jupyterlab-spreadsheet-editor
JupyterLab spreadsheet editor for tabular data (e.g. csv, tsv)
Stars: ✭ 72 (+140%)
Mutual labels:  csv
DataAnalyzer.app
✨🚀 DataAnalyzer.app - Convert JSON/CSV to Typed Data Interfaces - Automatically!
Stars: ✭ 23 (-23.33%)
Mutual labels:  csv

This app is being rewritten to simplify installation for end-users. The work is ongoing in the rewrite branch.


🍎 Compotes 🍏

A small application to visualise bank operations in graphs and plots.

🧮

Compotes screenshot


Documentation index


Contribute

If you want to contribute, you can directly go to the Roadmap, there are TONS of things you can do.

Some of them are really straightforward!

Install

Note: This project is meant to be used locally. Put it online at your own risk, since these may contain sensitive information of your own.

This is a PHP/Symfony project, so:

  • Make sure you have a working PHP 7.4 setup.
  • Download the Symfony CLI on symfony.com/download if you do not have it yet, and make sure it is accessible globally.
  • Make sure you have Docker installed and accessible globally, as well as Docker Compose.

    Note: if you do not want to use Docker, then you need a MySQL server and you must change the DATABASE_URL value in .env.local to point it to your running server. You will also need to install Node.js 12+.

  • Run make install to install the dependencies (if you do not use Docker, check the Makefile to know what commands to execute).
  • That's it, it's running!
  • At this stage, you can go to https://127.0.0.1:8000, default credentials are admin/admin.
  • Or you can also run make open and enjoy :)

For any further question on how to customize the setup, feel free to run make to list all available commands, or directly check the Makefile itself.

Install Compotes on services

Compotes is made to be self-hostable!

We provide built-in solutions for easy setups and faster deployments.

Install on Heroku

Install on a dedicated server, VM or VPS

Operations

The concept of Operation is omnipresent in Compotes.

An operation represents a single bank account operation that you must have imported from your bank data.

Check the operations documentation for more.

Set up the administration panel

As everything is made on Compotes for a quick setup, there might be things you want to change, such as the administration password.

Check the admin panel documentation for more.

Roadmap/TODO list

Feel free to contribute 😉.

  • (Easy pick!) Make many more analytics dashboards (that's what this app is for in the first place, with Highcharts).
  • Use the "triage" feature in the "import file" command.
  • Allow a preview of an imported CSV file (really important!).
  • Support JS closures in Chart objects (by using a placeholder to remove quotes maybe?).
  • Add tags translations (maybe using an extension like gedmo or knp?).
  • Implement more source file types like xls, ods, etc., that could be transformed to CSV before importing them. PHPSpreadsheet is already installed, though not used yet.
  • Custom source file format (only CSV for now, and that's perfectly fine for me).
  • Change input operation date format (for now it's d/m/Y H:i:s O as of French date format).
  • Add tests (this is a continuous task anyway ).
  • Support for Bills (a Bill object and a BillItem one, and maybe associate a Bill with one or more Operation objects with a OneToMany relationship so multiple operations can associate with one bill).
  • Support for sub-operations (to allow cutting an operation in multiple sub-operations so we can get the "details" of an operation, each sub-operation should also be able to be tagged).
  • Imagine a support for Sylius bundles?

✔️ Done already:

  • Operation tags (insurance, internet provider, car loan, etc.). Multiple tags per operation.
  • Demo app at https://piers.ovh/compotes/ with credentials admin/admin and database reset every day.
  • Added default tags (in French only for now).
  • Docker setup with Compose.
  • Added tons of other commands to the Makefile.
  • Made a first PoC for the analytics dashboard.
  • Allow to upload Operations files directly from the backoffice. It even has a nice drag&drop integration to customize line column fields!
  • Change CSV headers at runtime.
  • Change CSV delimiter/enclosure at runtime.
  • Add a lot of fixtures to play with.
  • Removed the "import from command line" feature. Using EasyAdmin allows more customization.
  • Added a big "triage" system to avoid having duplicates.
  • Multiple bank accounts (needs to migrate all existing data to a "default" account created via migration).
  • Operation currency (added via the bank account in the end).
  • Heroku auto-install script

License

Project is developed under AGPL-3.0 license. Check the LICENSE file for more information.


🍎🥝🍏

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].