bizvideoschool commited on
Commit
d0e7c6f
1 Parent(s): 4668199

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +324 -41
app.py CHANGED
@@ -4,56 +4,339 @@ import openai
4
  # Access the OpenAI API key from Hugging Face Spaces secrets
5
  openai.api_key = st.secrets["OPENAI_API_KEY"]
6
 
7
- st.title("2024 Video Marketing Plan Generator")
8
 
9
- # User inputs for the marketing plan
10
- st.subheader("Define Your Business and Audience")
11
- business_type = st.text_input("Your Business Type", placeholder="e.g., Cafe, Yoga Studio")
12
- target_audience = st.text_area("Describe Your Target Audience", placeholder="e.g., demographics, interests")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13
 
14
- st.subheader("Current Marketing Efforts")
15
- current_marketing = st.text_area("Current Marketing Strategies", placeholder="Describe your ongoing marketing activities.")
 
 
 
 
 
 
 
16
 
17
- # Test data button for ease of testing
18
- if st.button('Load Test Data'):
19
- st.session_state['business_type'] = "Real Estate Agency"
20
- st.session_state['target_audience'] = "Families and individuals looking to buy homes in suburban areas, focusing on first-time homebuyers and those seeking to upgrade to larger properties."
21
- st.session_state['current_marketing'] = "Monthly newsletter, weekly social media posts on property listings and home buying tips, participation in local community events, and occasional paid ads on local online forums."
22
 
23
- # Use session state for input fields
24
- business_type = st.text_input("Your Business Type", value=st.session_state.get('business_type', ''), placeholder="e.g., Cafe, Yoga Studio")
25
- target_audience = st.text_area("Describe Your Target Audience", value=st.session_state.get('target_audience', ''), placeholder="e.g., demographics, interests")
26
- current_marketing = st.text_area("Current Marketing Strategies", value=st.session_state.get('current_marketing', ''), placeholder="What are your ongoing marketing activities?")
 
 
 
 
 
 
 
 
27
 
28
- if st.button('Generate My Video Marketing Plan'):
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  # Construct the prompt for text generation
30
- prompt_text = (
31
- f"Generate a 2024 video marketing plan for a {business_type} targeting an audience characterized as: {target_audience}. "
32
- f"Include up to four video ideas for each month and 10 specific distribution strategies to maximize video views, "
33
- f"based on current marketing efforts: {current_marketing}."
34
- )
35
-
36
- # Call the OpenAI API for text generation
37
- try:
38
- response_text = openai.ChatCompletion.create(
39
- model="gpt-4",
40
- messages=[
41
- {"role": "system", "content": "You are an AI specializing in marketing strategy."},
42
- {"role": "user", "content": prompt_text}
43
- ]
44
- )
45
- marketing_plan = response_text.choices[0].message['content']
46
- except Exception as e:
47
- marketing_plan = f"Error in generating marketing plan: {e}"
48
 
49
  # Display the marketing plan
50
- st.markdown("### Your Customized Video Marketing Plan")
51
- st.write(marketing_plan)
 
 
 
 
52
 
53
  # Copy to clipboard button
54
- if marketing_plan:
55
- st.markdown("## Copy Marketing Plan")
56
- st.text_area("Copy and paste the plan:", marketing_plan, height=300, key="text_area")
57
- st.button("Copy to Clipboard", key="copy-button")
58
 
59
  # No additional code needed beyond this point for your application
 
4
  # Access the OpenAI API key from Hugging Face Spaces secrets
5
  openai.api_key = st.secrets["OPENAI_API_KEY"]
6
 
7
+ st.title("2024 Video Marketing Plan Generator with Class Recommendations")
8
 
9
+ # Function to recommend classes based on video-making experience
10
+ def recommend_classes(video_experience):
11
+ # Class list from the Small Business Video Roadmap
12
+ class_list = [
13
+ """Course #1
14
+ Getting Started with Video Using The 6-Step BVS Process
15
+ Class #1: Why Video Works and Outlining Your 12-Month Plan
16
+ Class #2: 6 Simple Steps to Creating a Video (Part 1)
17
+ Class #3: 6 Simple Steps to Creating a Video (Part 2)
18
+
19
+ Course #2
20
+ Your First Video Strategy: Building Relationships with Video Messages
21
+ Class #1: 5 Easy Video Message Strategies
22
+ Class #2: How to Create and Send 1-to-1 Videos
23
+ Tutorial: Using Vidyard to Send 1-to-1 Videos
24
+ Tutorial: Using BombBomb to Send 1-to-1 Videos
25
+ Tutorial: Using Dubb to Send 1-to-1 Videos
26
+ Tutorial: Using Facebook Messenger to Send 1-to-1 Videos
27
+ Tutorial: Using Instagram Messenger to Send 1-to-1 Videos
28
+ Class #3: Establishing YOUR Video Messaging System… and Habit!
29
+ Bonus Training: Which Video Messaging Tool Should You Use?
30
+
31
+ Course #3
32
+ Scale Yourself with Video
33
+ Class #1: Create FAQ Videos to Save Time (Part 1)
34
+ Class #2: Create FAQ Videos to Save Time (Part 2)
35
+ Class #3: Enhancing Your Videos with Canva Templates
36
+ Class #4: Create Training Videos for Your Team
37
+ Class #5: Communicate with Your SOI Database at Scale
38
+ Class #6: Being Compelling on Camera
39
+ Class #7: The Basics of Scripting
40
+ Tutorial: Recording Video Footage with Jump Cuts in CapCut
41
+ Tutorial: How to Use the CapCut Camera and Teleprompter
42
+ Tutorial: Be Authentic and Compelling on Camera (Part 1)
43
+ Tutorial: Be Authentic and Compelling on Camera (Part 2)
44
+ Tutorial: How to Use the BIGVU Teleprompter App
45
+ Tutorial: How to Use the PromptSmart Pro Teleprompter App
46
+
47
+ Course #4
48
+ Video Editing 101
49
+ Class #1: Video Editing Tools and Terminology
50
+ Class #2: Video Editing in Wondershare Filmora (Part 1)
51
+ Class #3: Video Editing in Wondershare Filmora (Part 2)
52
+ Class #4: Video Editing in Wondershare Filmora (Part 3)
53
+ Class #5: Kapwing’s Best AI Tools
54
+ Class #6: Video Editing in Kapwing (Part 1)
55
+ Class #7: Video Editing in Kapwing (Part 2)
56
+ Class #8: Video Editing in Kapwing (Part 3)
57
+ Class #9: Video Editing in the VivaVideo Mobile App (Part 1)
58
+ Class #10: Video Editing in the VivaVideo Mobile App (Part 2)
59
+ Class #11: Video Editing in CapCut Mobile App (Part 1)
60
+ Class #12: Video Editing in CapCut Mobile App (Part 2)
61
+ Class #13: Video Editing in CapCut Mobile App (Part 3)
62
+ Class #14: Video Editing in CapCut on a Computer (Part 1)
63
+ Class #15: Video Editing in CapCut on a Computer (Part 2)
64
+ Class #16: Video Editing in CapCut on a Computer (Part 3)
65
+ Class #17: Simple Video Editing with Canva Templates
66
+ Class #18: An Intro to Davinci Resolve
67
+
68
+
69
+ Course #5
70
+ Improve Your Video Professionalism
71
+ Class #1: Your Video Setup and Equipment Checklist
72
+ Class #2: Video Lighting 101
73
+ Class #3: Video Audio 101
74
+ Class #4: Craft the Ultimate Brand Video - Part 1
75
+ Class #5: Craft the Ultimate Brand Video - Part 2
76
+ Class #6: Techniques for Captivating B-Roll Footage
77
+ Class #7: Storytelling Through Video
78
+
79
+ Course #6
80
+ Map Out Your Social Media Strategy
81
+ Class #1: Defining Your Customer Avatar and Content Pillars
82
+ Class #2: Video on Major Social Media Platforms
83
+ Tutorial: Writing Social Media Video Descriptions and Increasing Engagement
84
+ Tutorial: Strategies for Growing Your Social Media Following
85
+ Class #3: Using Video on Facebook
86
+ Tutorial: How to Post a Video on Facebook
87
+ Class #4: Facebook Reels 101
88
+ Class #5: Making a Facebook Live Video
89
+ Class #6: Using Video on Instagram
90
+ Class #7: Instagram Reels 101
91
+ Tutorial: How to Post a Video on Instagram
92
+ Class #8: 5 Simple Video Ideas for FB or IG Stories (with Jeff Pfitzer)
93
+ Class #9: 3 Easy Video Formats for Instagram Reels
94
+ Class #10: Using Video On YouTube
95
+ Class #11: YouTube Shorts 101
96
+ Tutorial: How to Post a Video on YouTube
97
+ Class #12: Using Video on TikTok
98
+ Class #13: What's Working on TikTok
99
+ Class #14: Using Video on LinkedIn
100
+ Class #15: Using Video on LinkedIn
101
+ Tutorial: How to Post a Video on LinkedIn
102
+ Class #16: Understanding Your Video Analytics
103
+ Class #17: Become the "Local Authority" through Social Media Videos (with Jeff Pfitzer)
104
+ Class #18: Current Social Media Video Trends with Tristan Ahumada
105
+ Class #19: Create an Edited Social Media Video in 60 Minutes!
106
+ Class #20: Pillar Talk: How to Build Your Social Media Empire
107
+ Class #21: 3 Video Tools You NEED to Use on Instagram (with Jeff Pfitzer)
108
+ Class #22: Make Social Media Your #1 Prospecting Tool in 2024 (with Jeff Pfitzer)
109
+
110
+ Course #7
111
+ Create Your 12-Month Video Content Calendar
112
+ Class #1: Planning and Scripting Your Video
113
+ Class #2: Maximizing Engagement with Your Videos
114
+ Class #3: Planning More Complex Video Shoots
115
+ Class #4: Creating Your Video Content Calendar
116
+
117
+ Course #8
118
+ Develop YOUR Video Marketing Funnel
119
+ Class #1: An Intro to Crafting YOUR Video Marketing Funnel
120
+ Class #2: Dual Attraction - Awareness Videos & Lead Generation Strategies
121
+ Class #3: Use Facebook Ads to Pull in Prospects (Part 1)
122
+ Class #4: Use Facebook Ads to Pull in Prospects (Part 2)
123
+ Class #5: Optimize Your Lower Funnel (Part 1) - Consideration & Conversion Videos
124
+ Class #6: Optimize Your Lower Funnel (Part 2) - Precision Facebook Ad Retargeting
125
+ Class #7: Email Enchantment - Nurture Leads with Video Email Newsletters
126
+ Class #8: Loyalty & Advocacy - Building Lasting Connections
127
+ Class #9: Convert More Leads Using Facebook Ads
128
+
129
+ Course #9
130
+ Implementing a YouTube Video Strategy
131
+ Class #1: Introduction to YouTube
132
+ Class #2: Optimizing Your YouTube Channel
133
+ Class #3: Enhancing Your YouTube Videos
134
+ Class #4: Design an Eye-Catching YouTube Thumbnail
135
+ Class #5: Promoting Your YouTube Channel
136
+ Class #6: Creating Your First YouTube Video Ad
137
+ Class #7: 3 Easy YouTube Shorts Ideas
138
+ Class #8: 6 Long-Form YouTube Videos You Should Make
139
+ Bonus Training: Researching Tactics for Long Form Videos - with Tristan Ahumada
140
+ Course #10
141
+ Creating Consistent Branding in Your Videos
142
+ Class #1: Branding 101
143
+ Class #2: Branding Choices When Filming
144
+ Class #3: Branding Choices When Editing
145
+
146
+ Course #11
147
+ Using AI & Video to Generate Leads
148
+ Class #1: Using AI & Video to Generate Leads - Overview and Demo
149
+ Class #2: Using AI & Video to Generate Leads - Developing the Code and Uploading to Huggingface
150
+ Class #3: Using AI & Video to Generate Leads - Testing and Deploying the AI Tool
151
+ Class #4: Using AI & Video to Generate Leads - Marketing the AI Tool and Converting Leads
152
+
153
+
154
+ Real Estate Case Studies
155
+ BVS Member Video Success Stories - Sheila, Francis and Daphne
156
+ Viral Video Case Study with Bob Tompkins
157
+ Listing Video Case Study with Brad McCallum
158
+ Video Case Study with Lana Rodriguez
159
+ Video Case Study with Valerie Van de Zilver
160
+ How to Farm a Neighborhood Using Video (with Ryan Smith)
161
+ YouTube Video Case Study with Ken Pozek
162
+ YouTube Video Case Study with Malcolm Lawson (Part 1)
163
+ YouTube Video Case Study with Malcolm Lawson (Part 2)
164
+ What to Say About the NAR Case in Your Videos
165
+
166
+ Short Tutorials: Making Video a Priority for Your Business
167
+ Why Video? Why Now?
168
+ How to Create a Video Habit
169
+ A Time Management Strategy For Real Estate Agents: Full Tutorial
170
 
171
+ Short Tutorials: Creating Better Videos with a Smartphone
172
+ You Don't Need an Expensive Camera... Here's Why!
173
+ 4 Phone Camera Lighting Hacks
174
+ Why You May Need to Adjust Your iPhone's HDR Setting
175
+ Trim the Beginning and End of a Video on Your Phone
176
+ Creating Stable Footage with a Phone and... Cup?!
177
+ Record Your Screen on an iPhone
178
+ How to Use Green Screen with PowerDirector
179
+ Video Composition 101
180
 
181
+ Short Tutorials: Transferring, Storing and Organizing Video Files
182
+ Transferring Files: Using WeTransfer or Google Drive
183
+ Transferring Files: iPhone to Mac (AirDrop)
184
+ Transferring Files: Using the Simple Transfer app (iPhone to any computer)
185
+ Storing and Organizing Your Video Files
186
 
187
+ Short Tutorials: Using BombBomb to Create and Send Videos
188
+ BombBomb 1-to-1 Video Ideas for Your SOI/Database
189
+ Create a Killer Hook for Your BombBomb Videos
190
+ Adding Your SOI Database to BombBomb
191
+ 4 Ways to Record and Send a Video with BombBomb
192
+ Using the BombBomb Google Chrome Extension
193
+ How to Use the BombBomb App (Email and Text Videos)
194
+ Sending a Social Media Video Through Email
195
+ Close Leads Fast with BombBomb Email Automations
196
+ Use BombBomb Email Templates to Design Professional Emails
197
+ How To Re-create The BombBomb Experience For Free
198
+ How to Use BombBomb (Longer Training) - 1 hour training
199
 
200
+ Short Tutorials: Creating Home Tour Videos
201
+ How to Film a Home Tour Video with A Phone
202
+ How to Edit Your Home Tour Video on a Phone
203
+ 5 Tips for Home Tour or Virtual Open House Videos
204
+ How to Get Smooth Home Tour Shots
205
+ The Push-In Shot for Home Tour Videos
206
+ Filming Great Window Shots
207
+ Create Compelling Short Listing Videos (with Jeff Pfitzer) - 1 hour training
208
+
209
+ Miscellaneous Trainings: Social Media Video Tips
210
+ Short Tutorial: Instagram Hashtags 101
211
+ Using the Facebook Premiere Posts Feature
212
+ Short Tutorial: Intro to TikTok
213
+ How to Start Creating Videos on TikTok
214
+ How to Add Music on TikTok
215
+ How to Add Text to Your TikTok Videos
216
+ Using the Timer Feature on TikTok
217
+ Using the Green Screen Feature on TikTok
218
+ Using the Voiceover Feature on TikTok
219
+ Instagram Stories 101
220
+ Improving Your LinkedIn Profile with Video
221
+ Your First 3 TikTok Videos As A Real Estate Agent
222
+ Short Tutorial: Sharing from FB Biz Page to Personal Account
223
+ Use Facebook Messenger to Send a 1-to-1 Video Message
224
+
225
+ Miscellaneous Trainings: Enhancing Your Videos with Effects & Equipment
226
+ Use Screen Recording to Create a Tutorial Video - 1 hour training
227
+ How to Use Green Screen - 1 hour training
228
+ Video Lighting Demonstration - 30 minutes training
229
+ How to Use the DJI OM 4 (Phone Gimbal) - 1 hour training
230
+ Add Subtitles to Your Video (for Free with Kapwing)
231
+ Finding Free Images, Music and Graphics for Your Videos (Part 1) - 1 hour training
232
+ Finding Free Images, Music and Graphics for Your Videos (Part 2) - 1 hour training
233
+ A Simple Video Studio for Real Estate Agents in 2022
234
+ Training: Intro to Professional Cameras (Part 1) - 30 minutes training
235
+ Training: Intro to Professional Cameras (Part 2) - 30 minutes training
236
+
237
+ Miscellaneous Trainings: Useful Video Software and Apps
238
+ Short Tutorial: Using The Capcut Camera Tool To Record Engaging Video
239
+ Using Zoom and Its Advanced Features (Part 1) - 1 hour training
240
+ Using Zoom and Its Advanced Features (Part 2) - no video
241
+ Using Zoom and Its Advanced Features (Part 3) - no video
242
+ Creating a Virtual Background for Zoom (Canva Tutorial) - no video
243
+ Find Free Music for Your Videos with Uppbeat
244
+ Uploading Zoom Virtual Backgrounds
245
+ How to Use Zoom Studio Effects
246
+ The Basics of Using BIGVU (Teleprompter App)
247
+ How to Use the BIGVU Teleprompter App (Longer Training) - 1 hour training
248
+ How to Use the "Teleprompter for Video" App
249
+ How to Edit Videos in iMovie
250
+ Introducing Canva's New Video Tools - 1 hour training
251
+ Vidyard: FREE Tool for Sending Video Emails and Texts - 1 hour training
252
+ Going Live with StreamYard - 1 hour training
253
+ Using QR Codes with Video in your Marketing Campaigns! - 1 hour training
254
+ Use "mmhmm" to Create Stunning Video Presentations and Recordings - 1 hour training
255
+ Training: Run a Killer Livestream Using StreamYard - 1 hour training
256
+
257
+ Miscellaneous Trainings: Creative Video Strategies - 1 hour trainings
258
+ Using Video in Google Maps
259
+ Repurposing Videos for Different Platforms (Part 1)
260
+ Repurposing Videos for Different Platforms (Part 2)
261
+ How To Convert More Real Estate Leads With Video - short tutorial
262
+ Outlining an Easy Video Email Strategy (Part 1)
263
+ Outlining an Easy Video Email Strategy (Part 2)
264
+ Turn Raw Footage into Juicy Short Videos (with Jeff Pfitzer)
265
+ Write Real Estate Video Scripts with AI
266
+ AI-Enhanced Video Scripts: Become a Local Real Estate News Pro
267
+ Create a Client Testimonial Video
268
+ Use ChatGPT's Web Browsing Tool to Write Video Scripts
269
+ Make a Seller Lead Gen Video
270
+ Training: 3 Tools for Creating Slide-Based Presentation Videos
271
+ Training: 3 Live Stream Strategies That Gather Seller Leads
272
+ Market Update Videos: 2 New Styles to Try (with Jerry Weaver)
273
+
274
+ Miscellaneous Trainings: Working with a Videographer
275
+ 5 Places to Find a Reliable Videographer
276
+ Two Important Release Forms for On-Site Video Shoots
277
+ How to Find a Videographer That Fits Your Style (Part 1) - 1 hour training
278
+ How to Find a Videographer That Fits Your Style (Part 2) - 1 hour training
279
+ How to Find Reliable Video Editors - 1 hour training
280
+
281
+ Miscellaneous Trainings: Holiday-Related Videos
282
+ Finding Assets for Your Holiday-Themed Video
283
+ 4 Easy Video Ideas for Thanksgiving
284
+ Holiday Script Writing Workshop - 1 hour training
285
+ How to Create a Halloween Video - 1 hour training
286
+
287
+ Misc Trainings: Video Recipe Workshops - 1 hour trainings
288
+ Video Recipe Workshop: I Have a List of Homes Under $$$
289
+ Video Recipe Workshop: 6 Tips for Getting Your Home Ready for the Fall
290
+ Video Recipe Workshop: Things to Consider When Moving with a Pet
291
+ Video Recipe Workshop: Thanksgiving Giveaway Video
292
+ Video Recipe Workshop: Current Kitchen Style Trends
293
+ Video Recipe Workshop: Weird Tax Laws (Canva Tutorial)
294
+ Video Recipe Workshop: How Interest Rates Affect Buying Power
295
+ Video Recipe Workshop: Home Seller Lead Follow Up
296
+ Video Recipe Workshop: 4 Easy Staging Tips to Increase Your Listing Price
297
+
298
+ Misc Trainings: Premium Workshop Recordings
299
+ Outlining YOUR First 4 TikTok Videos
300
+ The Virtual Open House and Showing BLUEPRINT
301
+ Attract Listings From Your SOI with These Video Messages
302
+ Create a Polished RE Marketing Video in Under 60 Minutes (Session 1)
303
+ Create a Polished RE Marketing Video in Under 60 Minutes (Session 2)
304
+ Use Canva to Create Stunning Real Estate Videos
305
+ 3 Short Videos That Sell Homes While Attracting New Customers (Part 1)
306
+ 3 Short Videos That Sell Homes While Attracting New Customers (Part 2)
307
+ Develop Your Video Lead Conversion Automation (Part 1)
308
+ Develop Your Video Lead Conversion Automation (Part 2)
309
+ Develop Your 2023 Real Estate Marketing Plan (Part 1)
310
+ Develop Your 2023 Real Estate Marketing Plan (Part 2)
311
+ Implement Tristan's SOI Video Touch System (Part 1)
312
+ Implement Tristan's SOI Video Touch System (Part 2)
313
+ """
314
+ # Assuming the list is ordered from beginner to advanced
315
+ ]
316
+
317
+ if video_experience < 3:
318
+ # Recommend earlier classes for beginners
319
+ return class_list[:3]
320
+ else:
321
+ # Recommend more advanced classes for experienced users
322
+ return class_list[-3:] # Assuming the last three classes are more advanced
323
+
324
+ # User inputs for the marketing plan
325
+ # ... [rest of your code for inputs] ...
326
+
327
+ if st.button('Generate My Video Marketing Plan and Class Recommendations'):
328
  # Construct the prompt for text generation
329
+ # ... [rest of your code to generate the marketing plan] ...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
330
 
331
  # Display the marketing plan
332
+ # ... [rest of your code to display the marketing plan] ...
333
+
334
+ # Recommend classes based on video-making experience
335
+ class_recommendations = recommend_classes(video_experience)
336
+ st.markdown("### Recommended Classes from Small Business Video Roadmap")
337
+ st.write(", ".join(class_recommendations))
338
 
339
  # Copy to clipboard button
340
+ # ... [rest of your code for the copy to clipboard button] ...
 
 
 
341
 
342
  # No additional code needed beyond this point for your application