Note: Below video is old and a lot of code has changed. But it is still useful.
Note: try to use linux distro or install WSL(subsystem for linux) on windows.
- Automatically installs dependencies from
requirements.txt - Installs ngrok if not already installed
- Starts
uvicornserver - Exposes your local server publicly via ngrok
- Clean shutdown with Ctrl+C
Make sure you have:
- Python 3.8+ installed
- pip installed
-
Google API Key
Get your key here:
https://aistudio.google.com/apikey -
ngrok Auth Token
Register and get your token here:
https://ngrok.com/
chmod +x start.sh./start.shAlso don't forgot to add "/api" after the url.
eg: https://dd0b98d2abc3.ngrok-free.app

eg: https://dd0b98d2abc3.ngrok-free.app/api
Note: This url will be different every time you restart the server. so use below method to get a static url.
-
Go to this(https://dashboard.ngrok.com/domains) website and claim you free static url.
-
and after that modify the start.sh file's last line. like this
-
Before
- After
This project loads environment variables from a file named env_variables.txt located in the project root.
How to use:
- Create a file called
env_variables.txtin the project directory. - Add your variables in the format:
GENAI_API_KEY=your_google_api_key NGROK_AUTHTOKEN=your_ngrok_authtoken # You can add more variables as needed - When you run
start.sh, these variables will be automatically loaded and exported to your environment.
A simple HTML frontend is provided for uploading multiple files and viewing API responses.
- Make sure your FastAPI server is running and accessible (e.g., via ngrok).
- Open
https://xxxxxx.ngrok-free.appin your browser. - Click the "Choose Files" button and select one or more files.
- Click "Submit" to upload the files(you can select multiple files) to the backend.
- The response from the API will be displayed below the form.
Note:
- The frontend sends files to the
/apiendpoint of your public URL. - You can preview selected file names before uploading.
- If you see "No response yet" or an error, check that your FastAPI server is running and accessible.
- Make sure the public URL matches your ngrok tunnel and ends with
/apifor direct API
Note:
Sometimes, pressing Ctrl+C does not fully stop the Uvicorn server. This can lead to "Internal Server Error" or port conflicts when you try to restart the server.
What to do:
- If you still see errors after stopping the script, manually kill any running Uvicorn processes:
pkill -f uvicorn
- Alternatively, you can restart your terminal or system to ensure all processes are stopped.
Tip:
Always make sure no old Uvicorn processes are running before starting the
- add you APIs there
Note: now it no longer asks for API keys in terminal. Add them manually in the api rotator file. - Also create 3 venv with names venv, venv1, venv2 in the root folder.
pip install virtualenv-clone
virtualenv-clone venv venv2




