Hello! My Name is Owen Deines!

CloudLock Password Manager screenshot

CloudLock Password Manager

CloudLock is a secure cloud-based password manager built with React, Python, SQL, and AWS. It enforces a zero-knowledge architecture, ensuring that all encryption and decryption occur client-side. The server never has access to passwords or master keys.
This project demonstrates secure system design principles, client-side cryptography, and modern cloud deployment practices. Click image to enlarge!

Features

  • Zero-knowledge encryption (client-side cryptography)
  • Secure password generation
  • AWS cloud deployment
  • User-friendly interface built with React
  • Injection-resistant authentication flows

Architecture

Frontend

  • React
  • Client-side encryption
  • WebAuthn API integration

Backend

  • Python (Flask / FastAPI)
  • RESTful API
  • Secure authentication handling

Database

  • SQL database storing encrypted credential blobs

Cloud Infrastructure

  • AWS (API Gateway, Lambda, optional RDS)

Security Model

CloudLock follows a zero-knowledge security model:

  • All sensitive data is encrypted before transmission.
  • The backend stores only encrypted data.
  • The server cannot decrypt user credentials.

This ensures confidentiality even in the event of server compromise.


GitHub Repository
Grade Calculator screenshot

Grade Calculator

A Python/PyQt application that lets students calculate grades based on assignments and assignment categories that have corresponding weights. The application also allows students to calculate the percentage grade needed on an upcoming assignment to achieve a specified letter grade. Click image to enlarge!


Classes

Add your academic classes that contain:

  • Class categories
  • Assignments
  • Letter grade thresholds

Categories

  • Each category has a weight
  • Add assignments into categories
  • Category weights must not exceed 100%

Assignments

  • Define total possible points.
  • Enter points earned.
  • Must belong to a category.

Grade Thresholds

  • Percentage required to earn each letter grade.
  • Fully customizable.
  • Thresholds must not overlap.

Hypothetical Grades

Create a hypothetical assignment and calculate what score you must earn to achieve a specific letter grade.

Save/Load

Class data can be saved and loaded for later use.


GitHub Repository
Bedwars Stat Tracker screenshot

Bedwars Stat Tracker

Twitch Extension that displays Minecraft Hypixel Bedwars mini-game stats for a broadcaster-selected player.
The frontend renders the tracked player and Bedwars stats inside the extension panel. The backend verifies Twitch JWTs, stores channel configuration, fetches Mojang and Hypixel data, and caches computed stats in DynamoDB. Click image to enlarge!


Viewer Panel Flow

  • Twitch authorizes the extension panel and provides a JWT
  • The panel calls GET /stats with Authorization: Bearer
  • The panel renders the player name, skin image, and Bedwars stat cards
  • The panel refreshes stats every 60 seconds.

Broadcaster Config Flow

  • Twitch authorizes the config page and provides a JWT.
  • Config page loads current player via GET /channel/player.
  • Broadcaster enters a Minecraft player name.
  • Config page saves it via POST /channel/player.
  • The backend clears existing cache when player changes.

GitHub Repository