Home

AI-Karyashala
Development Environment Setup

A comprehensive guide to setting up your student development environment by AI-Karyashala

01

Install Ubuntu on Windows

Set up Windows Subsystem for Linux (WSL2) to run Ubuntu Linux natively.

Phase 1: Environment Verification

1. Open PowerShell
Click Start, search for "PowerShell," right-click it, and select Run as Administrator.
2. Check for WSL
PowerShell
wsl --list --online
💡 What to expect:
  • If the command works: Skip to Phase 3
  • If "command not found": Continue to Phase 2

Phase 2: Enabling Required Features

3. Enable WSL
PowerShell
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
4. Enable Virtual Machine Platform
PowerShell
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
5. Restart & Verify
Restart your computer. Open PowerShell as Administrator and run wsl --list --online to verify.

Phase 3: Install Ubuntu

6. Install Ubuntu 24.04
PowerShell
wsl --install Ubuntu-24.04

Phase 4: User Configuration

Create Username
Once Ubuntu launches, you'll be prompted to create a new user account. Enter a username (use lowercase letters only, no spaces). For example: john or student
Set Password
After entering your username, you'll be asked to create a password. Choose something memorable like your birth year (e.g., 2005) or a simple password you won't forget.
⚠️ IMPORTANT - Password Security Behavior:
  • Your password will NOT be visible as you type - this is a security feature, not a bug
  • You will see NO characters, dots, or asterisks appearing on screen while typing
  • The cursor will NOT move as you type your password
  • This is completely normal Linux behavior designed to protect your password
  • Simply type your password carefully and press Enter when done
  • You'll be asked to type it twice to confirm - both times it will be invisible
✅ Tips for Success:
  • Type slowly and carefully since you can't see what you're typing
  • Don't panic if nothing appears - this is expected behavior
  • If you make a mistake, press Backspace a few times and start over
  • Remember your password - you'll need it for installing software later
02

Install Prerequisites

Install the fundamental packages required to download and run the setup scripts.

System Package Installation

Run Update and Install
Copy and paste the following command into your Ubuntu terminal to install Python 3, Curl, Zip, and Unzip.
Bash
sudo apt update && sudo apt install -y python3 curl zip unzip
💡 Note:
Enter your password when prompted. The characters will not appear on screen while typing.
03

Download & Configure Tools

Download the setup scripts, unzip them, and execute the automation tools.

Step-by-Step Configuration

1. Download the Zip File
Use curl to download the setup_scripts.zip file.
Bash
curl -L -o setup_scripts.zip https://github.com/aikaryashala/bootcamp/raw/b4a8b253eba8a70c1ee282a1b2b47cedac588bdc/docs/kiet/setup_scripts.zip
2. Unzip and Navigate
Unzip the folder and enter the directory.
Bash
unzip setup_scripts.zip && cd setup_scripts
3. Run Setup Tools
This script installs clang, lldb, micro, and other development essentials.
Bash
python3 setup_tools.py
4. Run AIKBT Installer
This configures the custom debugger interface.
Bash
python3 install_aikbt.py
5. Apply Changes
Bash
source ~/.bashrc
04

Contact QR Code Generator

Install and configure the Contact QR Code Generator to create shareable contact information.

Setup QR Code Generator

1. Create Project Folder
Create a new folder named kiet for the QR code generator project.
Bash
mkdir kiet
2. Navigate to Project Folder
Change directory to the newly created kiet folder.
Bash
cd kiet
3. Install QR Library and Download Script
Install the QR code generation library with image support and download the contact QR generator script from GitHub.
Bash
python3 -m pip install qrcode[pil] --break-system-packages
curl -fsSL -o contact_qr.py https://raw.githubusercontent.com/sandeepbangaru17/qr/main/contact_qr.py
💡 What this does:
  • Installs the qrcode library with PIL (Python Imaging Library) support
  • Downloads the contact_qr.py script to the current directory
  • Prepares your environment to generate QR codes for contact sharing
4. Run the QR Code Generator
Execute the script to generate contact QR codes. You'll be prompted to enter your contact information.
Bash
python3 contact_qr.py
✅ Expected Output:
  • The script will prompt you to enter contact information (name, phone, email, etc.)
  • A QR code image file will be generated in the kiet folder
  • The QR code image will be ready to view in your browser
5. Start Local Web Server
Start a Python HTTP server to view your generated QR code in the browser.
Bash
python3 -m http.server 8000
💡 Server Information:
  • The server will start on port 8000
  • You'll see a message: Serving HTTP on 0.0.0.0 port 8000...
  • Keep this terminal window open while viewing your QR code
  • Press Ctrl+C to stop the server when done
6. View QR Code in Browser
Open your web browser and navigate to localhost to view your generated QR code.
Browser URL
http://localhost:8000/
✅ How to use:
  • Copy the URL and paste it in your browser
  • Click on the QR code image file to view it
  • Scan with your smartphone to save contact details
05

Reel Generator - Complete Activity

Create your own "What I Learned Today" video reels from scratch. Watch the existing video, customize it with your content, and generate your personalized learning reel!

Part 1: Initial Setup & Viewing Existing Video

1. Ensure You're in Home Directory
Navigate back to your home directory to start fresh.
Bash
cd ~
2. Update System Packages
Update your package list to ensure you have the latest software information.
Bash
sudo apt update
💡 Why update?
  • Ensures you have the latest package information
  • Prevents installation errors
  • Takes only a few seconds
3. Download Setup Script
Download the automated setup script that will install all dependencies and set up the reel generator.
Bash
curl -fsSL -o setup_reels.py https://raw.githubusercontent.com/ppavankumar19/Reel_Generator/refs/heads/main/setup_reels.py
💡 What this downloads:
  • Automated setup script for the reel generator
  • Will install Node.js, pnpm, and all project dependencies
  • Generates a sample video automatically
4. Run Setup Script
Execute the setup script. This will take a few minutes as it installs everything needed.
Bash
python3 setup_reels.py
⚠️ This will take 5-10 minutes:
  • Installing Node.js and pnpm package manager
  • Downloading project dependencies
  • Generating your first sample video
  • Don't close the terminal - wait for it to complete!
5. Start Web Server to View Video
After the setup completes, start a web server to view the generated video.
Bash
python3 -m http.server 8001
💡 Why port 8001?
  • We use port 8001 to avoid conflicts with QR code server (port 8000)
  • You can use any available port (8002, 8003, etc.)
  • Keep this terminal window open while viewing the video
6. Watch the Existing Video
Open your browser and watch the sample video that was generated.
Browser URL
http://localhost:8001/what-i-learned-today-reels/out/video.mp4
✅ You should see:
  • A sample "What I Learned Today" reel video
  • Default content showing algorithm principles
  • Background music playing
  • This is what you'll customize in the next steps!
⚠️ If localhost doesn't work - Use Ubuntu IP:
  • Open a new terminal (don't close the server)
  • Run: hostname -I
  • Use the first IP address (e.g., 172.24.144.1)
  • Access: http://<your-ip>:8001/what-i-learned-today-reels/out/video.mp4
  • Example: http://172.24.144.1:8001/what-i-learned-today-reels/out/video.mp4

Part 2: Customize & Create Your Own Video

7. Stop the Web Server
Go back to the terminal running the web server and stop it.
Action
Press Ctrl+C in the terminal
8. Navigate to Project Directory
Change to the reel generator project directory.
Bash
cd ~/what-i-learned-today-reels
9. Edit Content File
Open the content file to add your own learnings. Use the micro text editor.
Bash
micro public/content.json
💡 Editing Tips:
  • The file contains your learning points in JSON format
  • Replace the sample text with what YOU learned today
  • Keep the same structure - just change the text inside quotes
  • Save: Ctrl+S
  • Exit: Ctrl+Q
✅ Example content structure:
  • "I learned how to install Ubuntu on Windows using WSL"
  • "I understood the 5 principles of algorithms"
  • "I created my first QR code for contact sharing"
  • Add 3-5 learning points for best results
10. Add Your Music (Optional)
You can add your own background music MP3 file to the public folder.
Info
Place your MP3 file in: ~/what-i-learned-today-reels/public/your-music.mp3
⚠️ Music File Guidelines:
  • Use MP3 format only
  • Recommended length: 30-60 seconds
  • You can copy your MP3 from Windows to Ubuntu
  • Update the music filename in public/content.json if using custom music
  • Skip this step if you want to use the default music
11. Preview Your Changes
Start the development preview server to see your changes in real-time.
Bash
pnpm preview
💡 Preview Mode:
  • This starts a live preview server
  • You'll see a URL like: http://localhost:3000
  • Open this URL in your browser to preview
  • You can see your changes without rendering the final video
  • Press Ctrl+C when done previewing
12. Render Your Final Video
Once you're happy with your content, render the final video.
Bash
pnpm render
⚠️ Rendering takes 2-3 minutes:
  • The video is being generated with your custom content
  • You'll see progress messages
  • Wait for "Rendering complete!" message
  • Don't close the terminal during rendering
13. Start Web Server to View Your Video
After rendering completes, navigate back to home and start the server again.
Bash
cd ~
python3 -m http.server 8001
14. Watch YOUR Video!
Open your browser and watch the video you just created with your own content!
Browser URL
http://localhost:8001/what-i-learned-today-reels/out/video.mp4
🎉 Congratulations!
  • You've created your own "What I Learned Today" reel!
  • The video contains YOUR learning points
  • You can share this video on social media
  • Download it by right-clicking the video and selecting "Save video as..."

Part 3: Activity Summary & Next Steps

📝 What You Accomplished:
  • ✅ Installed the Reel Generator from scratch
  • ✅ Watched the existing sample video
  • ✅ Customized content with your own learnings
  • ✅ (Optional) Added your own background music
  • ✅ Previewed your changes in real-time
  • ✅ Rendered your final personalized video
  • ✅ Watched your own creation!
🚀 Want to Create More Videos?
  • Navigate to project: cd ~/what-i-learned-today-reels
  • Edit content: micro public/content.json
  • Preview changes: pnpm preview
  • Render new video: pnpm render
  • View it: Start server and open in browser
💡 Pro Tips:
  • Keep your learning points concise (1-2 sentences each)
  • Use 3-5 points for optimal video length
  • Choose upbeat music that matches your content
  • Share your videos on LinkedIn, Instagram, or Twitter
  • Create a daily learning video to track your progress!