Skip to content
forked from ShinRaiDev/glitch

Llama is a web app that gamifies productivity, making it more engaging and motivating for users. By setting study sessions with a timer, users can stay focused on their tasks, while earning experience points and badges for completing them.

Notifications You must be signed in to change notification settings

killerz3/glitch

 
 

Repository files navigation

🎓🎮Llama: The Gamified Productivity App

Llama is a cutting-edge web application that gamifies studying and work to revolutionize productivity and motivation. It eliminates procrastination and distractions and replaces them with a rewarding experience, allowing users to earn experience points 📈, achieve milestones 🎖️, and receive badges 🎯 for completing tasks.

❓Why : What problems does Llama solves

  • 🔥 Problem: Many students struggle with low motivation and lack of productivity when studying or working.

  • 🎯 Solution: Llama is a web app that gamifies productivity, making it more engaging and motivating for users. By setting study sessions with a timer, users can stay focused on their tasks, while earning experience points and badges for completing them. Additionally, Llama allows users to track their progress over time through a dashboard and set goals to work towards. By using Llama, users can overcome the common productivity problems they face and achieve their academic and professional goals.

  • 🕰️ Problem: Students often struggle with time management, resulting in poor productivity.

  • ⏰ Solution: Llama teaches time management skills by allowing users to set study sessions and track their progress. By prioritizing tasks and managing their schedules effectively, users can improve their productivity and complete their coursework on time.

  • 📱 Problem: Distractions from technology can interfere with students' ability to focus and be productive.

  • 🚫 Solution: Llama reduces distractions by encouraging users to focus on their tasks during study sessions. Educators can also limit distractions in the classroom or provide distraction-free study spaces.

  • 📖 Problem: Many students have poor study habits that can hinder their learning and productivity.

  • 📝 Solution: Llama encourages effective study habits, such as note-taking techniques and active listening, through its gamification features. Educators can also provide guidance on these habits to help students learn more efficiently.

  • 😰 Problem: Stress and anxiety can affect students' ability to concentrate and be productive.

  • 🧘 Solution: Llama offers mental health support through its gamification features, as well as encouraging a positive learning environment. Schools can also provide counseling services or mental health resources to help students cope with stress and anxiety.

  • 💪 Problem: Lack of motivation can result in poor productivity and performance.

  • 🏆 Solution: Llama gamifies productivity to make it more engaging and motivating for users. By earning experience points and badges for completing study sessions, users can stay motivated and achieve their goals. Additionally, educators can foster a positive learning environment and offer feedback and recognition to help students stay motivated.

🚀 Features

  • Create study sessions using a timer ⏱️
  • Collect experience points by completing study sessions 📈
  • Share achievements on Twitter and LinkedIn 📣
  • Track progress over time with a dashboard 📊
  • Observe your productivity statistics

👨‍💻 Llama Technical Stack

Llama's technical stack comprises of NEXT.JS, TAILWIND CSS, NODE.JS, MYSQL, PRISMA ORM, and AXIOS API. The technical decisions behind the selection of these technologies are as follows:

  • NEXT.JS 🌐, a React-based web framework, was chosen for its server-side rendering capabilities and ability to deliver fast loading times and optimal search engine optimization (SEO). The framework also provides scalable and streamlined development experience.

  • TAILWIND CSS 🎨 was chosen as the CSS framework due to its efficiency in designing responsive and user-friendly interfaces. The utility-first framework offers easy customization and eliminates the need to write additional CSS, thereby simplifying the development process.

  • NODE.JS 🖥️ was selected for its ability to handle multiple requests concurrently, scalability and performance. As a runtime environment, it allows for the development of performant server-side applications using JavaScript.

  • The MYSQL 🗄️ database management system was chosen due to its robust data management capabilities, scalability, and reliability in handling complex data relationships.

  • PRISMA ORM 🛡️ was selected as the database toolkit due to its ease of use and ability to manage the database schema and data access layer. It provides seamless integration with Node.js and other web frameworks, which enables efficient management of data.

  • AXIOS API 🚀 is a JavaScript library used to simplify the process of making HTTP requests from the browser. It was chosen due to its simplicity, efficiency in handling complex data structures, and the ability to provide efficient error handling.

🏃‍♀️ Running the Project Locally

To run the project locally, follow these steps:

  1. Clone the repository using git clone https://github.com/username/gamified-productivity.git.
  2. Install the dependencies using npm install.
  3. Start the development server using npm start.
  4. Open http://localhost:3000 in your web browser.

That's it! You should now be able to use the app locally on your machine.

🤝 Contributing

If you would like to contribute to this project, please fork the repository and create a pull request. We welcome contributions of all kinds, from bug fixes to new features.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🔒 Sample Env File

DATABASE_URL="mysql://root:mysecretpassword@localhost:3306/glitch?schema=public"
GITHUB_ID="1234567890abcdefg"
GITHUB_SECRET="a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0"
DISCORD_CLIENT_ID="0987654321gfedcba"
DISCORD_CLIENT_SECRET="0t9s8r7q6p5o4n3m2l1k0j9i8h7g6f5e4d3c2b1"

How to run it Locally:

###Install the dependencies by running:


npm i

###Generate Prisma client by running:

npx prisma generate

###Deploy Prisma migrations by running:

npx prisma migrate deploy

###Start the development server by running:

npm run dev


#screenshots
![ScreenShot](https://github.com/ShinRaiDev/glitch/main/screenshots/untitled.png)
![ScreenShot](https://github.com/ShinRaiDev/glitch/main/screenshots/untitled2.png)
![ScreenShot](https://github.com/ShinRaiDev/glitch/main/screenshots/untitled3.png)
![ScreenShot](https://github.com/ShinRaiDev/glitch/main/screenshots/untitled5.png)
![ScreenShot](https://github.com/ShinRaiDev/glitch/main/screenshots/untitled7.png)
![ScreenShot](https://github.com/ShinRaiDev/glitch/main/screenshots/untitled8.png)
![ScreenShot](https://github.com/ShinRaiDev/glitch/main/screenshots/untitled9.png)
![ScreenShot](https://github.com/ShinRaiDev/glitch/main/screenshots/untitled11.png)

About

Llama is a web app that gamifies productivity, making it more engaging and motivating for users. By setting study sessions with a timer, users can stay focused on their tasks, while earning experience points and badges for completing them.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 95.7%
  • JavaScript 4.2%
  • CSS 0.1%