Skip to content

Instantly share code, notes, and snippets.

View JupyterJones's full-sized avatar

Jack Northrup JupyterJones

View GitHub Profile
@JupyterJones
JupyterJones / README.md
Created July 2, 2025 11:21
Flask image morphing with music

🎭 Arcadian Face Morpher & Video Studio

A Flask-based multimedia tool powered by MoviePy, OpenCV, and Dlib for morphing faces, generating AI-enhanced video sequences, adding mood-based background music, and concatenating video clips into artistic content.

💡 Features

  • 🌀 Face Morphing: Upload two facial images and generate a smooth morph transition.
  • 🎶 Musical Morphs: Select a background music track to sync with the morph animation.
  • 🖼 Add Video Frame Overlay: Automatically embeds a glowing border to the final morph.
  • 🎞 Video Concatenation: Combine 4 separate video files into a single clip with optional music.
@JupyterJones
JupyterJones / Voice_Code_by_Phone.py
Created June 27, 2025 06:42
Voice Code by Phone
import os
import sqlite3
import re
import time
import uuid
import glob
from flask import Flask, render_template_string, request, url_for, session
from werkzeug.utils import secure_filename
from typing import Union
@JupyterJones
JupyterJones / Planner.py
Created June 20, 2025 18:57
The Project Planner is a personal assistant built for developers who think deeply, create often, and need a space to remember everything they build. It runs quietly in your browser using Flask, capturing the lifeblood of your creative process including your ideas, your goals, your documentation, your notes, and even your code.
import os
from flask import Flask, render_template_string, request, redirect, url_for, flash, jsonify, make_response
from flask_sqlalchemy import SQLAlchemy
import chromadb
from sentence_transformers import SentenceTransformer
from datetime import datetime
import mistune # New library for Markdown
from markupsafe import escape, Markup
# --- App & Database Configuration ---
app = Flask(__name__)
@JupyterJones
JupyterJones / flipbook.py
Created June 20, 2025 03:59
Flask Application Creates mp4 from Images
import os
from flask import Flask, request, render_template, redirect, flash, url_for, render_template_string
from moviepy.editor import ImageSequenceClip
app = Flask(__name__)
app.config['UPLOAD_FOLDER'] = os.path.join(app.root_path, 'static/uploads')
app.secret_key = 'your_secret_key' #Replace with a strong, randomly generated secret key
@app.route('/', methods=['GET', 'POST'])
@JupyterJones
JupyterJones / dialogue.py
Created June 14, 2025 09:34
create an AI podcast in mp3
import httpx
import json
import os
import re
import sqlite3
from datetime import datetime
from fastapi import FastAPI, Form, HTTPException, BackgroundTasks, Request
from fastapi.responses import StreamingResponse, HTMLResponse
from icecream import ic
# --- LangChain & Database Imports ---
@JupyterJones
JupyterJones / avif2jpg.sh
Created June 2, 2025 01:22
convert a directory of avif files to jpg using docker
#!/bin/bash
# CONV is ffmpeg via docker
Path=$1
echo "Processing directory: $Path"
# Ensure the path ends with a slash
if [[ "$Path" != */ ]]; then
Path="$Path"/
fi
@JupyterJones
JupyterJones / text2scrolling_mp4.py
Created May 23, 2025 19:34
convert a text file to a scroling mp4 that matches length of mp3
from PIL import Image, ImageDraw, ImageFont
import subprocess
import textwrap
from icecream import ic
#--------------------
def get_mp3_duration(mp3_path):
cmd = [
"ffprobe", "-v", "error",
"-show_entries", "format=duration",
@JupyterJones
JupyterJones / text2audio.py
Created May 23, 2025 19:25
convert text to audio using balacoon library
from balacoon_tts import TTS
import soundfile as sf
import numpy as np
import traceback
import os
import subprocess
import re
from icecream import ic
import sys
# >>> ============================================================ <<<
@JupyterJones
JupyterJones / app_generator_v2_directions.txt
Last active May 17, 2025 16:17
this contains the code and directions for an AI teaching/learning Assistant it is extremely effective and makes learning fun for any topic
Guide: Generating and Using Topic-Specific Learning Assistant Backend
https://github.com/JupyterJones/frontend
This document outlines how to use the Flask-based App Generator to create new topic-specific FastAPI Backend Applications for your learning assistant project.1. OverviewThe system consists of two main Python scripts:Flask App Generator (app_builder.py - your second script):A Flask web application that provides a user interface to input a topic name and a structured prompt.It uses a master template (template_app_v2.py) to generate a new, customized FastAPI backend application tailored to the specified topic.It also creates necessary directories and the topic-specific structured prompt file.FastAPI Backend Template (template_app_v2.py - your first script):A comprehensive FastAPI application template designed to serve as a backend for a learning assistant.It includes features like Q&A with Gemini, conversation history, file management, vector search with ChromaDB, context-enhanced responses, conversati
@JupyterJones
JupyterJones / NOTE.py
Created December 8, 2024 20:08
This application, called "NOTE," is a lightweight command-line notes manager built using Python and SQLite.
#!/usr/bin/python3
import sys
import sqlite3
DATABASE = "notes.db"
conn = sqlite3.connect(DATABASE)
from datetime import datetime
conn.text_factory = str
c = conn.cursor()
if len(sys.argv) < 3:
print ("\n******* NOTE - Notes Editor ******")