PDM Projects

Here are some of the incredible things people have built in PDM:

Jazztunes

Jazztunes is a jazz repertoire management app built in Django, with htmx and DataTables handling some key frontend functionality and styling via customized Bootstrap.

It allows you to view, edit, search, and sort the tunes you know; crucially, you can track when you last played a tune to see at a glance what you need to practice.

Other features includes tune suggestion, which randomly picks a tune based on your search results, and a preloaded database of 200 jazz standards to help get you started importing your repertoire.

GitHub repodeployed app

jazztunes
321439510 e5230cc4 5643 4836 b362 8b042dba3d5f

FIRAC Generator

Using Python / NLP / AI to simplify case study analysis making legal research faster and more precise.

You can read more about the why and how in the repo’s README.

Live app

Electronic Scorer Sheet

The Electronic Scorer Sheet app is a digital tool specifically designed for scoring baseball and softball games.

It allows users to log in, create and manage games and teams, add players, and handle line-ups.

The interface presents a scoreboard for real-time game scoring and offers functions like switching between different team scoreboards focusing on user-friendly game management.

GitHub repo

grafik
Screenshot 2024 02 19 at 15.33.32

Mapping Great Empires

Using Folium & Streamlit to take polygons from a geojson and plot them on a map.

GitHub repodeployed app

Vatic

Digital communication with HMRC to manage UK VAT

  • Retrieve VAT Obligations
  • Submit VAT Returns
  • View Past Returns
  • View VAT Payments
  • Check Fraud Prevention Headers for Compliance
282394220 cecab5dc fecb 45b7 b14a 791782aa831e

Sales Performance

Sales Performance is an interactive tool designed to provide valuable insights into your sales data.

It enables users to track key metrics, visualize trends through interactive charts, forecast future sales, and optimize performance.

The tool is designed to empower sales teams with actionable intelligence, helping them achieve growth with ease.

GitHub repo

Support Everyday

Support Everyday is an innovative Streamlit application that combines advanced AI models for sentiment analysis and health advice.

Using OpenAI’s GPT models, Whisper for speech-to-text, and custom Python logic, this application provides users with health advice based on their input, either through text or voice.

GitLab repo

chat
home depot screenshot

Home Depot Product Scraper

The aim of this project is to build a web scraper in Python using a combination of tools to extract product data from HomeDepot.com for price comparisons in the remediation services industry.

This is an ongoing project aimed at comparing the pricing of remediation services with the material costs available on HomeDepot.com. The purpose of this comparison is to assist in insurance claims related to remediation expenses.

The web scraper will have an online interface using Streamlit where the user can select multiple categories they want to query. The selected categories will be used to create a list of category links which will be fed into a product details scraper. The spider will read each link, scrape all the product data, and return the data back to the user through an API.

GitHub repo

Path Finder

With Path Finder the user can get a route between two points on a map, prioritizing on distance or quietness.

GitHub repo

Screenshot 2023 06 01 at 18.51.53
Screenshot 2023 03 09 at 18.59.54

AI Photo Web App

A tool that allows users to transform their photos into works of art using various features like filter application, face detection, and style transfer.

Users can enhance their photos and turn them into visually stunning pieces. The app provides a user-friendly interface, making it easy for anyone to use, even if they have little or no experience with photo editing.

Philanthropic Finder

An application that allows users a convenient way to search for charities based on various criteria, including:

  • Philanthropic interest
  • Region / country
  • Underserved areas

Stack: Django, Tailwind-CSS, GlobalGiving API’s nonprofit data, and Folium (for data visualization)

GitHub repo

Philanthropic Finder
Screenshot 2023 02 25 at 2.56.37 PM

Blackjack

Command Line Single-player game of Blackjack. The game consists of two rounds between Player and Dealer.

If the Player wins, they earn 2x their initial bet. At the end of each game, the Player is asked if they would like to play again.

PyPI package

Yourbooks

FastAPI application allowing individuals to manage their reading lists from an ever-growing books database.

It includes endpoints for managing users, books and lists using POST, GET, PATCH, DELETE and PUT with additional endpoints for user password encryption and OAuth.

Serving as the front-end, a terminal application was built using Typer while leveraging Google Books API.

PyPI packagefront-end CLI app

swagger
pytest tui

pytest-tui

pytest-tui is a pytest plugin that gives testers the ability to review their test-run results in-console or in-browser. Results are categorized by outcome, and presented in a way that makes finding specific results fast and easy.

The TUI is rendered using the Textual library – from the same folks who brought you Rich. The HTML page is generated using Python code that wraps HTML/CSS/Javascript.

GitHub repo

Dragon Quest Monsters Database

The Dragon Quest Monsters Database is a game information guide for the Gameboy game, Dragon Quest Monsters – Terry’s Wonderland released in 1998 (also known as Dragon Warrior Monsters in the US). This game is similar to Pokemon with its monster taming, training, and battling gameplay, but has a convoluted breeding and inheritance system where a guide is helpful.

This app shows important game info including the in-game bestiary, breeding combinations, learnable skills list, and obtainable items list.

The back-end was built with FastAPI/SQLModel with a SQLite database deployed on Deta.

The front-end was built with Streamlit and deployed on Streamlit Cloud.

API repofront-end repolive APIlive websiteblog post

Dragon Quest Monsters Database
Dataquilt

Dataquilt

Dataquilt is prototype project that sources data from the National Oceanic and Atmospheric Administration (NOAA) and transforms it into a digital work of art.

The app creates a digit mockup of a temperature quilt. Temperature quilts display the daily temperature data from a specific year and location. Colors are assigned to specific temperature ranges so that the quilt (or image) is a visual record of the climate.

This project uses pandas, Pillow, matplotlib along with Streamlit.io to construct a data story.

This app is hosted on streamlit.io and the repository is available on GitHub.

GitHub repo | blog post

Wonder Watch – Media Finder

An application that enables users to easily search for a movie or TV Show to watch, based on various criteria, including:

– Recommended / similar media based on provided media title
– Trending for the day / week
– Now-Playing / On-Air
– Top-Rated
– Release Year
– Cast / Crew

Wonder Watch is powered by Django, Bootstrap and TMDB (The Movie Database).

GitHub repo

media search Ronnie PDM resize
mk app screeenshot1

ISSF Scraper

An application to scrape and analyse International Shooting Sport Federation (ISSF) results. The data is being used to understand what it takes to win in each Shooting Sport discipline.This is supporting coaches and athletes to understand gaps in current performance and providing objective data on the scores required to achieve their performance objectives.

The application uses Playwright, Typer and Streamlit and consists of two parts: a scraper using a Typer command line interface, and a Streamlit web app to build and share the data analysis.

TechSwap

The idea of TechSwap is to provide a marketplace for people to swap (no cash involved) tech items that they may have lying around but no longer need. The project is written in Django and Python, hosted on Heroku, it uses Amazon S3 storage and Google Maps/Google Places API’s.

GitHub repo

techswap
music spotify api

High-Performance Music API

Fully-documented REST API for extracting, transforming, and storing playlists, artists, songs, and related metadata.

Github repo

Newton AI

Newton AI is a transcoding service leveraging machine learning to perform image/video/audio enhancing and upscaling.

newtonai.io interface screenshot
timecapsule

Time Capsule Journal

Would you like to ensure your memories will be passed on? Time Capsule Journal is a Django app that lets you write about lessons and stories you would like to be passed on. You can set a specific time to release this information to your contacts or just let it release automatically when you are unable to check-in.

Live website

PDM AutoSession MVP

A Minimum Viable Product (MVP) developed in the PyBites Developer Mindset Program. The goal was to auto generate an Irish music set from a collection of individual Irish tunes. Currently there are six Irish jigs that can be mixed and matched to show proof of concept. It’s using an AWS EC2 instance with a dockerized Django app for deployment.

Github repo

pdm autosession mvp
flooding pipeline project

Flooding Pipeline

A labelling pipeline that is used to send satellite image data to labellers for training and validation of ML models of flood maps.

Research paper

COLCA

COLCA (Cost Optimizator and Low Carbon Accountability) is a Python App for optimizing operation costs of industrial processes powered with a mixture of renewable / non renewable energy. The App also performs an accountability of Carbon Emissions for each project and forecasting its cost. Technologies used: Scrapy, MongoDB, FastAPI, skforecast, pytest and Sphinx.

Project docs

COLCA Documentation Screenshot
Screenshot of App output

Modeling biological processes

Application to fit the rate of development on temperature as part of a set of bio-demographic functions for modeling basic biological processes in any organism using physiologically based demographic models (PBDMs, see here and here). The basic idea would be to develop functionality similar to the devRate R package using the lmfit Python package.

Remind Me

Get a text to remind you about any event, at a date and time of your choice. Uses FastAPI, SQLAlchemy, Chameleon, Gmail for texting and it’s hosted on Heroku.

Github repo

Screenshot of the RemindMe UI
crypto portfolio

CoinHub

This project is a crypto app that is designed to serve as a cryptocurrency portfolio tracker, but also to be a place where you can find trading information about your favorite crypto coins and projects. Stack: Django, Postgres, BeautifulSoup, CoinGecko API, pandas, matplotlib and (of course) pytest.

GitHub repo

spike2py

spike2py provides a simple interface to analyse and visualise data collected using Spike2 software and Cambridge Electronics Design (CED) data acquisition boards. With it you can easily plot individual channels or all channels from a given trial. In addition, you can easily apply various signal processing methods to your waveform data. Finally, you can easily save your data at any point, allowing you to re-open and continue your work from where they left off.

PyPI package

spike2py
pliffy

pliffy

pliffy makes difference plots, plots that are simple and informative. At present, pliffy makes difference plots for two independent groups (e.g. treatment vs control) or for two measurements made in the same group (e.g. pre-treatment vs post-treatment). All raw data points are plotted by default, and data is summarised with the mean and confidence interval. The confidence interval is calculated using the appropriate t-distribution and is set to 95% by default.

PyPI package

The Payroll App

Payroll is a SAAS application that simplifies payroll for small businesses. It offers full-service payroll, with automated tax forms, pay stubs and bank upload files. Payroll is built using Django / Python. 

Live website

Screenshot 2022 06 21 at 10.28.20
Project Thumbnail Roller Angel 2

GLOBE API Workshop

API’s are used to allow programs to communicate amongst each other to do useful tasks.

This app uses different services for different tasks that communicate with each other:
– Send a text (SMS) message with temperature data that relays the information gathered to a FastAPI endpoint storing the data into a PostgreSQL database.
– Send email to the GLOBE Email Data Entry system using the SendGrid API
– Replying to text messages using the Twilio API, providing a link to a webpage showing the data you sent in.

This project will open your eyes to the possibilities of connecting diverse programs together using their various API’s and how one might go about creating customised APIs to facilitate these interactions.

GitHub repo

Flask-Meld

Flask-Meld is a library to provide server rendered templates over websockets for Flask applications to build reactive components without Javascript. Flask-Meld utilizes WebSockets and morphdom to create server-rendered HTML and swap out DOM elements without refreshing the page.

GitHub repo

2021 11 16 102417
20211118 snippets app

Snippets App

In this app, you can save and run code snippets locally. Creating snippets, you can provide them with a title, description, an additional note, and the link to the source. You can update or delete a snippet, and you can mark a snippet as a favorite.

Stack: FastAPI / SQLModel / Bootstrap / Pyodide.

MedPyx

MedPyx is a digital health solutions and practice management platform for pharmacy professionals. A key goal of this PDM project was to build out a core set of self-updating drug product databases, along with RESTful APIs to access them. The technology stack used
includes Django and PostgreSQL for the back end, with HTMX and Tailwind CSS for the front end. Hosted on Heroku for rapid deployment. Amazon S3 is used for image storage/retrieval.

Screen Shot 2021 10 13 at 9.50.13 AM
image

Search over 25,000 research articles on the effects of noise and benefits of quiet, making this extensive body of research accessible to journalists, researchers, government officials, students, and enthusiasts. New research articles are added daily, so you can expect to find the latest research here.

Stack: Flask, SQLAlchemy, htmx, Tailwind CSS, and a lot of API and data wrangling 🙂

Live website

MaxUptime.io

Is your website online?  How would you know if it went down? Ensure that your website is always online with MaxUptime.io!

Every 10 minutes we check that your site responds with HTTP Status Code 200.  If it does not, we’ll send you an email to let you know that it has gone down.

Live website

maxuptime
unnamed 2

LogParser

The idea of this tool is to search for logs quickly from servers. It removes a lot of complexity and is faster for the end user.

The tool is built with Flask for the front-end and uses Paramiko to manage the SSH connection. 

Tunetown

A platform for creating, contributing to, and sharing music. You can upload a clip and ask for contributors to add onto it- or you can contribute to an existing clip by downloading and opening a revision request!

revision page
jorge app

Py-phone-caller

Py-phone-caller is a collection of 9 Python micro-services, that tied together can be used to send SMS messages or make phone calls (using the Asterisk PBX) in case of alerts and using a monitoring system (Prometheus webhook or simple HTTP POST requests).

Within the web interface you can also schedule calls to be started at a given time. It run on-premises using Kubernetes / containerisation.

Lego Art Project

A hobby project that allows you to make custom-made building instructions for mosaic-like pictures based on Lego Art theme. The project was made with Python Imaging Library (PIL), PDF document generation in Python library (fpdf2), and Django as the user interface.

I saw a similar app that could make custom-made instructions, and I thought: ‘wow, this is so cool! I wish I could make something like that’.  This was before I started coding. Less than one year later I managed to build a similar app myself and deploy it. In Python ❤️. Without looking at the source code of similar apps. 🤘

– Marcin reflecting on his MVP

Live websiteGitHub repo

lego artwork project