Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sebastianpacurar/shopperlist-kivymd
A mobile-based Kivy with KivyMD extension and Sqlite3 (or MySql) project, meant to act as a shop list manager where users can easily manage products and lists of products
https://github.com/sebastianpacurar/shopperlist-kivymd
kivy kivymd mobile-app sql
Last synced: about 2 months ago
JSON representation
A mobile-based Kivy with KivyMD extension and Sqlite3 (or MySql) project, meant to act as a shop list manager where users can easily manage products and lists of products
- Host: GitHub
- URL: https://github.com/sebastianpacurar/shopperlist-kivymd
- Owner: sebastianpacurar
- Created: 2024-02-03T18:36:27.000Z (almost 1 year ago)
- Default Branch: main
- Last Pushed: 2024-03-17T00:06:47.000Z (11 months ago)
- Last Synced: 2024-10-31T04:42:12.201Z (3 months ago)
- Topics: kivy, kivymd, mobile-app, sql
- Language: Python
- Homepage:
- Size: 16.3 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Shopper List Kivy Showcase
- A project made with Kivy and SQL, using the KivyMD material design extension
- Simulates a shopping list, allowing users to create/filter products, create lists, login/register## Table of Contents
- [Setup](#Setup)
- [How To Run](#How-To-Run)
- [DB Setup (optional)](#DB-Setup-optional)### Setup
To get started with this project, follow these steps:
1. Install **_Python 3.11_** if required. May not work on earlier versions!
2. Clone or download repo, then change directory to app's location using a terminal/shell.
- Windows users should use **_cmd_**, instead of **_powershell_** due to ExecutionPolicy restrictions on powershell
3. Create a virtual environment:
```
python3 -m venv my_venv
```
4. Activate the virtual environment by executing the following command:
- Windows users: `my_venv\Scripts\activate`
- Linux/Mac users: `source my_venv/bin/activate`
5. Install dependencies using pip from active venv:
```
pip install -r requirements.txt
```6. When done with the app, to deactivate the virtual environment, type `deactivate` in the terminal.
### How To Run
1. From root folder run `main.py` using python command (either **python**, or **python3**, depending on the OS):
- Linux/Mac users: `python main.py`
- Windows users: `python3 main.py`
2. Log in using the following users:
`user` with password: `1234`
`user2` with password: `1234`
3. Alternatively, users can be created using fake emails, from the Register Screen### DB Setup (optional)
- The app supports both **Sqlite3** and **MySql**.
- **Sqlite3** is enabled by default.1. Sqlite3 DB Generator:
- The db gets generated, with default values, when the db file is missing from `db/` folder.
- To recreate the sqlite3 db, go to `db/` folder and delete `shopping_list_db.db`, then rerun the app.2. MySql setup:
1. Create a db named `shopping_list_db` on your MySql server.
2. Create the tables using `mysql_tables.sql` query file from `setup/sql/` folder.
3. Insert data into the tables using `insert_data.sql` query file from `setup/sql/` folder.
4. Create a `.env` file in the root folder with the following contents:
```
DB_HOST=
DB_USER=
DB_PASSWORD=
```
- Replace **host** with your host (eg: localhost).
- Replace **user** and **pass** with the creds used to create the db at step 1.
5. Run the `add_img.py` script from `setup/` folder (this populates the product img_path column).
6. Change line 19 of `components.py` script from `app/components/` with the following:
```
db = Database(MYSQL)
```