Wisdom Tree is a concentration app i am working on.

Overview

Wisdom Tree

Wisdom Tree is a tui concentration app I am working on. Inspired by the wisdom tree in Plants vs. Zombies which gives in-game tips when it grows, Wisdom Tree gives you real life tips when it grows. How can you grow the tree? by concentrating!

Installation

Extra step for mac brew install sdl2_mixer

Extra step for Windows pip install windows-curses or pip3 install windows-curses

Installation from PyPi

pip install wisdom-tree or pip3 install wisdom-tree

Installation using pipx

pipx install wisdom-tree

This allows you to run the app from anywhere

Installation From Github

git clone https://github.com/HACKER097/wisdom-tree

cd wisdom-tree

pip install -r requirements.txt or pip3 install -r requirements.txt

Running the app

  • From anywhere after installation from PyPi or using pipx

wisdom-tree

  • From the github repository (root):

python3 wisdome_tree/main.py

note the underscore

or

wisdom-tree

Usage

Use left and right arrow keys to change music

To add your own music, place it inside the res/ directory (all music must be in .ogg format)

Use up an down arrow keys an enter to select and start Pomodoro timers.

You can replace arrow keys with vim's navigation keys (hjkl)

m to mute music.

space to pause and unpause.

To exit press q

Custom quotes

The user can use any set of quotes by adding a file called qts.txt with one qoute per line to the defualt config location:

{CONFIG_LOCATION}/wisdom-tree

where {CONFIG_LOCATION} is the default place to save configuration files for the operating system:

  • windows: The folder pointed to by LOCALAPPDATA or APPDATA
  • mac/linux: The folder pointed to by XDG_CONFIG_HOME or ~/.config

for now, adding a custom quotes file disables the default quotes

Screenshots

alt text alt text alt text alt text

Features

Wisdom tree plays a variety of music, environmental sounds and white noises to help you concentrate. You can also import your own music into Wisdom Tree.

3000+ quotes and lines of wisdom. You are assured that you will never see the same quote again

Minimal interface and navigation to increase concentration.

Pomodoro timer

Upcoming Features

Play music from youtube

Lo-Fi radio

Comments
  • Fix some typos and spelling mistakes

    Fix some typos and spelling mistakes

    opened by garwil 9
  • Fix for treedata overriding

    Fix for treedata overriding

    Resolves the treedata overriding issue.

    Essentially, it was caused by line 4 in MANIFEST.in.

    graft includes all files in a given directory, which in our case would also be res/treedata.

    Because it is assumed that all files included in the package are important, and should be overridden when updated, it will assume that treedata is a depreciated file that should be overridden with whatever new treedata file is included in the newest package.

    All that is needed to fix this is to exclude the treedata file after grafting the res directory.

    opened by ghost 8
  • play music from youtube and lofi radio don't work

    play music from youtube and lofi radio don't work

    no result show when i use these features, also once I enter search bar of youtube, there's no way to go back (expect Esc would let me go back to the menu).

    opened by qvieth 6
  • Converting to a pip installable app

    Converting to a pip installable app

    1- Added setup.py allowing creation of a package using

    python setup.py sdist bdist_wheel

    1. Adding pypi support. You can now upload this to pypi as a package using: pip install twine twine upload dist/wisdomtree-0.0.1*

    After that, users can just do: pip isntall wisdomtree

    You can check setup.py to confirm that the information provided for the author and github are for the original author of the wisdom-tree (HACKER097).

    1. Adding an entry point called wisdomtree. After installation using pip, users can just do:

    wisdom

    from anywahere to run the app.

    1. Refactoring timer constants on the top of the file to make it easy to add custom values.
    2. Moving main.py and all files to within wisdomtree as recommended for python project structure.
    3. Adding vim key support (See the README)
    opened by yasserfarouk 5
  • wisdom-tree can’t connect to the internet

    wisdom-tree can’t connect to the internet

    I was wondering if anyone knows of a fix for this bug. I’m using the latest version as of Jan 24 2021 at 21:53 UTC. I found wisdom-tree today unable to load music from YouTube, and it seemed to not be connecting to the Internet at all. How would you recommend I fix this issue?

    Thank you.

    opened by blochhamiltonian 4
  • Songs suddenly overlap and then the program breaks.

    Songs suddenly overlap and then the program breaks.

    I installed it with PIP. The first time running, it works fine. After that, the music is overlap and I got this error everytime the tree grow:

    Traceback (most recent call last): File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python310\Scripts\wisdom-tree-script.py", line 33, in sys.exit(load_entry_point('wisdom-tree==0.1.4', 'console_scripts', 'wisdom-tree')()) File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python310\lib\site-packages\wisdom_tree\main.py", line 1030, in run_app main() File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python310\lib\site-packages\wisdom_tree\main.py", line 883, in main addtext(int(maxx / 2), int(maxy * 5 / 6), quote, anilen, stdscr, 2) File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python310\lib\site-packages\wisdom_tree\main.py", line 109, in addtext stdscr.addstr( _curses.error: addwstr() returned ERR

    opened by adrn-mm 2
  • Feature additions

    Feature additions

    Changes:

    • '{' and '}' can now be used to change the volume for sound effects, not including the already changeable ambience/music sound effects
    • 'u' can now be used to toggle quiet mode, which mutes all other sounds except for the sound alerting the end of a timer
    • Many spelling errors were fixed in the qts.txt file
    opened by ghost 2
  • Unable to play any of the Lo-Fi radios

    Unable to play any of the Lo-Fi radios

    Hi,

    Something has suddenly stopped working and I'm now unable to listen to any of the Lo-Fi radios, I haven't tried playing from youtube yet but lo-fi radio 1 was my jam.

    image

    What's the best way to get the log output?

    opened by lukeberry99 2
  • Quotes punctuation editing script and the result

    Quotes punctuation editing script and the result

    I wrote a script called edit_quotes.py to fix common punctuation mistakes in qts.txt. It mostly makes it easier to read.

    I already ran the script and included the result.

    opened by Esamanoaz 2
  • Gobbles a core during breaks

    Gobbles a core during breaks

    I've seen it multiple times now where, when a break starts, the script grabs and holds an entire core for the duration of the break. I don't have any concrete profiling data yet but am opening this to track and see if anybody else sees this behavior.

    opened by glotchimo 1
  • How to reset age

    How to reset age

    I made some sort of mistake when first starting this up and it seems that it has aged a day despite me not having put in an actual Pomodoro session yet. This is triggering my OCD hard so is there a way to reset it?

    opened by ykhurshid 1
  • bug: music dont stop playing after some time

    bug: music dont stop playing after some time

    if i try to pause it after a while, it doesn't stop the music. it's like, there is a another music playing in the background. it stops only if i quit wisdom-tree.

    opened by kyrill-bo 0
  • Unable to play youtube videos

    Unable to play youtube videos

    Sorry to post this again, but I am running the same version, and after having fixed the pytube problem, it was working for a while, but now after booting up wisdom-tree for the first time in a while, and I try to play music from youtube it says

    “ERROR GETTING AUDIO, PLEASE TRY AGAIN”

    Did YouTube change something, rendering the previous PyTube fix now unworkable?

    opened by blochhamiltonian 1
  • [FEATURE REQUEST] Escape button for going back to the previous menu or escaping input field

    [FEATURE REQUEST] Escape button for going back to the previous menu or escaping input field

    After started tree-wisdom, user can change basic song by pressing left or right arrow. If user choose pressing up or down arrow, they will go to select time menu. But then they have no way of going back to the first menu which allow user to change basic song with left and right arrow.

    Also, pressing escape doesn't allow going back while the user is in "Custom Timer" or "Select YouTube Song" input field. (I tried to go back by pressing Ctr+C and weird bug happens).

    https://user-images.githubusercontent.com/71810726/135784065-9d9fa2bb-0cd1-47ab-9a58-ada0d6f2e5a5.mp4

    Expected Behavior: Expect escape also allow going back to the previous menu or escape input field.

    opened by qvieth 1
Releases(v0.0.20)
Owner
NO ONE
kid with a laptop and internet
NO ONE
Home Assistant integration for spanish electrical data providers (e.g., datadis)

homeassistant-edata Esta integración para Home Assistant te permite seguir de un vistazo tus consumos y máximas potencias alcanzadas. Para ello, se ap

VMG 163 Jan 05, 2023
Swubcase - The shitty programming language

What is Swubcase? Swubcase is easy-to-use programming language that can fuck you

5 Jun 19, 2022
Automatically re-open threads when they get archived, no matter your boost level!

ThreadPersist Automatically re-open threads when they get archived, no matter your boost level! Installation You will need to install poetry to run th

7 Sep 18, 2022
Python DSL for writing PDDL

PDDL in Python – Python DSL for writing a PDDL A minimal implementation of a DSL which allows people to write PDDL in python. Based on parsing python’

International Business Machines 21 Nov 22, 2022
PDX Code Guild Full Stack Python Bootcamp starting 2022/02/28

Class Liger Rough Timeline Weeks 1, 2, 3, 4: Python Weeks 5, 6, 7, 8: HTML/CSS/Flask Weeks 9, 10, 11: Javascript Weeks 12, 13, 14, 15: Django Weeks 16

PDX Code Guild 5 Jul 05, 2022
Small exercises to get you used to reading and writing Python code!

Pythonlings Welcome to Pythonlings, an automated Python tutorial program (inspired by Rustlings and Haskellings). WIP This program is still working in

鹤翔万里 5 Sep 23, 2022
A simple chatbot that I made for school project

Chatbot: Python A simple chatbot that I made for school Project. Tho this chatbot is dumb sometimes, but it's not too bad lol. Check it Out! FAQ How t

Prashant 2 Nov 13, 2021
Integration of CCURE access control system with automation HVAC of a commercial building

API-CCURE-Automation-Quantity-Floor Integration of CCURE access control system with automation HVAC of a commercial building CCURE is an access contro

Alexandre Edson Silva Pereira 1 Nov 24, 2021
We are building an open database of COVID-19 cases with chest X-ray or CT images.

🛑 Note: please do not claim diagnostic performance of a model without a clinical study! This is not a kaggle competition dataset. Please read this pa

Joseph Paul Cohen 2.9k Dec 30, 2022
Pattern Matching for Python 3.7+ in a simple, yet powerful, extensible manner.

Awesome Pattern Matching (apm) for Python pip install awesome-pattern-matching Simple Powerful Extensible Composable Functional Python 3.7+, PyPy3.7+

Julian Fleischer 97 Nov 03, 2022
Python based scripts for obtaining system information from Linux.

sysinfo Python based scripts for obtaining system information from Linux. Python2 and Python3 compatible Output in JSON format Simple scripts and exte

Petr Vavrin 70 Dec 20, 2022
Final project in KAIST AI class

mmodal_mixer MLP-Mixer based Multi-modal image-text retrieval Image: Original image is cropped with 16 x 16 patch size without overlap. Then, it is re

SuperSuperMoon 5 May 30, 2022
Petuhlang is a joke-like language, based on Python.

Petuhlang is a joke-like language, based on Python. It updates builtins to make a new syntax based on operators rewrite.

DenyS 9 Jun 19, 2022
Is a util for xferring skinning from one mesh to another

maya_pythonplugins skinTo: Is a util for xferring skinning from one mesh to another args: :param maxInfluences: is the number of max influences on the

James Dunlop 2 Jan 24, 2022
Gaia: a chrome extension that curates environmental news of a company

Gaia - Gaia: Your Environment News Curator Call for Code 2021 Gaia: a chrome extension that curates environmental news of a company Explore the docs »

4 Mar 19, 2022
Open HW & SW for Scanning Electron Microscopes

OpenSEM Project Status: Preliminary The purpose of this project is to create a modern and open-source hardware and software platform for using vintage

Steven Lovegrove 7 Nov 01, 2022
Sodium is a general purpose programming language which is instruction-oriented (a new programming concept that we are developing and devising) [Still developing...]

Sodium Programming Language Sodium is a general purpose programming language which is instruction-oriented (a new programming concept that we are deve

Instruction Oriented Programming 22 Jan 11, 2022
A tool to replace all osu beatmap backgrounds at once.

OsuBgTool A tool to replace all osu beatmap backgrounds at once. Requirements You need to have python 3.6 or newer installed. That's it. How to Use Ju

Aditya Gupta 1 Oct 24, 2021
Coderslab Workshop Projects

Workshop Coderslab workshop projects that include: Guessing Game Lotto simulator Guessing Game vol.2 Guessing Game vol.3 Dice 2001 Game Technologies P

Szymon Połczyński 1 Nov 06, 2021
This program generates automatically new folders containing old version of program

Automated Folder Versions Generator by Sergiy Grimoldi - V.0.0.2 This program generates automatically new folders containing old version of something

Sergiy Grimoldi 1 Dec 23, 2021