Skip to content

joshua-51/ExtraCurricularActivityPortfolio

Repository files navigation

ExtraCurricularActivityPortfolio

Welcome to my extracurricular activity portfolio! This repository showcases my journey in programming through various projects spanning Python, Java, and open-source contributions. I've organized my work into different categories to highlight my progression from introductory problem-solving to advanced application development.

πŸ“š Harvard CS50 Projects

Completed Harvard's CS50 Introduction to Computer Science course, implementing solutions to weekly problem sets and a final project.

Week 0: Scratch

Week 1: C

Week 2: Arrays

Week 3: Algorithms

Week 4: Memory

Week 5: Data Structures

  • bank.py - Bank with regex
  • fuel.py - Fuel with try/except
  • twttr.py - Twitter with functions
  • Test files for validation

Week 6: Python

Week 7: Regular Expressions

Week 8: Object-Oriented Programming

Final Project

ETC (Extra Practice)

  • Various utility scripts and practice problems

β˜• Java Project Portfolio

Explored Java fundamentals through calculators, data structures, and interactive applications.

JavaCalculator

JavaMethodsPractice

Madlibs

LEARNING

  • Practice with data types, arrays, loops, methods, and tutorials

🐍 Python Project Portfolio

Diverse Python projects demonstrating web development, game creation, automation, and AI integration.

ChatBot

Games (PyGame Practice)

ImportantHSwebsites

My grade organizer

Notes Maker

Password Generator

  • Password generation tools

LEARNING_PY

  • Practice projects in various Python concepts

πŸš€ Open Source Contributions

  • PR #7416: docs: update stale Sphinx link in contributing guide
    • Contributed to the most popular HTTP library for Python (300M+ monthly downloads).
    • Improved the developer onboarding experience by auditing and updating documentation links.
    • Reviewed and approved by project maintainers.

οΏ½ Websites

GPA Calculator Web App (GPA-CALC WEBSITE /)

A modern web application for calculating GPA from grade screenshots using OCR technology.

Key Features:

  • OCR Integration: Upload screenshots of report cards to automatically extract grades
  • Flexible GPA Calculation: Support for both weighted and unweighted GPA calculations
  • Multi-Period Support: Handle multiple marking periods with customizable period counts
  • Modern Tech Stack: Built with React, TanStack Router, TypeScript, and Tailwind CSS
  • Responsive Design: Works seamlessly on desktop and mobile devices

Technologies Used:

  • React with TanStack Router for routing
  • TypeScript for type safety
  • Tailwind CSS for styling
  • Radix UI components for accessibility
  • Supabase for backend services
  • OCR processing for grade extraction

οΏ½πŸ† Highlighted Projects

These projects best demonstrate my technical skills and growth as a developer:

1. CS50 Final Project (project.py)

  • Why impressive: This comprehensive project integrates file handling, input validation, and modular design. It showcases my ability to plan and execute a complete application from concept to testing, demonstrating project management skills and attention to code quality through unit tests.

2. AI-Powered ChatBot with Gemini Integration (GeminiTapping.py)

  • Why impressive: Integrating Google's Gemini AI API shows my proficiency with modern AI technologies and API interactions. This project highlights my skills in asynchronous programming, error handling, and creating user-friendly interfaces for complex backend systems.

3. PyGame Game Collection (e.g., Pong.py, snake.py)

  • Why impressive: Developing multiple games using PyGame demonstrates strong object-oriented programming skills, game physics implementation, and user interface design. These projects showcase my ability to translate concepts into interactive, visually engaging applications.

4. Compound Interest Calculator (compoundInterestCalculator.java)

  • Why impressive: This financial calculator combines mathematical accuracy with clean code architecture. It highlights my understanding of complex algorithms, user input handling, and practical application development in Java.

5. Open Source Contribution to Requests Library

  • Why impressive: Contributing to one of Python's most widely-used libraries demonstrates my ability to work within large codebases, follow contribution guidelines, and improve developer tooling. This shows real-world collaboration skills and attention to documentation quality.

This portfolio represents my dedication to continuous learning and practical application of programming concepts across multiple languages and domains.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors