19 Commits

Author SHA1 Message Date
Idrees Hassan
4b206f638d Reformat promise 2025-10-26 12:19:25 -04:00
Idrees Hassan
6124fcd969 Group sticky note functions together 2025-10-25 23:49:55 -04:00
Idrees Hassan
b9304fe11b Clean up code 2025-10-25 23:46:50 -04:00
Idrees Hassan
7f9c388853 Allow clicking after short delay following petting 2025-10-25 22:55:55 -04:00
Idrees Hassan
3aa0308746 Move comments around 2025-10-25 20:41:10 -04:00
Idrees Hassan
f45eb0ce61 Fix petting on mobile 2025-10-25 20:40:25 -04:00
Idrees Hassan
e55f0e7412 Remove PICO-8 and Spotify windows 2025-10-25 19:03:14 -04:00
Idrees Hassan
ff98390e10 Fix manifest 2025-10-25 19:01:04 -04:00
Idrees Hassan
f73e29a723 Correct padding on field guide 2025-10-25 18:29:41 -04:00
Idrees Hassan
bf1bb74219 Update README.md 2025-10-25 15:41:49 -04:00
Idrees Hassan
ca3bc5be4b Merge branch 'main' into extension 2025-10-25 15:33:01 -04:00
Idrees Hassan
29f1766a95 Switch to absolute positioning when on element 2025-10-23 23:32:01 -04:00
Idrees Hassan
5298b7801b Treat ground as yet another element 2025-10-23 21:25:43 -04:00
Idrees Hassan
bed3d37940 Bump version 2025-10-22 22:38:04 -04:00
Idrees Hassan
bae44cc98c Adjust startY to account for scrolling 2025-10-22 22:33:27 -04:00
Idrees Hassan
2767caeb84 Update userscript name 2025-10-22 22:03:07 -04:00
Idrees Hassan
270367139d Don't focus on ground immediately for mobile 2025-10-22 22:00:01 -04:00
Idrees Hassan
9fca0b2046 Bump version 2025-10-22 21:56:11 -04:00
Idrees Hassan
5860171184 Remove afk delay on mobile 2025-10-22 21:46:12 -04:00
8 changed files with 1344 additions and 1223 deletions

View File

@@ -1,8 +1,8 @@
# Browser Bird (Work in Progress!)
# Pocket Bird (Work in Progress!)
This project is still being worked on, but if you wish to help me beta test it, join the [Discord](https://discord.gg/6yxE9prcNc) and follow the installation instructions below!
1. Install [Tampermonkey](https://www.tampermonkey.net/) on your web browser
2. Enable the Tampermonkey extension and give it the permissions requested
3. Install my Browser Bird script by going to this link and clicking install: [https://github.com/IdreesInc/Browser-Bird/raw/refs/heads/main/dist/birb.user.js](https://github.com/IdreesInc/Browser-Bird/raw/refs/heads/main/dist/birb.user.js)
3. Install my Pocket Bird script by going to this link and clicking install: [https://github.com/IdreesInc/Pocket-Bird/raw/refs/heads/main/dist/birb.user.js](https://github.com/IdreesInc/Pocket-Bird/raw/refs/heads/main/dist/birb.user.js)
4. Now any websites you visit will have a little bird hopping around!

745
birb.js

File diff suppressed because it is too large Load Diff

View File

@@ -20,27 +20,48 @@ const spriteSheets = [
const STYLESHEET_PATH = "./stylesheet.css";
const STYLESHEET_KEY = "___STYLESHEET___";
let version = "0.0.0";
// Try to read version from manifest.json
const now = new Date();
const versionDate = `${now.getFullYear()}.${now.getMonth() + 1}.${now.getDate()}`;
// Get current build number from manifest.json
let buildNumber = 0;
try {
const manifest = JSON.parse(readFileSync('manifest.json', 'utf8'));
if (manifest.version) {
version = manifest.version;
if (manifest.version.startsWith(versionDate)) {
// Same day, increment build number
const parts = manifest.version.split('.');
if (parts.length === 4) {
buildNumber = parseInt(parts[3], 10) + 1;
}
}
}
} catch (e) {
console.error("Could not read version from manifest.json");
throw e;
}
// Update manifest.json with new version
const version = `${versionDate}.${buildNumber}`;
try {
const manifest = JSON.parse(readFileSync('manifest.json', 'utf8'));
manifest.version = version;
writeFileSync('manifest.json', JSON.stringify(manifest, null, 4), 'utf8');
} catch (e) {
console.error("Could not update version in manifest.json");
throw e;
}
const userScriptHeader =
`// ==UserScript==
// @name Browser Bird
// @name Pocket Bird
// @namespace https://idreesinc.com
// @version ${version}
// @description birb
// @author Idrees
// @downloadURL https://github.com/IdreesInc/Browser-Bird/raw/refs/heads/main/dist/birb.user.js
// @updateURL https://github.com/IdreesInc/Browser-Bird/raw/refs/heads/main/dist/birb.user.js
// @downloadURL https://github.com/IdreesInc/Pocket-Bird/raw/refs/heads/main/dist/birb.user.js
// @updateURL https://github.com/IdreesInc/Pocket-Bird/raw/refs/heads/main/dist/birb.user.js
// @match *://*/*
// @grant GM_setValue
// @grant GM_getValue

759
dist/birb.js vendored

File diff suppressed because it is too large Load Diff

767
dist/birb.user.js vendored

File diff suppressed because it is too large Load Diff

View File

@@ -1,13 +1,17 @@
{
"manifest_version": 3,
"name": "Browser Bird",
"name": "Pocket Bird",
"description": "It's a bird, in your browser. What more could you want?",
"version": "2025.9.16.1",
"version": "2025.10.25.130",
"homepage_url": "https://idreesinc.com",
"content_scripts": [
{
"matches": ["<all_urls>"],
"js": ["birb.js"]
"matches": [
"<all_urls>"
],
"js": [
"./dist/birb.js"
]
}
],
"permissions": [
@@ -16,8 +20,12 @@
],
"web_accessible_resources": [
{
"resources": ["images/*"],
"matches": ["<all_urls>"]
"resources": [
"images/*"
],
"matches": [
"<all_urls>"
]
}
],
"browser_specific_settings": {
@@ -26,4 +34,3 @@
}
}
}

View File

@@ -7,7 +7,7 @@
"type": "module",
"scripts": {
"build": "node build.js",
"dev": "nodemon --watch birb.js --watch stylesheet.css --watch build.js --watch manifest.json --exec \"npm run build\""
"dev": "nodemon --watch birb.js --watch stylesheet.css --watch build.js --exec \"npm run build\""
},
"devDependencies": {
"nodemon": "^3.1.10"

View File

@@ -21,6 +21,10 @@
cursor: pointer;
}
.birb-absolute {
position: absolute !important;
}
.birb-decoration {
image-rendering: pixelated;
position: fixed;
@@ -237,8 +241,8 @@
flex-direction: row;
padding-top: 4px;
padding-bottom: 4px;
padding-left: 15px;
padding-right: 15px;
padding-left: 10px;
padding-right: 10px;
box-sizing: border-box;
}
@@ -285,12 +289,12 @@
}
.birb-field-guide-description {
width: calc(100% - 16px);
margin-top: 10px;
width: calc(100% - 20px);
margin-top: 5px;
padding: 8px;
padding-top: 4px;
padding-bottom: 4px;
margin-bottom: 6px;
margin-bottom: 10px;
font-size: 14px;
box-sizing: border-box;
color: rgb(124, 108, 75);