Skip to content

Instantly share code, notes, and snippets.

View codingforentrepreneurs's full-sized avatar
🔥

Coding For Entrepreneurs codingforentrepreneurs

🔥
View GitHub Profile
@codingforentrepreneurs
codingforentrepreneurs / isValidURL.js
Created July 12, 2023 19:58
Verify if a URL is valid or not via Regex in Next.js Server Components
export default async function isValidURL(url, disallowedDomains) {
// Construct a regular expression pattern to match disallowed domains
const disallowedPattern = `^https?:\\/\\/(?:${disallowedDomains.join('|')})\\b`;
let disallowedRegex = new RegExp(disallowedPattern, 'i');
// Regular expression pattern to match a URL (excluding localhost)
const urlPattern = /^(https?:\/\/)?((?!localhost)[\w.-]+)\.([a-z]{2,})(:\d{1,5})?(\/.*)?$/i;
let urlRegex = new RegExp(urlPattern);
// Test the URL against both URL pattern and disallowed domain pattern
@codingforentrepreneurs
codingforentrepreneurs / 1-install-knative-istio.sh
Last active June 10, 2023 18:24
Install Knative & Istio on Kubernetes
# Get version at https://knative.dev/docs/install/yaml-install/serving/install-serving-with-yaml/
export KNATIVE_VERSION="v1.10.1" # ensure ISTIO install matches this version too
# Install knative serving
# Ref: https://knative.dev/docs/install/yaml-install/serving/install-serving-with-yaml/#install-the-knative-serving-component
kubectl apply -f https://github.com/knative/serving/releases/download/knative-$KNATIVE_VERSION/serving-crds.yaml
kubectl apply -f https://github.com/knative/serving/releases/download/knative-$KNATIVE_VERSION/serving-core.yaml
# install istio
@codingforentrepreneurs
codingforentrepreneurs / Django_Custom_Context_Processors.md
Created February 9, 2023 17:53
Django: Custom Context Processors

Django Custom Context Processors Example

In cfehome/context_processors.py add:

def my_context(request):
    # caching
    return {
 "my_var": "hello world"
@codingforentrepreneurs
codingforentrepreneurs / main.py
Last active May 4, 2024 19:41
Transcribe videos with OpenAI Whisper and Python
# Video https://youtube.com/shorts/MNUdPGIjMPw
# Python 3.10
# pip install openai-whisper
# pip install git+https://github.com/openai/whisper.git
# install ffmpeg
# brew install ffmpeg
import subprocess
import whisper
model = whisper.load_model("base")
@codingforentrepreneurs
codingforentrepreneurs / Cassanda TimeUUID to PythonDateTime.md
Last active September 2, 2021 05:02
Convert a uuid1().time into a datetime object.

I've been using cassandra a lot lately. It's very common to denote ID fields in cassanda as a time-based uuid field called timeuuid docs. In python, a timeuuuid is mearly uuid.uuid1 from the built-in uuid package.

Using the cassandra-driver, you might end up with a model like:

import uuid
from cassandra.cqlengine import columns
from cassandra.cqlengine.models import Model
@codingforentrepreneurs
codingforentrepreneurs / number_str_to_float.py
Created August 5, 2021 16:20
A simple python function to convert a number string into a float if possible.
from fractions import Fraction
def number_str_to_float(amount_str:str) -> (any, bool):
"""
Take in an amount string to return float (if possible).
Valid string returns:
Float
Boolean -> True
@codingforentrepreneurs
codingforentrepreneurs / Scrape-BoxOfficeMojo-Notebook.ipynb
Last active January 22, 2024 08:23
Scrape & Save Data from Box Office Mojo (Educational)
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@codingforentrepreneurs
codingforentrepreneurs / Django for Jupyter.md
Last active May 7, 2024 16:24
Django Setup for use in Jupyter Notebooks

Django for Jupyter

It's true packages exist to make it "easy" to use Django inside of a jupyter notebook. I seem to always run into issues successfully running these packages. I've found the below method useful although I cannot recall how I discovered how this works (aka attribution needed).

Requirements

  • Virtual Environment (virtualenv, venv, pipenv, etc)
  • Django installed & project created (we'll use the project name cfehome)
  • Jupyter installed at least in the virtual environment