Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wyntonfranklin/purdm-web-app
A open source expense manager for the web and mobile.
https://github.com/wyntonfranklin/purdm-web-app
expense-manager finance-tracker open-source personal-finance php self-hosted yii
Last synced: 4 months ago
JSON representation
A open source expense manager for the web and mobile.
- Host: GitHub
- URL: https://github.com/wyntonfranklin/purdm-web-app
- Owner: wyntonfranklin
- License: mit
- Created: 2019-12-19T23:49:54.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2021-05-11T12:12:10.000Z (over 3 years ago)
- Last Synced: 2024-09-30T22:16:12.045Z (4 months ago)
- Topics: expense-manager, finance-tracker, open-source, personal-finance, php, self-hosted, yii
- Language: JavaScript
- Homepage: https://wftutorials.com/purdm
- Size: 4.79 MB
- Stars: 34
- Watchers: 4
- Forks: 10
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![screenshot](./purdm_icon.png)
# PURDM - Your Own Expense Manager (wfexpenses)
Purrrr...diem. PURDM is a open source expense manager/host it yourself solution web application. It allows you
to host your own expense manager that you can access via web and mobile application.
This means you have full control of your data and not some other company. You can delete your application
and all your data will be gone. Keep companies out of your business with PURDM.![screenshot](./screenshots/screenshot_001.png)
## Installation
You can install PURDM on any web host that supports PHP. Head to the
[releases](https://github.com/wyntonfranklin/wfexpenses/releases)
section and download the latest release. Copy this file to your web server and
get started hosting your own expense manager.The following files must be writable by the server. Give the
appropriate permissions
* /assets
* /protected/runtime
* /protected/update.sh**Do the above otherwise the application would not work correctly**
## Quick start
You can easily get started by spinning up a droplet.
To learn more click [here](https://marketplace.digitalocean.com/apps/purdm).### Your own PURDM Domain
If you need a PURDM domain to point to your server we can point it for you.
Use this form [here](https://forms.gle/qThfHMoKHAdgafKs8) to submit your application.
So you can have john.purdm.com or mary.purdm.com. Or any sub domain you like.### Support for the app
If you need support or additional features added to your version of PURDM that is possible.
Use this form [here](https://forms.gle/qThfHMoKHAdgafKs8) to submit a support request or feature upgrade.Some services offered
* Setup and installation (Digital Ocean, Linode)
* Changes and updates (Request changes to your expense manger)
* New features (Suggest and get sent you own updates)## Server Requirements
* Linux Server
* PHP > 5.6
* PHP Curl
* MySQL
* php-dom## Features
PURDM comes with some great features.
* Dashboard showing net worth and month income vs expenses
* Insights giving drill down of your expense. You can change the date ranges.
* Calendar so you can see went you made certain purchases
* Create as many accounts as you need
* Recurring transactions
* Insights on specific categories and expenses
* Colourful graphs and charts
* Mobile application
* Add multiple users
* Download/Upload Transactions any time you want
* Get frequent updates## Mobile Application
Currently we have an android application for PURDM. All you need to
do is provide the domain and your user credentials and you are good
to go. Get it [here](https://play.google.com/store/apps/details?id=com.purdm.app&hl=en)## Android Development
The android app is now open source.
You can check out the repo [here](https://github.com/wyntonfranklin/purdm-android).## Development
Download this repo or use this link [here](https://github.com/wyntonfranklin/wfexpenses.git)
You need to download Yii and add it to the repo you downloaded. You can access
a copy of the Yii version I used [here](https://wfspace.sfo2.digitaloceanspaces.com/yii.zip).**Requirements**
* Yii 1.1
* PHP
* MySQL
* Grunt
* Node
* Npm### Steps
* First download the repo giving the link provided.
* Insure you have in your PHP version the required server requirements listed above.
You also need to have node js installed on your computer.
* Download the Yii version via the link provided [here](https://wfspace.sfo2.digitaloceanspaces.com/yii.zip).
Place the extracted version of yii in your base directory. The name of the folder should be yii.
* Download the extensions required to run this application from [here](https://wfspace.sfo2.digitaloceanspaces.com/extensions.zip)
These extensions you download will be required to run your application properly. Place the extensions in your protected folder under the folder name
extensions.
* In your database create a database to hold your application.
* Run `npm` install from your base directory to add the packages required to develop.
* Once you do this you can run the `grunt` command in your base folder.
* Create a folder called `assets` in your base directory.
* Create a folder called `runtime` in your protected directory.
* Setup your configuration path for your server or virtual host. An example can be found below.```html
DocumentRoot "C:\Users\wfranklin\Documents\GitHub\wfexpenses"
ServerName demo.wfexpenses.com
ServerAlias demo.wfexpenses.com
RewriteEngine on
RewriteRule ^index.php/ - [L,R=404]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
AllowOverride All
Require all Granted
AllowOverride All
Require all Granted
```
* Head to your base domain and run the setup.
* If you need further directions on running a `yii 1.1` version app check out this tutorial [here](https://app.wftutorials.com/tutorial/111).
You can look at the **directory structure** and **additional configurations** chapters for more insight.### Known issues
When running in a windows environment you might need to update the `create_dist.sh` code or make some changes to it.
The `tar` command needs to be `tar --force-local -rf`. This is so that semicolons work.
Learn more [here](http://www.gnu.org/software/tar/manual/html_section/tar_45.html#file)## Acknowledgements
* Bootstrap theme - https://startbootstrap.com/themes/sb-admin-2/