Skip to content

TERNION-1121/Gamify-Life

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎮Gamify Life🎯

Welcome to Gamify Life, or simply GLi :]

image


The Best Way to Pursue Your Goals 🎯

You must've played games, right? And even if you have not, you must know friends or people who go crazy when it's about games.

And if you've ever wondered, "What makes games interesting?", then You and I were once on the same track of thoughts :)

Generally, Games have a Main Story. The Player plays Main Quests, as well as Side Quests, to gain experience and confidence to win the Game. This Project is dedicated on providing a similar approach for "Your Life". Different types of goals serve as the Side and Main quests for our life. Rewarding ourselves with accordance to the goal accomplished drives us forward 🚗...

How did I Gamify Life? 🎮

It's simple, the Program groups our everyday goals and tasks, into 5 types, namely:

  1. Academic
  2. Sports
  3. Self-Oriented
  4. Work/Skill-Oriented
  5. Others

Moreover, it further divides them into 3 Tiers, on the basis of their difficulty- Easy, Moderate, or Hard. As of the current release, any type of goal, upon completion, fetches the user 10, 50, or 100 experience points, depending on the goal tier chosen (1-3).


These experience points facilitate the Ranking System:

  1. Level (1): Neophyte [0 - 100]
  2. Level (2): Intermediate [100 - 300]
  3. Level (3): Adept [300 - 650]
  4. Level (4): Prime [650 - 1200]
  5. Level (5): Paramount [1200+]

Start goals, Finish them, Check the time details, View detailed Goal Descriptions, and drive forward for an ambitious life!


The 'Why?' of this Project

This project idea came to me, while I thought of recording one of my day's activities as they're recorded in games. The whole day having certain main quests, and a few other side quests. At the end of that day, while I was writing all this down on a piece of a paper, an idea hit my mind, to develop this into a Project, that everyone could use and take benefit of. And thus I started with the development of this Project.

Learnings 📝

I went with Python for this one, so as to firm my first stance with handling databases with sqlite3. Working with SQL databases made me remind my old grade 7 days when I was learning SQL in school ;)

I got to know how CLI's (Command Line Interfaces) work in actual code. Working on this project had also been a great time practicing my Python skills.


On Contributions ✏️💻

As of present, this project has barely scratched the surface of what I had wished to implement! There's a LOT, and I mean it when I say, a LOT to contribute. I'd appreciate every kind of help, you'd be willing to come forward for- Better README, Wiki-Documentation, More Readable+Refactored Code, Extra features, Suggestions, Issues, anything!

Here are some of the features I wish to implement, hopefully with the help of you all, in the future:

  • Adding a daily exp reward.
  • Extra exp on completion of a certain number of goals.
  • Compounding effect of exp pts for Tier 1 Goals.

Thanks for your kind attention :)

Requirements

  • Python 3.10+ is required to run the program.
  • Clone this repository, or simply download the source code
  • Navigate to the repository's location
~/Gamify-Life
  • Run the following command
pip install -r requirements.txt

Use pip3 instead of pip on Linux / MacOS


Now in the same repository as before, navigate to the src directory.

~/Gamify-Life/src

Run the following command:

python main.py

Use python3 instead of python on Linus / MacOS

Voila! It's done! Hope you'll have a great time using the program...