/bestoon

یک پروژه برای دیدن اینکه چطوری یک ایده می تونه به مرحله اجرا برسه. قدم به قدم فیلم گرفتم و منتشر کردم و خود سیستم هم برای عموم قابل استفاده است

Primary LanguageJavaScript

Bestoon

A simple Income and Expense system.

How to run

To run Bestoon in development mode; Just use steps below:

  1. Install python2, pip, virtualenv in your system.
  2. Clone the project https://github.com/jadijadi/bestoon.
  3. Make development environment ready using commands below;
git clone https://github.com/jadijadi/bestoon && cd bestoon
virtualenv -p python2 build  # Create virtualenv named build
source build/bin/activate
pip install -r requirements.txt
mv  bestoon/settings.py.sample bestoon/settings.py
python manage.py migrate  # Create database tables
  1. Run Bestoon using python manage.py runserver
  2. Go to http://localhost:8000 to see your Bestoon version.

Run On Windows

If You're On A Windows Machine , Make Environment Ready By Following Steps Below:

  1. Install python2, pip, virtualenv
  2. Clone the project using: git clone https://github.com/jadijadi/bestoon.
  3. Make Environment Ready Like This:
cd bestoon
virutalenv -p "PATH\TO\Python.exe" build # Give Full Path To python.exe
build\Scripts\activate # Activate The Virutal Environment
pip install -r requirements.txt
move bestoon\settings.py.sample bestoon/settings.py
python manage.py migrate # Create Database Tables
  1. Run Bestoon using python manage.py runserver
  2. Go to http://localhost:8000 to see your Bestoon version.

Run tests

To run tests in Bestoon simply use python manage.py test.

If you want more verbosity you can use -v option with 0, 1, 2, or 3.; e.g. python manage.py test -v2

More Clients

The project contains two different clients (command line and an ionic app for android/iOS) but all the 3rd party clients are more than welcomed. Add yours below.

TODO

  • a restful login service. user will give user pass and will get her token
  • local storage for ionic app. will store token and will using it when calling anything
  • create and submit the APK!
  • expand the error messages on the server side. client should understand that token was not valid and refer user to login page
  • logging system