import streamlit as st # 🌟🔥 Set up the Streamlit UI with a checklist style! st.title("📋 Library Demo Checklist") st.write("Check off each demo as you try these witty one-liners from our galaxy of libraries!") # 🌟 Session state to track checklist if 'checklist' not in st.session_state: st.session_state['checklist'] = {i: False for i in range(1, 41)} # 40 demos total # 📜 PDF Libraries Section with st.expander("📜 PDF Libraries", expanded=True): st.subheader("PDF Powerhouse") st.write("Tick these off as you shred, spin, and weave PDFs!") # 1. pypdf st.checkbox("1. pypdf - Snags text faster than a paper shredder at a spy convention!", key="check_1", value=st.session_state['checklist'][1], on_change=lambda: st.session_state['checklist'].update({1: not st.session_state['checklist'][1]})) st.code("pypdf.PdfReader('doc.pdf').pages[0].extract_text()") # 2. pikepdf st.checkbox("2. pikepdf - Gives your PDF a makeover like a digital plastic surgeon!", key="check_2", value=st.session_state['checklist'][2], on_change=lambda: st.session_state['checklist'].update({2: not st.session_state['checklist'][2]})) st.code("pikepdf.Pdf.open('in.pdf').save('out.pdf')") # 3. pdfminer.six st.checkbox("3. pdfminer.six - Pulls text out like a magician yanking a rabbit from a hat!", key="check_3", value=st.session_state['checklist'][3], on_change=lambda: st.session_state['checklist'].update({3: not st.session_state['checklist'][3]})) st.code("pdfminer.high_level.extract_text('doc.pdf')") # 4. fpdf2 st.checkbox("4. fpdf2 - Whips up a PDF quicker than a chef flipping pancakes!", key="check_4", value=st.session_state['checklist'][4], on_change=lambda: st.session_state['checklist'].update({4: not st.session_state['checklist'][4]})) st.code("fpdf.FPDF().add_page().output('new.pdf')") # 5. pdfkit st.checkbox("5. pdfkit - Turns web pages into PDFs like a spider spinning a paper web!", key="check_5", value=st.session_state['checklist'][5], on_change=lambda: st.session_state['checklist'].update({5: not st.session_state['checklist'][5]})) st.code("pdfkit.from_url('http://example.com', 'out.pdf')") # 6. pdfrw st.checkbox("6. pdfrw - Reads PDFs like a librarian with a caffeine buzz!", key="check_6", value=st.session_state['checklist'][6], on_change=lambda: st.session_state['checklist'].update({6: not st.session_state['checklist'][6]})) st.code("pdfrw.PdfReader('doc.pdf')") # 7. pdfplumber st.checkbox("7. pdfplumber - Dives into PDFs and grabs text like a plumber fixing a leaky pipe!", key="check_7", value=st.session_state['checklist'][7], on_change=lambda: st.session_state['checklist'].update({7: not st.session_state['checklist'][7]})) st.code("pdfplumber.open('doc.pdf').pages[0].extract_text()") # 8. pymupdf st.checkbox("8. pymupdf - Speed-reads PDFs faster than a bookworm on espresso!", key="check_8", value=st.session_state['checklist'][8], on_change=lambda: st.session_state['checklist'].update({8: not st.session_state['checklist'][8]})) st.code("fitz.open('doc.pdf')[0].get_text()") # 9. borb st.checkbox("9. borb - Crafts PDFs smoother than a bard reciting poetry!", key="check_9", value=st.session_state['checklist'][9], on_change=lambda: st.session_state['checklist'].update({9: not st.session_state['checklist'][9]})) st.code("borb.pdf.Document().save('out.pdf')") # 10. pdf2image st.checkbox("10. pdf2image - Turns PDFs into pics like a wizard waving a wand!", key="check_10", value=st.session_state['checklist'][10], on_change=lambda: st.session_state['checklist'].update({10: not st.session_state['checklist'][10]})) st.code("pdf2image.convert_from_path('doc.pdf')[0].save('out.jpg')") # 📸 Image Capture Libraries Section with st.expander("📸 Image Capture Libraries", expanded=True): st.subheader("Image Snappers") st.write("Check these off as you snap, grab, and process pixel perfection!") # 11. opencv-python st.checkbox("11. opencv-python - Snaps a pic quicker than a paparazzi at a celebrity meltdown!", key="check_11", value=st.session_state['checklist'][11], on_change=lambda: st.session_state['checklist'].update({11: not st.session_state['checklist'][11]})) st.code("cv2.imwrite('snap.jpg', cv2.VideoCapture(0).read()[1])") # 12. pillow st.checkbox("12. pillow - Polishes pics like a pillow fluffer at a sleepover!", key="check_12", value=st.session_state['checklist'][12], on_change=lambda: st.session_state['checklist'].update({12: not st.session_state['checklist'][12]})) st.code("Image.fromarray(cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)).save('out.jpg')") # 13. imutils st.checkbox("13. imutils - Grabs frames smoother than a cat burglar in sneakers!", key="check_13", value=st.session_state['checklist'][13], on_change=lambda: st.session_state['checklist'].update({13: not st.session_state['checklist'][13]})) st.code("imutils.video.VideoStream(src=0).start().read()") # 14. pyscreeze st.checkbox("14. pyscreeze - Snags your screen like a sneaky spy with a camera!", key="check_14", value=st.session_state['checklist'][14], on_change=lambda: st.session_state['checklist'].update({14: not st.session_state['checklist'][14]})) st.code("pyscreeze.screenshot().save('screen.jpg')") # 15. pyautogui st.checkbox("15. pyautogui - Snaps your desktop faster than a robot paparazzo!", key="check_15", value=st.session_state['checklist'][15], on_change=lambda: st.session_state['checklist'].update({15: not st.session_state['checklist'][15]})) st.code("pyautogui.screenshot().save('screen.jpg')") # 16. mss st.checkbox("16. mss - Captures screens quicker than a ninja snapping selfies!", key="check_16", value=st.session_state['checklist'][16], on_change=lambda: st.session_state['checklist'].update({16: not st.session_state['checklist'][16]})) st.code("mss.mss().shot(output='screen.png')") # 17. imageio st.checkbox("17. imageio - Snags images like a pirate looting a pixel treasure chest!", key="check_17", value=st.session_state['checklist'][17], on_change=lambda: st.session_state['checklist'].update({17: not st.session_state['checklist'][17]})) st.code("imageio.imwrite('out.jpg', imageio.get_reader('').get_next_data())") # 18. pygrabber st.checkbox("18. pygrabber - Grabs Windows shots like a cowboy roping a pixel steer!", key="check_18", value=st.session_state['checklist'][18], on_change=lambda: st.session_state['checklist'].update({18: not st.session_state['checklist'][18]})) st.code("pygrabber.dshow_graph.FilterGraph().grab_frame().save('out.jpg')") # 19. scikit-image st.checkbox("19. scikit-image - Processes pics like a scientist dissecting a pixel frog!", key="check_19", value=st.session_state['checklist'][19], on_change=lambda: st.session_state['checklist'].update({19: not st.session_state['checklist'][19]})) st.code("skimage.io.imsave('out.jpg', frame)") # 20. grab st.checkbox("20. grab - Snaps screens like a ghost haunting your desktop!", key="check_20", value=st.session_state['checklist'][20], on_change=lambda: st.session_state['checklist'].update({20: not st.session_state['checklist'][20]})) st.code("grab.Grab().screen().save('screen.jpg')") # 🎥 Video Capture Libraries Section with st.expander("🎥 Video Capture Libraries", expanded=True): st.subheader("Video Vanguards") st.write("Mark these as you snatch frames and stream like a pro!") # 21. opencv-python (Video) st.checkbox("21. opencv-python - Grabs video frames like a director snatching scenes from a blockbuster!", key="check_21", value=st.session_state['checklist'][21], on_change=lambda: st.session_state['checklist'].update({21: not st.session_state['checklist'][21]})) st.code("cv2.VideoCapture(0).read()[1]") # 22. vidgear st.checkbox("22. vidgear - Streams video smoother than a greased-up eel!", key="check_22", value=st.session_state['checklist'][22], on_change=lambda: st.session_state['checklist'].update({22: not st.session_state['checklist'][22]})) st.code("vidgear.gears.CamGear(source=0).start().read()") # 23. moviepy st.checkbox("23. moviepy - Edits clips like a director yelling 'Cut!' at a pixel party!", key="check_23", value=st.session_state['checklist'][23], on_change=lambda: st.session_state['checklist'].update({23: not st.session_state['checklist'][23]})) st.code("moviepy.editor.VideoFileClip('video.mp4').write_videofile('out.mp4')") # 24. pyav st.checkbox("24. pyav - Grabs frames like a ninja snatching scrolls from a vault!", key="check_24", value=st.session_state['checklist'][24], on_change=lambda: st.session_state['checklist'].update({24: not st.session_state['checklist'][24]})) st.code("av.open('/dev/video0').decode(video=0).__next__()") # 25. pafy st.checkbox("25. pafy - Streams YouTube like a couch potato binge-watching cat videos!", key="check_25", value=st.session_state['checklist'][25], on_change=lambda: st.session_state['checklist'].update({25: not st.session_state['checklist'][25]})) st.code("pafy.new('youtube_url').getbest().url") # 26. cvpubsubs st.checkbox("26. cvpubsubs - Captures cams like a pub serving pixel pints!", key="check_26", value=st.session_state['checklist'][26], on_change=lambda: st.session_state['checklist'].update({26: not st.session_state['checklist'][26]})) st.code("cvpubsubs.webcam_pub.VideoHandlerThread(0).start()") # 27. imutils (Video) st.checkbox("27. imutils - Streams video like a thief sneaking frames in the night!", key="check_27", value=st.session_state['checklist'][27], on_change=lambda: st.session_state['checklist'].update({27: not st.session_state['checklist'][27]})) st.code("imutils.video.VideoStream(src=0).start().read()") # 28. imageio (Video) st.checkbox("28. imageio - Snags video frames like a fisherman reeling in pixel fish!", key="check_28", value=st.session_state['checklist'][28], on_change=lambda: st.session_state['checklist'].update({28: not st.session_state['checklist'][28]})) st.code("imageio.get_reader('').get_next_data()") # 29. grab (Video) st.checkbox("29. grab - Records screens like a ghost filming a desktop haunting!", key="check_29", value=st.session_state['checklist'][29], on_change=lambda: st.session_state['checklist'].update({29: not st.session_state['checklist'][29]})) st.code("grab.Grab().screen().save('frame.jpg')") # 30. pyscreeze (Video) st.checkbox("30. pyscreeze - Snaps screen video like a spy with a frame-by-frame camera!", key="check_30", value=st.session_state['checklist'][30], on_change=lambda: st.session_state['checklist'].update({30: not st.session_state['checklist'][30]})) st.code("pyscreeze.screenshot().save('screen.jpg')") # 🎵 Audio Capture Libraries Section with st.expander("🎵 Audio Capture Libraries", expanded=True): st.subheader("Audio Aces") st.write("Tune in and check these off as you capture sound like a pro!") # 31. pydub st.checkbox("31. pydub - Twists audio like a DJ spinning tunes at a silent disco!", key="check_31", value=st.session_state['checklist'][31], on_change=lambda: st.session_state['checklist'].update({31: not st.session_state['checklist'][31]})) st.code("pydub.AudioSegment.from_file('audio.wav').export('out.wav')") # 32. pyaudio st.checkbox("32. pyaudio - Grabs sound bites faster than a parrot snagging crackers!", key="check_32", value=st.session_state['checklist'][32], on_change=lambda: st.session_state['checklist'].update({32: not st.session_state['checklist'][32]})) st.code("pyaudio.PyAudio().open().read(1024)") # 33. sounddevice st.checkbox("33. sounddevice - Snags audio smoother than a whisper in a quiet cave!", key="check_33", value=st.session_state['checklist'][33], on_change=lambda: st.session_state['checklist'].update({33: not st.session_state['checklist'][33]})) st.code("sounddevice.rec(44100).tobytes()") # 34. soundfile st.checkbox("34. soundfile - Saves sound like a librarian archiving whispers!", key="check_34", value=st.session_state['checklist'][34], on_change=lambda: st.session_state['checklist'].update({34: not st.session_state['checklist'][34]})) st.code("soundfile.write('out.wav', data, 44100)") # 35. pyaudioanalysis st.checkbox("35. pyaudioanalysis - Analyzes audio like a detective cracking a sonic mystery!", key="check_35", value=st.session_state['checklist'][35], on_change=lambda: st.session_state['checklist'].update({35: not st.session_state['checklist'][35]})) st.code("pyAudioAnalysis.audioBasicIO.read_audio_file('audio.wav')[1]") # 36. pyo st.checkbox("36. pyo - Spins audio magic like a wizard mixing potions!", key="check_36", value=st.session_state['checklist'][36], on_change=lambda: st.session_state['checklist'].update({36: not st.session_state['checklist'][36]})) st.code("pyo.Server().boot().start()") # 37. speechrecognition st.checkbox("37. speechrecognition - Hears you like a nosy neighbor with super ears!", key="check_37", value=st.session_state['checklist'][37], on_change=lambda: st.session_state['checklist'].update({37: not st.session_state['checklist'][37]})) st.code("speech_recognition.Recognizer().listen(speech_recognition.Microphone())") # 38. pyalsaaudio st.checkbox("38. pyalsaaudio - Grabs Linux sound like a penguin snagging fish!", key="check_38", value=st.session_state['checklist'][38], on_change=lambda: st.session_state['checklist'].update({38: not st.session_state['checklist'][38]})) st.code("pyalsa.alsaaudio.PCM().read()[1]") # 39. soundcard st.checkbox("39. soundcard - Captures sound like a bard strumming a silent lute!", key="check_39", value=st.session_state['checklist'][39], on_change=lambda: st.session_state['checklist'].update({39: not st.session_state['checklist'][39]})) st.code("soundcard.default_microphone().record(44100, 1)") # 40. webrtcvad st.checkbox("40. webrtcvad - Detects voices like a spy eavesdropping on a whisper party!", key="check_40", value=st.session_state['checklist'][40], on_change=lambda: st.session_state['checklist'].update({40: not st.session_state['checklist'][40]})) st.code("webrtcvad.Vad().is_speech(audio_frame, 16000)") # 📊 Progress Tracker st.write("### Progress Tracker") completed = sum(1 for v in st.session_state['checklist'].values() if v) st.progress(completed / 40) st.write(f"{completed} out of 40 demos checked off!")