Skip to content

totalcodingpl/adi-tasks-pro

Repository files navigation

πŸš€ Adi-Tasks PRO | The Ultimate Google Tasks PWA

πŸ‡ΊπŸ‡Έ English β€’ πŸ‡΅πŸ‡± Polski

Adi-Tasks PRO Banner



A professional, standalone, and ultra-fast Google Tasks client built as a Progressive Web App (PWA).
Designed for maximum productivity, featuring Glassmorphism UI, Haptic Feedback, Voice Control, and deep Drag & Drop capabilities.

Live Demo PHP PWA



Buy Me a Coffee at ko-fi.com

πŸ“– Table of Contents

  1. Why Adi-Tasks PRO?
  2. Killer Features
  3. Live Demo
  4. System Architecture
  5. Installation & Setup
  6. Roadmap (Coming Soon)
  7. Support the Project

πŸ’‘ Why Adi-Tasks PRO?

The official web client for Google Tasks is nothing more than a narrow sidebar hidden inside Gmail or Google Calendar. It lacks independence, speed, and modern UX.

Adi-Tasks PRO pulls your tasks out of the shadows. It is a standalone Progressive Web App that acts as a full-fledged Dashboard on your PC, and installs like a native app on your smartphone (without the browser address bar).

ℹ️ Info: The project utilizes a Smart Background Polling engine. Changes made on another device or inside Gmail will sync quietly in the background without refreshing the page.


πŸ”₯ Killer Features

  • Premium UX/UI (Glassmorphism): Dark backgrounds, blur effects, neon accents, and buttery smooth CSS animations. -[x] Deep Drag & Drop: Multi-level task dragging powered by SortableJS. Pull a main task into a subtask position with a swipe of your finger.
  • Web Speech API (STT & TTS): Dictate tasks into your microphone and listen to voice confirmations of your actions!
  • Haptic Feedback: Physical vibrations when moving, dropping, and checking off tasks (supported on mobile devices).
  • Multilingual (i18n): Change the language on the fly (EN, PL, DE, ES, FR, ZH, UA) without reloading the page. -[x] Web Share Target: Share links from your mobile browser directly into Adi-Tasks PRO to create tasks instantly!
  • Shared Hosting Bypass: Custom .env parser and advanced .htaccess rules to bypass hard error screens on cheap shared hostings.

See it in action

Majestic Menu Deep Drag & Drop Voice Control & More
Menu Animation Drag Drop Voice Input

πŸ‘οΈ Live Demo

Don't take my word for it. Try it out yourself. (Requires logging in with a Google Account to read/write your tasks via official OAuth 2.0).

πŸ‘‰ Launch Adi-Tasks PRO

Tip: Open this link on your smartphone via Chrome/Safari and tap "Add to Home Screen" to experience the full native PWA power.


πŸ—οΈ System Architecture

The project was built according to strict MVC (Model-View-Controller) and Separation of Concerns patterns, split into 3 microservices:

  1. πŸ›‘οΈ google-cloud-api-gateway.php (Auth & Proxy Core)
    • Manages the entire OAuth 2.0 token lifecycle. Reads .env, refreshes token.json on the fly, and injects auth headers into REST requests. It has zero knowledge of "Tasks" logic.
  2. βš™οΈ tasks-controller.php (Domain Controller)
    • The bridge between the frontend and the Gateway. Translates frontend requests into Google Tasks API specifics.
  3. πŸ“± tasks.php (View / PWA)
    • Pure Vanilla JS frontend. Handles Drag&Drop, Haptics, Polling, Speech APIs, and User Interaction.

πŸ›  Installation & GCP Setup

Want to host this app on your own server? Follow these steps:

1. Google Cloud Console

  1. Log in to Google Cloud Console.
  2. Create a new project and enable the Google Tasks API.
  3. Go to Credentials -> Create Credentials -> OAuth client ID (Choose "Web application").
  4. Under Authorized redirect URIs, enter the exact path to the gateway file on your server (e.g., https://yourdomain.com/gcloud/google-cloud-api-gateway.php).
  5. Copy the generated Client ID and Client Secret.

2. Server Deployment

  1. Clone this repository and upload the files to your hosting (Requires PHP 8.0+ and mod_rewrite).
  2. Create a .env file in the script directory (We don't commit this file for security reasons).

3. .env Configuration

Fill your .env file with the following variables:

APP_VERSION="1.0.1"

# GOOGLE CREDENTIALS
GOOGLE_CLIENT_ID="your-client-id.apps.googleusercontent.com"
GOOGLE_CLIENT_SECRET="your-client-secret"
GOOGLE_REDIRECT_URI="https://yourdomain.com/path/google-cloud-api-gateway.php"
TOKEN_FILE_NAME="token.json"
GOOGLE_SCOPES="https://www.googleapis.com/auth/tasks"

# SYSTEM ROUTING
TASKS_FRONTEND_URL="https://yourdomain.com/path/tasks.php"
TASKS_CONTROLLER_FILE="tasks-controller.php"

πŸ”’ Security Note: The included .htaccess file will automatically block external access to your .env and token.json files, silently replacing them with a 403 Forbidden page.


πŸš€ Roadmap / Coming Soon

This project is actively maintained. Here is what we plan to implement next:

  • 🎨 Themes System: Switch between Dark Mode (Glassmorphism), Light Mode, and AMOLED Pitch Black.
  • πŸ”Œ Offline Mode (Sync Queue): Add tasks without a network connection. The app will buffer them in IndexedDB and push them to Google as soon as you regain signal.
  • πŸ”” Desktop Push Notifications: Native browser notifications reminding you of approaching deadlines.
  • 🏷️ Custom Tags/Labels: Visual "pill-tags" to quickly categorize your tasks.

β˜• Support

This application is fully Open-Source. I spent countless hours optimizing every pixel and line of code so that the UX feels absolutely flawless.

If Adi-Tasks PRO saves your productivity or if you learned something cool by analyzing this code β€” consider buying me a coffee! It will be a massive motivational boost to keep coding! πŸ’ͺ



Designed with a passion for clean code and seamless UX.

Packages

 
 
 

Contributors

Languages