View br-Chan's full-sized avatar

Highlights

  • Pro

Block or report br-Chan

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
br-Chan/README.md

Visit an up-to-date version of this README.md here: br-chan.github.io/

Brandon Chan

Final Year Software Engineering Student at The University of Auckland

githublinkedinyoutube

Anurag's GitHub stats

I love Creating, Learning and Doing things - usually all 3 at once.

CREATING

PROJECTS

The Missing Dollar Mystery

CustomisableLOTTOGenerator

CURRENT PROJECTS
  • Personal website (deployed!)
  • Rankle (see above) (hoping to close up this project in a passably finished state this year)
  • Impossible Puzzles (see above)

LEARNING

LANGUAGES AND TOOLS
LearnedLearning
JavaEverything on the left :)
C/C++Vue
MATLABSQL
JavaScript
TypeScript
React
Next.js
Tailwind CSS
Angular
Firebase
CURRENT UNIVERSITY COURSES
  • ENGGEN 303 | Innovation and Business Cases
  • SOFTENG 351 | Fundamentals of Database Systems
  • SOFTENG 370 | Operating Systems
  • SOFTENG 373 | Computer Graphics and Image Processing
PLANS & IDEAS
  • Repository to keep track of solved Leetcode/Hackerrank problems (nah)
  • "Jabberwockle" - Wordle, but the word to guess has some of its letters swapped out
  • Personal website to build an interactive version of this pageNow deployed!
  • Task Time | Next.js

Random project ideas:

  • Web app (JavaScript): NYT Game Ranker - takes the NYT game stats (e.g. Wordle, Mini, Strands,...) and calculates your rankNow Rankle!
  • Web app: Interactive Königsberg Bridges Map - build your own bridges and try solve itNow Impossible Puzzles!
  • Java/C/other: Adjective orderer - automatically sorts a list of adjectives in the proper order based on their type (quantity, size, age, shape, colour, etc)
  • Web app: Pokemon but you catch days of the year instead - can only 'catch' today's date, and you win once you get all 366 days (can add a countdown timer, friends/trading system, etc)
  • Random trolley problem generator
  • Something that uses the Spotify Web API

DOING

Typing:

The Battle of Polytopia:

WDCC: I was a software developer in a software project at WDCC! Check out what we were up to here.

Hackathons:

  • KiwiJam 2024 | Godot (note: PLEASE don't try this game, I think all of us who worked on this will agree it will give you a heart attack)
  • WDCCxSESA Hackathon 2024 | Next.js, TypeScript

twitter (warning: do not click)

Pinned Loading

  1. UoaWDCC/uabc-webUoaWDCC/uabc-webPublic

    The University of Auckland Badminton Clubs Website

    TypeScript 10 4

  2. br-chan.github.iobr-chan.github.ioPublic

    My personal website

    TypeScript

  3. RankleRanklePublic

    A web app to collect your NYT game stats (Wordle, Connections, Strands, etc) and calculate your average rank stat, to rankle your friends with.

    TypeScript 1

  4. amigobrewbrew/polytopiacalculatorfirebase-publicamigobrewbrew/polytopiacalculatorfirebase-publicPublic

    Source code for https://polytopia-damage-calculator.firebaseapp.com/ a mobile game calculator

    TypeScript 13 9

  5. Missing-Dollar-Mystery-with-GPTMissing-Dollar-Mystery-with-GPTPublic

    A game used to train private investigators (and entertain the commonfolk) using JavaFX and OpenAI's GPT model. Developed for the semester-long SOFTENG 206 group project.

    Java

  6. the-best-FOSS-password-managerthe-best-FOSS-password-managerPublic

    Put all your important credentials on GitHub so you don't forget them! It's the perfect idea!

    2 2

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content
View br-Chan's full-sized avatar

Highlights

  • Pro

Block or report br-Chan

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
br-Chan/README.md

Visit an up-to-date version of this README.md here: br-chan.github.io/

Brandon Chan

Final Year Software Engineering Student at The University of Auckland

githublinkedinyoutube

Anurag's GitHub stats

I love Creating, Learning and Doing things - usually all 3 at once.

CREATING

PROJECTS

The Missing Dollar Mystery

CustomisableLOTTOGenerator

CURRENT PROJECTS
  • Personal website (deployed!)
  • Rankle (see above) (hoping to close up this project in a passably finished state this year)
  • Impossible Puzzles (see above)

LEARNING

LANGUAGES AND TOOLS
LearnedLearning
JavaEverything on the left :)
C/C++Vue
MATLABSQL
JavaScript
TypeScript
React
Next.js
Tailwind CSS
Angular
Firebase
CURRENT UNIVERSITY COURSES
  • ENGGEN 303 | Innovation and Business Cases
  • SOFTENG 351 | Fundamentals of Database Systems
  • SOFTENG 370 | Operating Systems
  • SOFTENG 373 | Computer Graphics and Image Processing
PLANS & IDEAS
  • Repository to keep track of solved Leetcode/Hackerrank problems (nah)
  • "Jabberwockle" - Wordle, but the word to guess has some of its letters swapped out
  • Personal website to build an interactive version of this pageNow deployed!
  • Task Time | Next.js

Random project ideas:

  • Web app (JavaScript): NYT Game Ranker - takes the NYT game stats (e.g. Wordle, Mini, Strands,...) and calculates your rankNow Rankle!
  • Web app: Interactive Königsberg Bridges Map - build your own bridges and try solve itNow Impossible Puzzles!
  • Java/C/other: Adjective orderer - automatically sorts a list of adjectives in the proper order based on their type (quantity, size, age, shape, colour, etc)
  • Web app: Pokemon but you catch days of the year instead - can only 'catch' today's date, and you win once you get all 366 days (can add a countdown timer, friends/trading system, etc)
  • Random trolley problem generator
  • Something that uses the Spotify Web API

DOING

Typing:

The Battle of Polytopia:

WDCC: I was a software developer in a software project at WDCC! Check out what we were up to here.

Hackathons:

  • KiwiJam 2024 | Godot (note: PLEASE don't try this game, I think all of us who worked on this will agree it will give you a heart attack)
  • WDCCxSESA Hackathon 2024 | Next.js, TypeScript

twitter (warning: do not click)

Pinned Loading

  1. UoaWDCC/uabc-webUoaWDCC/uabc-webPublic

    The University of Auckland Badminton Clubs Website

    TypeScript 10 4

  2. br-chan.github.iobr-chan.github.ioPublic

    My personal website

    TypeScript

  3. RankleRanklePublic

    A web app to collect your NYT game stats (Wordle, Connections, Strands, etc) and calculate your average rank stat, to rankle your friends with.

    TypeScript 1

  4. amigobrewbrew/polytopiacalculatorfirebase-publicamigobrewbrew/polytopiacalculatorfirebase-publicPublic

    Source code for https://polytopia-damage-calculator.firebaseapp.com/ a mobile game calculator

    TypeScript 13 9

  5. Missing-Dollar-Mystery-with-GPTMissing-Dollar-Mystery-with-GPTPublic

    A game used to train private investigators (and entertain the commonfolk) using JavaFX and OpenAI's GPT model. Developed for the semester-long SOFTENG 206 group project.

    Java

  6. the-best-FOSS-password-managerthe-best-FOSS-password-managerPublic

    Put all your important credentials on GitHub so you don't forget them! It's the perfect idea!

    2 2

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
View br-Chan's full-sized avatar

Highlights

  • Pro

Block or report br-Chan

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
br-Chan/README.md

Visit an up-to-date version of this README.md here: br-chan.github.io/

Brandon Chan

Final Year Software Engineering Student at The University of Auckland

githublinkedinyoutube

Anurag's GitHub stats

I love Creating, Learning and Doing things - usually all 3 at once.

CREATING

PROJECTS

The Missing Dollar Mystery

CustomisableLOTTOGenerator

CURRENT PROJECTS
  • Personal website (deployed!)
  • Rankle (see above) (hoping to close up this project in a passably finished state this year)
  • Impossible Puzzles (see above)

LEARNING

LANGUAGES AND TOOLS
LearnedLearning
JavaEverything on the left :)
C/C++Vue
MATLABSQL
JavaScript
TypeScript
React
Next.js
Tailwind CSS
Angular
Firebase
CURRENT UNIVERSITY COURSES
  • ENGGEN 303 | Innovation and Business Cases
  • SOFTENG 351 | Fundamentals of Database Systems
  • SOFTENG 370 | Operating Systems
  • SOFTENG 373 | Computer Graphics and Image Processing
PLANS & IDEAS
  • Repository to keep track of solved Leetcode/Hackerrank problems (nah)
  • "Jabberwockle" - Wordle, but the word to guess has some of its letters swapped out
  • Personal website to build an interactive version of this pageNow deployed!
  • Task Time | Next.js

Random project ideas:

  • Web app (JavaScript): NYT Game Ranker - takes the NYT game stats (e.g. Wordle, Mini, Strands,...) and calculates your rankNow Rankle!
  • Web app: Interactive Königsberg Bridges Map - build your own bridges and try solve itNow Impossible Puzzles!
  • Java/C/other: Adjective orderer - automatically sorts a list of adjectives in the proper order based on their type (quantity, size, age, shape, colour, etc)
  • Web app: Pokemon but you catch days of the year instead - can only 'catch' today's date, and you win once you get all 366 days (can add a countdown timer, friends/trading system, etc)
  • Random trolley problem generator
  • Something that uses the Spotify Web API

DOING

Typing:

The Battle of Polytopia:

WDCC: I was a software developer in a software project at WDCC! Check out what we were up to here.

Hackathons:

  • KiwiJam 2024 | Godot (note: PLEASE don't try this game, I think all of us who worked on this will agree it will give you a heart attack)
  • WDCCxSESA Hackathon 2024 | Next.js, TypeScript

twitter (warning: do not click)

Pinned Loading

  1. UoaWDCC/uabc-webUoaWDCC/uabc-webPublic

    The University of Auckland Badminton Clubs Website

    TypeScript 10 4

  2. br-chan.github.iobr-chan.github.ioPublic

    My personal website

    TypeScript

  3. RankleRanklePublic

    A web app to collect your NYT game stats (Wordle, Connections, Strands, etc) and calculate your average rank stat, to rankle your friends with.

    TypeScript 1

  4. amigobrewbrew/polytopiacalculatorfirebase-publicamigobrewbrew/polytopiacalculatorfirebase-publicPublic

    Source code for https://polytopia-damage-calculator.firebaseapp.com/ a mobile game calculator

    TypeScript 13 9

  5. Missing-Dollar-Mystery-with-GPTMissing-Dollar-Mystery-with-GPTPublic

    A game used to train private investigators (and entertain the commonfolk) using JavaFX and OpenAI's GPT model. Developed for the semester-long SOFTENG 206 group project.

    Java

  6. the-best-FOSS-password-managerthe-best-FOSS-password-managerPublic

    Put all your important credentials on GitHub so you don't forget them! It's the perfect idea!

    2 2

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
View br-Chan's full-sized avatar

Highlights

  • Pro

Block or report br-Chan

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
br-Chan/README.md

Visit an up-to-date version of this README.md here: br-chan.github.io/

Brandon Chan

Final Year Software Engineering Student at The University of Auckland

githublinkedinyoutube

Anurag's GitHub stats

I love Creating, Learning and Doing things - usually all 3 at once.

CREATING

PROJECTS

The Missing Dollar Mystery

CustomisableLOTTOGenerator

CURRENT PROJECTS
  • Personal website (deployed!)
  • Rankle (see above) (hoping to close up this project in a passably finished state this year)
  • Impossible Puzzles (see above)

LEARNING

LANGUAGES AND TOOLS
LearnedLearning
JavaEverything on the left :)
C/C++Vue
MATLABSQL
JavaScript
TypeScript
React
Next.js
Tailwind CSS
Angular
Firebase
CURRENT UNIVERSITY COURSES
  • ENGGEN 303 | Innovation and Business Cases
  • SOFTENG 351 | Fundamentals of Database Systems
  • SOFTENG 370 | Operating Systems
  • SOFTENG 373 | Computer Graphics and Image Processing
PLANS & IDEAS
  • Repository to keep track of solved Leetcode/Hackerrank problems (nah)
  • "Jabberwockle" - Wordle, but the word to guess has some of its letters swapped out
  • Personal website to build an interactive version of this pageNow deployed!
  • Task Time | Next.js

Random project ideas:

  • Web app (JavaScript): NYT Game Ranker - takes the NYT game stats (e.g. Wordle, Mini, Strands,...) and calculates your rankNow Rankle!
  • Web app: Interactive Königsberg Bridges Map - build your own bridges and try solve itNow Impossible Puzzles!
  • Java/C/other: Adjective orderer - automatically sorts a list of adjectives in the proper order based on their type (quantity, size, age, shape, colour, etc)
  • Web app: Pokemon but you catch days of the year instead - can only 'catch' today's date, and you win once you get all 366 days (can add a countdown timer, friends/trading system, etc)
  • Random trolley problem generator
  • Something that uses the Spotify Web API

DOING

Typing:

The Battle of Polytopia:

WDCC: I was a software developer in a software project at WDCC! Check out what we were up to here.

Hackathons:

  • KiwiJam 2024 | Godot (note: PLEASE don't try this game, I think all of us who worked on this will agree it will give you a heart attack)
  • WDCCxSESA Hackathon 2024 | Next.js, TypeScript

twitter (warning: do not click)

Pinned Loading

  1. UoaWDCC/uabc-webUoaWDCC/uabc-webPublic

    The University of Auckland Badminton Clubs Website

    TypeScript 10 4

  2. br-chan.github.iobr-chan.github.ioPublic

    My personal website

    TypeScript

  3. RankleRanklePublic

    A web app to collect your NYT game stats (Wordle, Connections, Strands, etc) and calculate your average rank stat, to rankle your friends with.

    TypeScript 1

  4. amigobrewbrew/polytopiacalculatorfirebase-publicamigobrewbrew/polytopiacalculatorfirebase-publicPublic

    Source code for https://polytopia-damage-calculator.firebaseapp.com/ a mobile game calculator

    TypeScript 13 9

  5. Missing-Dollar-Mystery-with-GPTMissing-Dollar-Mystery-with-GPTPublic

    A game used to train private investigators (and entertain the commonfolk) using JavaFX and OpenAI's GPT model. Developed for the semester-long SOFTENG 206 group project.

    Java

  6. the-best-FOSS-password-managerthe-best-FOSS-password-managerPublic

    Put all your important credentials on GitHub so you don't forget them! It's the perfect idea!

    2 2

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content
View br-Chan's full-sized avatar

Highlights

  • Pro

Block or report br-Chan

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
br-Chan/README.md

Visit an up-to-date version of this README.md here: br-chan.github.io/

Brandon Chan

Final Year Software Engineering Student at The University of Auckland

githublinkedinyoutube

Anurag's GitHub stats

I love Creating, Learning and Doing things - usually all 3 at once.

CREATING

PROJECTS

The Missing Dollar Mystery

CustomisableLOTTOGenerator

CURRENT PROJECTS
  • Personal website (deployed!)
  • Rankle (see above) (hoping to close up this project in a passably finished state this year)
  • Impossible Puzzles (see above)

LEARNING

LANGUAGES AND TOOLS
LearnedLearning
JavaEverything on the left :)
C/C++Vue
MATLABSQL
JavaScript
TypeScript
React
Next.js
Tailwind CSS
Angular
Firebase
CURRENT UNIVERSITY COURSES
  • ENGGEN 303 | Innovation and Business Cases
  • SOFTENG 351 | Fundamentals of Database Systems
  • SOFTENG 370 | Operating Systems
  • SOFTENG 373 | Computer Graphics and Image Processing
PLANS & IDEAS
  • Repository to keep track of solved Leetcode/Hackerrank problems (nah)
  • "Jabberwockle" - Wordle, but the word to guess has some of its letters swapped out
  • Personal website to build an interactive version of this pageNow deployed!
  • Task Time | Next.js

Random project ideas:

  • Web app (JavaScript): NYT Game Ranker - takes the NYT game stats (e.g. Wordle, Mini, Strands,...) and calculates your rankNow Rankle!
  • Web app: Interactive Königsberg Bridges Map - build your own bridges and try solve itNow Impossible Puzzles!
  • Java/C/other: Adjective orderer - automatically sorts a list of adjectives in the proper order based on their type (quantity, size, age, shape, colour, etc)
  • Web app: Pokemon but you catch days of the year instead - can only 'catch' today's date, and you win once you get all 366 days (can add a countdown timer, friends/trading system, etc)
  • Random trolley problem generator
  • Something that uses the Spotify Web API

DOING

Typing:

The Battle of Polytopia:

WDCC: I was a software developer in a software project at WDCC! Check out what we were up to here.

Hackathons:

  • KiwiJam 2024 | Godot (note: PLEASE don't try this game, I think all of us who worked on this will agree it will give you a heart attack)
  • WDCCxSESA Hackathon 2024 | Next.js, TypeScript

twitter (warning: do not click)

Pinned Loading

  1. UoaWDCC/uabc-webUoaWDCC/uabc-webPublic

    The University of Auckland Badminton Clubs Website

    TypeScript 10 4

  2. br-chan.github.iobr-chan.github.ioPublic

    My personal website

    TypeScript

  3. RankleRanklePublic

    A web app to collect your NYT game stats (Wordle, Connections, Strands, etc) and calculate your average rank stat, to rankle your friends with.

    TypeScript 1

  4. amigobrewbrew/polytopiacalculatorfirebase-publicamigobrewbrew/polytopiacalculatorfirebase-publicPublic

    Source code for https://polytopia-damage-calculator.firebaseapp.com/ a mobile game calculator

    TypeScript 13 9

  5. Missing-Dollar-Mystery-with-GPTMissing-Dollar-Mystery-with-GPTPublic

    A game used to train private investigators (and entertain the commonfolk) using JavaFX and OpenAI's GPT model. Developed for the semester-long SOFTENG 206 group project.

    Java

  6. the-best-FOSS-password-managerthe-best-FOSS-password-managerPublic

    Put all your important credentials on GitHub so you don't forget them! It's the perfect idea!

    2 2

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
View br-Chan's full-sized avatar

Highlights

  • Pro

Block or report br-Chan

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
br-Chan/README.md

Visit an up-to-date version of this README.md here: br-chan.github.io/

Brandon Chan

Final Year Software Engineering Student at The University of Auckland

githublinkedinyoutube

Anurag's GitHub stats

I love Creating, Learning and Doing things - usually all 3 at once.

CREATING

PROJECTS

The Missing Dollar Mystery

CustomisableLOTTOGenerator

CURRENT PROJECTS
  • Personal website (deployed!)
  • Rankle (see above) (hoping to close up this project in a passably finished state this year)
  • Impossible Puzzles (see above)

LEARNING

LANGUAGES AND TOOLS
LearnedLearning
JavaEverything on the left :)
C/C++Vue
MATLABSQL
JavaScript
TypeScript
React
Next.js
Tailwind CSS
Angular
Firebase
CURRENT UNIVERSITY COURSES
  • ENGGEN 303 | Innovation and Business Cases
  • SOFTENG 351 | Fundamentals of Database Systems
  • SOFTENG 370 | Operating Systems
  • SOFTENG 373 | Computer Graphics and Image Processing
PLANS & IDEAS
  • Repository to keep track of solved Leetcode/Hackerrank problems (nah)
  • "Jabberwockle" - Wordle, but the word to guess has some of its letters swapped out
  • Personal website to build an interactive version of this pageNow deployed!
  • Task Time | Next.js

Random project ideas:

  • Web app (JavaScript): NYT Game Ranker - takes the NYT game stats (e.g. Wordle, Mini, Strands,...) and calculates your rankNow Rankle!
  • Web app: Interactive Königsberg Bridges Map - build your own bridges and try solve itNow Impossible Puzzles!
  • Java/C/other: Adjective orderer - automatically sorts a list of adjectives in the proper order based on their type (quantity, size, age, shape, colour, etc)
  • Web app: Pokemon but you catch days of the year instead - can only 'catch' today's date, and you win once you get all 366 days (can add a countdown timer, friends/trading system, etc)
  • Random trolley problem generator
  • Something that uses the Spotify Web API

DOING

Typing:

The Battle of Polytopia:

WDCC: I was a software developer in a software project at WDCC! Check out what we were up to here.

Hackathons:

  • KiwiJam 2024 | Godot (note: PLEASE don't try this game, I think all of us who worked on this will agree it will give you a heart attack)
  • WDCCxSESA Hackathon 2024 | Next.js, TypeScript

twitter (warning: do not click)

Pinned Loading

  1. UoaWDCC/uabc-webUoaWDCC/uabc-webPublic

    The University of Auckland Badminton Clubs Website

    TypeScript 10 4

  2. br-chan.github.iobr-chan.github.ioPublic

    My personal website

    TypeScript

  3. RankleRanklePublic

    A web app to collect your NYT game stats (Wordle, Connections, Strands, etc) and calculate your average rank stat, to rankle your friends with.

    TypeScript 1

  4. amigobrewbrew/polytopiacalculatorfirebase-publicamigobrewbrew/polytopiacalculatorfirebase-publicPublic

    Source code for https://polytopia-damage-calculator.firebaseapp.com/ a mobile game calculator

    TypeScript 13 9

  5. Missing-Dollar-Mystery-with-GPTMissing-Dollar-Mystery-with-GPTPublic

    A game used to train private investigators (and entertain the commonfolk) using JavaFX and OpenAI's GPT model. Developed for the semester-long SOFTENG 206 group project.

    Java

  6. the-best-FOSS-password-managerthe-best-FOSS-password-managerPublic

    Put all your important credentials on GitHub so you don't forget them! It's the perfect idea!

    2 2

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
View br-Chan's full-sized avatar

Highlights

  • Pro

Block or report br-Chan

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
br-Chan/README.md

Visit an up-to-date version of this README.md here: br-chan.github.io/

Brandon Chan

Final Year Software Engineering Student at The University of Auckland

githublinkedinyoutube

Anurag's GitHub stats

I love Creating, Learning and Doing things - usually all 3 at once.

CREATING

PROJECTS

The Missing Dollar Mystery

CustomisableLOTTOGenerator

CURRENT PROJECTS
  • Personal website (deployed!)
  • Rankle (see above) (hoping to close up this project in a passably finished state this year)
  • Impossible Puzzles (see above)

LEARNING

LANGUAGES AND TOOLS
LearnedLearning
JavaEverything on the left :)
C/C++Vue
MATLABSQL
JavaScript
TypeScript
React
Next.js
Tailwind CSS
Angular
Firebase
CURRENT UNIVERSITY COURSES
  • ENGGEN 303 | Innovation and Business Cases
  • SOFTENG 351 | Fundamentals of Database Systems
  • SOFTENG 370 | Operating Systems
  • SOFTENG 373 | Computer Graphics and Image Processing
PLANS & IDEAS
  • Repository to keep track of solved Leetcode/Hackerrank problems (nah)
  • "Jabberwockle" - Wordle, but the word to guess has some of its letters swapped out
  • Personal website to build an interactive version of this pageNow deployed!
  • Task Time | Next.js

Random project ideas:

  • Web app (JavaScript): NYT Game Ranker - takes the NYT game stats (e.g. Wordle, Mini, Strands,...) and calculates your rankNow Rankle!
  • Web app: Interactive Königsberg Bridges Map - build your own bridges and try solve itNow Impossible Puzzles!
  • Java/C/other: Adjective orderer - automatically sorts a list of adjectives in the proper order based on their type (quantity, size, age, shape, colour, etc)
  • Web app: Pokemon but you catch days of the year instead - can only 'catch' today's date, and you win once you get all 366 days (can add a countdown timer, friends/trading system, etc)
  • Random trolley problem generator
  • Something that uses the Spotify Web API

DOING

Typing:

The Battle of Polytopia:

WDCC: I was a software developer in a software project at WDCC! Check out what we were up to here.

Hackathons:

  • KiwiJam 2024 | Godot (note: PLEASE don't try this game, I think all of us who worked on this will agree it will give you a heart attack)
  • WDCCxSESA Hackathon 2024 | Next.js, TypeScript

twitter (warning: do not click)

Pinned Loading

  1. UoaWDCC/uabc-webUoaWDCC/uabc-webPublic

    The University of Auckland Badminton Clubs Website

    TypeScript 10 4

  2. br-chan.github.iobr-chan.github.ioPublic

    My personal website

    TypeScript

  3. RankleRanklePublic

    A web app to collect your NYT game stats (Wordle, Connections, Strands, etc) and calculate your average rank stat, to rankle your friends with.

    TypeScript 1

  4. amigobrewbrew/polytopiacalculatorfirebase-publicamigobrewbrew/polytopiacalculatorfirebase-publicPublic

    Source code for https://polytopia-damage-calculator.firebaseapp.com/ a mobile game calculator

    TypeScript 13 9

  5. Missing-Dollar-Mystery-with-GPTMissing-Dollar-Mystery-with-GPTPublic

    A game used to train private investigators (and entertain the commonfolk) using JavaFX and OpenAI's GPT model. Developed for the semester-long SOFTENG 206 group project.

    Java

  6. the-best-FOSS-password-managerthe-best-FOSS-password-managerPublic

    Put all your important credentials on GitHub so you don't forget them! It's the perfect idea!

    2 2

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content
View br-Chan's full-sized avatar

Highlights

  • Pro

Block or report br-Chan

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
br-Chan/README.md

Visit an up-to-date version of this README.md here: br-chan.github.io/

Brandon Chan

Final Year Software Engineering Student at The University of Auckland

githublinkedinyoutube

Anurag's GitHub stats

I love Creating, Learning and Doing things - usually all 3 at once.

CREATING

PROJECTS

The Missing Dollar Mystery

CustomisableLOTTOGenerator

CURRENT PROJECTS
  • Personal website (deployed!)
  • Rankle (see above) (hoping to close up this project in a passably finished state this year)
  • Impossible Puzzles (see above)

LEARNING

LANGUAGES AND TOOLS
LearnedLearning
JavaEverything on the left :)
C/C++Vue
MATLABSQL
JavaScript
TypeScript
React
Next.js
Tailwind CSS
Angular
Firebase
CURRENT UNIVERSITY COURSES
  • ENGGEN 303 | Innovation and Business Cases
  • SOFTENG 351 | Fundamentals of Database Systems
  • SOFTENG 370 | Operating Systems
  • SOFTENG 373 | Computer Graphics and Image Processing
PLANS & IDEAS
  • Repository to keep track of solved Leetcode/Hackerrank problems (nah)
  • "Jabberwockle" - Wordle, but the word to guess has some of its letters swapped out
  • Personal website to build an interactive version of this pageNow deployed!
  • Task Time | Next.js

Random project ideas:

  • Web app (JavaScript): NYT Game Ranker - takes the NYT game stats (e.g. Wordle, Mini, Strands,...) and calculates your rankNow Rankle!
  • Web app: Interactive Königsberg Bridges Map - build your own bridges and try solve itNow Impossible Puzzles!
  • Java/C/other: Adjective orderer - automatically sorts a list of adjectives in the proper order based on their type (quantity, size, age, shape, colour, etc)
  • Web app: Pokemon but you catch days of the year instead - can only 'catch' today's date, and you win once you get all 366 days (can add a countdown timer, friends/trading system, etc)
  • Random trolley problem generator
  • Something that uses the Spotify Web API

DOING

Typing:

The Battle of Polytopia:

WDCC: I was a software developer in a software project at WDCC! Check out what we were up to here.

Hackathons:

  • KiwiJam 2024 | Godot (note: PLEASE don't try this game, I think all of us who worked on this will agree it will give you a heart attack)
  • WDCCxSESA Hackathon 2024 | Next.js, TypeScript

twitter (warning: do not click)

Pinned Loading

  1. UoaWDCC/uabc-webUoaWDCC/uabc-webPublic

    The University of Auckland Badminton Clubs Website

    TypeScript 10 4

  2. br-chan.github.iobr-chan.github.ioPublic

    My personal website

    TypeScript

  3. RankleRanklePublic

    A web app to collect your NYT game stats (Wordle, Connections, Strands, etc) and calculate your average rank stat, to rankle your friends with.

    TypeScript 1

  4. amigobrewbrew/polytopiacalculatorfirebase-publicamigobrewbrew/polytopiacalculatorfirebase-publicPublic

    Source code for https://polytopia-damage-calculator.firebaseapp.com/ a mobile game calculator

    TypeScript 13 9

  5. Missing-Dollar-Mystery-with-GPTMissing-Dollar-Mystery-with-GPTPublic

    A game used to train private investigators (and entertain the commonfolk) using JavaFX and OpenAI's GPT model. Developed for the semester-long SOFTENG 206 group project.

    Java

  6. the-best-FOSS-password-managerthe-best-FOSS-password-managerPublic

    Put all your important credentials on GitHub so you don't forget them! It's the perfect idea!

    2 2