jam.py-v5 5.5.4
Jam.py Application Builder is an event-driven framework for the development of web database applications.
License: BSD


[![Package on PyPI](https://img.shields.io/pypi/v/jam.py-v5.svg)](https://pypi.org/project/jam.py-v5) [![Supported Python Versions](https://img.shields.io/pypi/pyversions/jam.py-v5.svg)](https://pypi.python.org/pypi/jam.py-v5) [![Documentation Status](https://readthedocs.org/projects/jampy-docs/badge/)](https://jampy-docs.readthedocs.io) [![Downloads](https://static.pepy.tech/badge/jam.py)](http://pepy.tech/project/jam.py)


## Jam.py Application Builder (web framework)

## This is forked jam.py to continue the support and development, since Andrew is retiring from jam.py project. The GH organisation name is jam.py-v5, since we are hoping to release official v7 this year. 

Jam.py is raising funds to keep the software free for everyone, and we need the support of the entire community to do it. [Donate to Jam.py on Github](https://github.com/sponsors/platipusica) to show your support.


## From an idea of a web database application to a live website in no time, for free


[![alt text](https://github.com/jam-py-v5/jam-py/blob/master/assets/images/JAMPY_Readme.gif)](https://northwind.pythonanywhere.com)


If you are not a professional developer or an expert in databases, you can use
Jam.py to store, share and analyze your data.
    
Please watch these videos to see how easy it is to create and setup Jam.py
applications.

* [Creating CRM web database applications from start to finish in 7 minutes with Jam.py framework](https://youtu.be/vY6FTdpABa4)
* [Setting up interface of Jam.py application using Forms Dialogs](https://youtu.be/hvNZ0-a_HHw)

If you are a professional, you can use Jam.py to create various tools, dashboards,
as well as large-scale business applications with complex internal logic.

Please watch the
[Jam.py framework applications](https://youtu.be/qkJvGlgoabU)  video
to see some applications developed in Jam.py.

More demos on PythonAnywhere:

- [SAP Theme Demo](https://jampyapp.pythonanywhere.com)
- [Personal Account Ledger from MS Access template](https://msaccess.pythonanywhere.com)
- [NorthWind Traders from MS Access template (wip)](https://northwind.pythonanywhere.com)
- [The ERP POC Demo with Italian and English translations](https://sem.pythonanywhere.com)
- [Assets/Parts Application (wip, currently Jam V7 Demo)](https://jampy.pythonanywhere.com)
- [Machine Learning (wip)](https://mlearning.pythonanywhere.com)
- [Auto Parts Sales for Brazilian Market (Portuguese)](https://carparts.pythonanywhere.com)
- [Resourcing and Billing Application from MS Access DB (wip)](https://resourcingandbilling.pythonanywhere.com)
- [Job Positions tracking App from MS Access DB (wip)](https://positionstracking.pythonanywhere.com)
- [Kanban/Tasks Application, V7](https://kanban.pythonanywhere.com)
- [Assets Inventory Application, V7 (wip)](https://assetinventory.pythonanywhere.com)
- [Google Authentication, V7](https://ipam2.pythonanywhere.com)
- [IP Management (V7, wip)](https://ipmgmt.pythonanywhere.com)


Jam.py alternative site:

https://jampyapplicationbuilder.com/


## Main features

Jam.py is an object oriented, event driven framework with hierarchical structure, modular design
and very tight DB/GUI coupling. The server side of Jam.py is written in [Python](https://www.python.org),
the client utilizes [JavaScript](https://developer.mozilla.org/en/docs/Web/JavaScript),
[jQuery](https://jquery.com) and [Bootstrap](http://getbootstrap.com/2.3.2).

* Simple, clear and efficient IDE. The development takes place in the
  Application builder, an application written completely in Jam.py.

* “All in the browser” framework. With Jam.py, all you need are two pages
  in the browser, one for the project, the other for the Application builder.
  Make changes in the Application builder, go to the project, refresh the page,
  and see the results.

* Supports SQLite, PostgreSQL, MySQL, Firebird, MSSQL and
  Oracle databases. The concept of the framework allows you to migrate from
  one database to another without changing the project.

* Authentication, authorization, session management, roles and permissions.

* Automatic creation and modification of database tables and SQL queries generation.

* Data-aware controls.

* Open framework. You can use any Javascript/Python libraries.

* Rich, informative reports. Band-oriented report generation based on
  [LibreOffice](https://www.libreoffice.org) templates.

* Charts. You can use free [jsCharts](http://www.jscharts.com) library
  or any javascript charting library to create charts to represent and analyze your application data.

* Allows to save audit trail/change history made by users

* Predefined css themes.

* Develop and test locally update remotely. Jam.py has Export and Import
  utilities that allow developer to store all metadata (database structures,
  project parameters and code) in a file that can be loaded by another
  application to apply all the changes.

## Documentation


All documentation is in the "docs" directory at the moment, and online at
https://jampy-docs.readthedocs.io/ or https://jam-py-v5.github.io/jampy-docs/.

Please visit https://jampy-docs.readthedocs.io/en/latest/intro/install.html for Python and
framework installation or https://jampy-docs.readthedocs.io/en/latest/intro/new_project.html how to create a
new project.

For general discussion, ideas or similar, please visit mailgroup https://groups.google.com/g/jam-py or
FB page https://www.facebook.com/groups/jam.py/ (paused atm)


## License

Jam.py is licensed under the BSD License.

## Original Author

Andrew Yushev

See also the list of [contributors](http://jam-py.com/contributors.html)
who participated in this project.

## Maintainers

[crnikaurin](https://github.com/crnikaurin), [platipusica](https://github.com/platipusica)