💸 Web tool to track user bills (pyramid + html/css + sqlalchemy + alembic + pytest + travisCI + nginx)
A web tool to track your bills built with pyramid web framework.
Note: please take into account that it is built for demo purpose but not for actual usage.
Please check billstracker website via http://178.62.222.165:5007.
docker run -it -p 6543:6543 vyahello/billstracker:0.1.0
After please open 0.0.0.0:6543 endpoint to open web app.
To be able to use and launch app from the source code please execute commands below:
git clone git@github.com:vyahello/billtracker.git
python setup.py develop
pserve development.ini
After please open 0.0.0.0:6543 endpoint to open web app.
Data from storage folder was generated using https://www.mockaroo.com
In case of server reboot/restart please start billtracker
service:
systemctl start billtracker
For database migrations alembic package is used. Please follow alembic.ini file for instructions.
Once new changes were made to the database, please follow instructions below:
alembic revision --autogenerate -m "commit message"
alembic upgrade head
alembic current
Please use the following example notes to proceed with docker image provisioning.
Please follow next command to execute unit tests:
pytest -m unit
Or functional tests, correspondingly:
python -m functional
Project has Travis CI integration using .travis.yml file thus code analysis (black
, pylint
, flake8
, mypy
, pydocstyle
) and unittests (pytest
) will be run automatically
after every made change to the repository.
To be able to run code analysis, please execute command below:
./analyse-source-code.sh
Please check changelog file to get more details about actual versions and it’s release notes.
Author – Volodymyr Yahello. Please check AUTHORS file to see all contributors.
Distributed under the MIT
license. See LICENSE for more information.
You can reach out me at:
I would highly appreciate any contribution and support. If you are interested to add your ideas into project please follow next simple steps:
git
for the first time after cloning with your name
and email
pip install -r requirements.txt
to install all project dependenciespip install -r requirements-dev.txt
to install all development project dependenciesAll recent activities and ideas are described at project issues page.
If you have ideas you want to change/implement please do not hesitate and create an issue.