Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎙️ VoiceNotes — Text to Audio Converter

Turn your .md, .docx, and .txt notes into .mp3 files you can listen to anywhere.


Features

  • Paste text directly and convert instantly
  • Upload files: .md, .markdown, .docx, .txt
  • Smart text extraction: strips markdown syntax, code blocks, URLs — leaves clean readable prose
  • 50+ languages powered by Google TTS (gTTS)
  • Slow mode for language learners or clearer speech
  • Built-in audio player — listen before downloading
  • Audio library — all your conversions in one place
  • Long document support — automatically chunks and merges large texts
  • Download as .mp3

Requirements

  • Python 3.10+
  • Internet connection (Google TTS requires it)

Setup & Run

1. Clone / download the project folder

cd voicenotes

2. Create a virtual environment (recommended)

python3 -m venv venv
source venv/bin/activate        # Linux/macOS
# venv\Scripts\activate         # Windows

3. Install dependencies

pip install -r requirements.txt

4. Run the app

python app.py

5. Open in browser

http://localhost:5050

Usage

Convert pasted text

  1. Click "Paste Text" tab
  2. Paste or type your notes
  3. Choose language and output filename
  4. Click "Generate Audio"
  5. Listen in the browser or download the .mp3

Convert a file

  1. Click "Upload File" tab
  2. Drop or select your .md, .docx, or .txt file
  3. Choose language
  4. Click "Generate Audio from File"
  5. A text preview will show what was extracted
  6. Download your .mp3

Your library

  • The Library tab shows all files you've converted in this session
  • Play, download, or delete them from there

Supported Languages (selection)

Code Language
en English
fr French
ar Arabic
es Spanish
de German
it Italian
pt Portuguese
zh-TW Chinese (Traditional)
ja Japanese
ko Korean
ru Russian

Full list loads automatically from Google TTS in the app.


Project Structure

voicenotes/
├── app.py              # Flask backend — routing, TTS, text extraction
├── requirements.txt    # Python dependencies
├── README.md
├── templates/
│   └── index.html      # Single-page UI
├── uploads/            # Temp folder for uploaded files (auto-cleaned)
└── output/             # Generated MP3 files (stored in memory for session)

Notes

  • Audio files are kept in memory for the duration of the server session. When you stop the server, the files are still on disk in output/ until you delete them.
  • Max text: 50,000 characters per conversion
  • Max file upload: 20 MB
  • Requires internet (Google TTS calls Google's servers)

Troubleshooting

"Connection refused" on first launch → Make sure you're running python app.py, not flask run

Arabic / RTL language sounds off → gTTS supports Arabic (ar) — works well for MSA. Moroccan Darija is not supported.

Large .docx files take a while → Normal — text is split into chunks and merged. Progress bar shows status.

Port already in use → Change the port at the bottom of app.py: app.run(port=5051)

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages