SimpleWallet - Simple wallet for Bitcoin

Overview

Simple Wallet

This is a basic python starter package to be used as a template for creating your own python packages. See "PythonStarterPackage Setup Guide.md" in doc/ for a detailed explanation of the package resources.

Prerequisites

The Python Starter Package app is intended for the Linux terminal and should work on it out of the box. However, you may need to add ~/.local/bin/ to PATH if you are getting a command not found error when trying to run the app. See this thread for details: https://stackoverflow.com/a/34947489. To add ~/.local/bin/ to PATH do the following:

  1. Add export PATH=~/.local/bin:$PATH to ~/.bash_profile.
echo export PATH=~/.local/bin:$PATH > ~/.bash_profile
  1. Execute command.
source ~/.bash_profile

This app can work for Windows and Mac. It is recommended to run it on the Git Bash terminal. Here are the instructions for installing and setting up Git Bash:

  1. Go to https://git-scm.com/downloads and click download.
Version >= 2.34.1
  1. During the installation setup, make sure to include OpenSSH. Recommenced setting should be fine:
Use bundled OpenSSH - This uses ssh.exe that comes with Git.
  1. Leave the other settings as default, click through, and install.

IMPORTANT: For Windows, run this app on the bash.exe terminal rather git-bash.exe. There is a known issue with git-bash.exe messing up Python os commands in import os. See this thread for details: https://stackoverflow.com/questions/33622087/composer-installation-error-output-is-not-a-tty-input-is-not-a-tty/33623136#33623136.

  • bash.exe can be found in your Git folder in the bin/ directory.
  • For example: If git-bash.exe is here C:\Program Files\Git\git-bash.exe then you should find bash.exe here C:\Program Files\Git\bin\bash.exe.

Installation

This library is hosted on PyPi and can be installed via pip:

pip3 install PythonStarterPackage

Usage

After installation, you can run this app in your terminal with this command:

pythonstarterpackage

You can also run it with python3 -m:

python3 -m pythonstarterpackage

Further, you can import the package resources and run them in your own project:

from pythonstarterpackage import *
starter = StarterPkg()
starter.run()

Documentation

The purpose of this project is to show you how to create a standard python package from scratch. This project is inspired by @iamtennislover's excellent getmyip package (https://github.com/iamtennislover/getmyip) and @sigma-coding's great guide on deploying python packages (https://github.com/areed1192/sigma-coding).

Setup

See "PythonStarterPackage Setup Guide.md" in doc/ for a detailed walkthrough of what each of the package resources do. Once you have an understanding of this package, you can clone this package to your local directory and proceed to testing and deployment.

Testing

In the directory containing the setup.py file, you can test the package by installing it in pip3 editable mode. This will allow you make changes to it and test it without having to push the changes each time.

  1. Use pip3 to install the package in editable mode:
pip3 install -e .
  1. Run the package by calling the package directly:
pythonstarterpackage

Or use python3 -m:

python3 -m pythonstarterpackage
  1. Testing the import. Run the test_main.py file:
python3 ./test/test_main.py
  1. Once finished, delete the PythonStarterPackage.egg-info file and uninstall the package with:
pip3 uninstall PythonStarterPackage

Note: It is recommended that you use a virtual environment when testing your package.

  1. To create a virtual environment:
virtualenv venv
  1. Activate the environment use: . venv/bin/activate. On Windows it may be: . venv/Script/activate.

Dependency Mapping

Next, make sure to check the package dependencies and update the setup.cfg file as needed. To do this:

  1. Create (or overwrite) the requirements.txt document with pipreqs. This is an extremely useful tool because it automatically finds all of the relevant versions of dependencies your package relies on and puts them into the requirements.txt file. If you don't have pipreqs, install it with pip install pipreqs.
pipreqs --force --encoding utf-8
  1. Once the requirements.txt is updated, check to see if there is any additional dependencies that need to be added or updated in setup.cfg under the install_requires =. If so, add or update it.

Deployment

Once the package is ready, we can work on deploying the package.

  1. Upgrade setuptools, wheel, and twine (twine will be used in the next part).
pip3 install --upgrade setuptools wheel twine
  1. Build the package with setup.py.
python3 setup.py sdist bdist_wheel
  1. Check the contents of the .whl and .tar.gz distributions. The key things to look for are: (1) all of your package subdirectories like utils are added to both distributions, (2) your config and package data are included in both distributions.
unzip -l dist/*.whl && tar --list -f dist/*.tar.gz
  1. Test a local install of the package and run it to make sure it is working.
pip3 install .
pythonstarterpackage
  1. After testing that it is working, uninstall the package from pip3.
pip3 uninstall PythonStarterPackage

If there are any issues in the above you can always uninstall the package and delete the distributions then proceed to troubleshoot the issue. Once complete start over from the beginning. The commands below allows you to delete the distributions.

rm -rf build dist src/*.egg-info

BE CAREFUL not to miss copy the above command, as if you delete something you didn't intend you will not be able to retrieve.

Upload to PyPi

In order to upload to PyPi make sure to setup your PyPi account first. See "PyPi Setup Guide.md" in doc/ for more details. You will also need to have twine installed and upgraded. Once you have all of this setup do the following:

  1. Upload using twine.
twine upload dist/*
  1. Install your package with pip.
pip3 install PythonStarterPackage

Note: If you get a "Requirements already satisfied..." for PythonStarterPackage when trying to install, it may be because pip still thinks you have the package already installed from the testing earlier. To cleanly break that connection, simply delete the ./src/PythonStarterPackage.egg-info. Then try uninstalling and reinstalling again.

  1. Finally, run the app with: pythonstarterpackage.
  2. Uninstall with: pip3 uninstall PythonStarterPackage.

Support and Contributions

Our software is open source and free for public use. If you found any of these repos useful and would like to support this project financially, feel free to donate to our bitcoin address.

Bitcoin Address 1: 1GZQY6hMwszqxCmbC6uGxkyD5HKPhK1Pmf

alt text

Owner
Mystic
Mystic
A bot that escrows crypto transactions on Reddit

EscrowBot I NEED BCH TESTNET FOR TESTING. Please send me some BCH testnet if you have some: bchtest:qz5eur3prqyvd8u77m6fzf9z6cruz9q7vq4qvgdnuk Depende

Nathan Lim 10 Nov 10, 2022
Get the length of the Instagram encrypted password

instagram-weak-encryption Get the length of the Instagram encrypted password Introduction Instagram and Facebook encrypt the password submitted at log

Giuseppe Criscione 19 Dec 09, 2022
A tool that can encrypt python2 or python3 code with the given password and can reuse with that password

A tool that can encrypt python2 or python3 code with the given password and can reuse with that password

Md Rasel Bhuyan 3 Feb 28, 2022
Python implementation of a blockchain.

The goal of this project is to explain and to make clearer how is a blockchain structured at the very core. It's not built with the intention to replicate an advanced blockchain like Bitcoin or Ether

Rahul raikwar 5 Jan 28, 2022
PyBeacon is a collection of scripts for dealing with Cobalt Strike's encrypted traffic.

PyBeacon is a collection of scripts for dealing with Cobalt Strike's encrypted traffic. It can encrypt/decrypt beacon metadata, as well as pa

NCC Group Plc 162 Dec 21, 2022
Accounting Cycle Program with Blockchain Component

In the first iteration of my accounting cycle program, I talked about adding in a blockchain component that allows the user to verify the inegrity of

J. Brandon Walker 1 Nov 29, 2021
Hide secret texts inside an image, optionally encrypt them with a password using AES-256.

Hide secret texts/messages inside an image. You can optionally encrypt your texts with a password using AES-256 before encoding into the image.

Teja Swaroop 97 Dec 29, 2022
Python wrapper for the Equibles cryptos API.

Equibles Cryptos API for Python Requirements. Python 2.7 and 3.4+ Installation & Usage pip install If the python package is hosted on Github, you can

Equibles 1 Feb 02, 2022
Signarly is a cryptocurrency trading bot.

Signarly is a cryptocurrency trading bot.

Zakaria EL Mesaoudi 5 Oct 06, 2022
Tools for running airdrop and token distribution campaigns on the Solana blockchain.

Overview This repository contains some of the scripts we have used for running our airdrop campaigns and other distributions. Initially, all of these

147 Nov 17, 2022
Generate bitcoin public and private keys and check if they match a filelist of existing addresses that have a nonzero balance

btc-heist Running Install deps, i.e., python3 -m pip install -r requirements.txt Download the CSV dump of all bitcoin addresses with a balance and cut

Denis Khoshaba 103 Dec 05, 2022
Address Validator (Bitcoin & Monero)

The Bitcoin address is an identifier of 26-35 alphanumeric characters, beginning with the number 1, 3 or bc1. 0, O, I, l are removed to avoid visual a

0 Mar 29, 2022
How to setup a multi-client ethereum Eth1-Eth2 merge testnet

Mergenet tutorial Let's set up a local eth1-eth2 merge testnet! Preparing the setup environment In this tutorial, we use a series of scripts to genera

Diederik Loerakker 24 Jun 17, 2022
Simple encryption/decryption utility using Pycryptodome module. Working with AES and RSA algorithms.

EncypherUtil Simple encryption/decryption utility using PyCryptodome module. Working with AES and RSA algorithms. THIS UTILITY IS NOT LICENSED AS CRYP

Egor Yakubovich 0 Jun 14, 2022
An extreme encryption for everyone, encrypt your text before sending to anyone.

An extreme encryption for everyone, encrypt your text before sending to anyone. Alphabets and numbers are going to be encrypted like a hell

Saad 6 Oct 28, 2022
Microllect - Fully automated btc wallet hack,using advanced protocols

Microllect - Fully automated btc wallet hack,using advanced protocols

Arya kaghazkanani 40 Dec 17, 2022
A Python Tool to encrypt all types of files using AES and XOR Algorithm.

DataShield This project intends to protect user’s data, it stores files in encrypted format in device provided the passcode and path of the file. AES

ADITYA SHINDE 4 Dec 20, 2021
Freqtrade is a free and open source crypto trading bot written in Python

Freqtrade is a free and open source crypto trading bot written in Python. It is designed to support all major exchanges and be controlled via Telegram. It contains backtesting, plotting and money man

20.2k Jan 07, 2023
📊Python implementation of the Colin Talks Crypto Bitcoin Bull Run Index (CBBI).

Colin Talks Crypto Bitcoin Bull Run Index (CBBI) This is a Python implementation of the Colin Talks Crypto Bitcoin Bull Run Index (CBBI). It makes use

Kamil Monicz 86 Jan 02, 2023
Python Dash app that tracks whale activity in cryptocurrency markets.

Introduction Welcome! This is a Python-based Dash app meant to track whale activity in buy / sell walls on crypto-currency exchanges (presently just o

Paul Jeffries 549 Dec 25, 2022