Skip to content

ChunhThanhDe/focus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Focus lLgo


Focus to Your Target analyzes web pages and aims to reduce distracting social feeds and supports keeping you focused on your target.


Chrome Web Store Chrome Web Store  Microsoft Edge Add-ons Microsoft Edge Add-ons

Focus Your Target


Focus to Your Target is an open-source MIT-licensed browser extension designed to declutter social media and improve focus. It transforms the New Tab into a minimalist dashboard that hides distracting feeds on major networks and displays inspirational quotes. Focus to Your Target is feature‑rich, includes a simple to‑do mode, and is customizable throughout the UI.


Screenshot

See live demo here.

How to contribute

Read more about contributing to Focus in CONTRIBUTING.md.

Support 🏆

  • If you wanna get updates in next version, please give me a ⭐ to the repo 👍

  • If you love my work and want to support, references me a part-time job, collaboration an interesting project or a good full-time job.

    Thank you so much 👍

Developer Overview

Local Install

  1. Download focus.zip from Releases
  2. Unzip the file
  3. In Chrome/Edge go to the extensions page (chrome://extensions or edge://extensions).
  4. Enable Developer Mode.
  5. Drag the unzipped folder anywhere on the page to import it (do not delete the folder afterwards).

Build from Source Development

1. System Requirements

  • Node.js: >= 18
  • npm: >= 9
  • Flutter: >= 3.22 (Dart SDK ^3.7.0)
  • Chrome: latest stable with MV3 support

2. Installation

# In the project root
npm install
flutter pub get

3. Get API from Unsplash and Run Server

  • Visit Unsplash Developers
  • Sign up for an account (if you don’t have one)
  • Create a new application to get your API key
  • Add your API key to the server/.env file as UNSPLASH_API_KEY

Run server

# In the server folder
npm run start

4.Build (Production)

# In the root folder
flutter pub run build_runner build --delete-conflicting-outputs

# Build Flutter web and copy into extension/newtab
npm run build:ext

# or individually
npm run build:flutter && npm run copy:newtab

5.Load the Extension (In Developer Mode)

1. Open chrome://extensions
2. Enable Developer mode
3. Click “Load unpacked” and select the `extension/` folder
4. Open a supported site; use the New Tab Settings to toggle behavior

Credits

This project is inspired by BirjuVachhani/pluto

I have reused part of the UI idea and Data Mock from this project.