Complete User Guide & Documentation

How to Use AskMyDocs

Everything you need to get started โ€” from Ollama deployment options to uploading documents, asking questions, and using enterprise features.

โšก Quick Start

  1. 1
    Install Ollama
    Download and install Ollama from ollama.ai. Pull the required models.
    ollama pull qwen3:4b
    ollama pull nomic-embed-text
  2. 2
    Configure .env.local
    Create a .env.local file in the project root with your settings.
    OLLAMA_URL=http://localhost:11434
    NEXTAUTH_SECRET=your-secret-key
    VAULT_SECRET_KEY=your-vault-key
  3. 3
    Install & Run
    Install dependencies and start the development server.
    npm install
    npm run dev
  4. 4
    Open the App
    Navigate to the app in your browser and start uploading documents.
    http://localhost:3000/app

๐Ÿš€ Ollama Deployment Options

AskMyDocs supports three deployment configurations. Choose the one that best fits your needs.

Option A โ€” Local Ollama

Default ยท Recommended
โœ… Pros
  • 100% private โ€” no data leaves your machine
  • Free to use, no API costs
  • Works offline after initial model download
  • Full control over models and configuration
โš ๏ธ Cons
  • โ€ขRequires a capable GPU or fast CPU
  • โ€ขSlower on low-end hardware
  • โ€ขLimited to models your hardware can run
.env.local
OLLAMA_URL=http://localhost:11434
# No API key needed

Option B โ€” Ollama Cloud

No GPU Required
โœ… Pros
  • No local GPU required
  • Access to large models (70B, 405B)
  • Faster responses for big models
  • Scales automatically
โš ๏ธ Cons
  • โ€ขRequires internet connection
  • โ€ขData sent to Ollama Cloud servers
  • โ€ขSubscription cost (~$20โ€“$50/month)
.env.local
OLLAMA_URL=https://api.ollama.com
OLLAMA_API_KEY=ollama_sk_your_api_key_here

Option C โ€” Hybrid (Local + Cloud Fallback)

High Availability
โœ… Pros
  • Uses local Ollama when available
  • Automatically falls back to Cloud if local is down
  • Best of both worlds
  • High availability and resilience
โš ๏ธ Cons
  • โ€ขRequires both local setup and cloud API key
  • โ€ขMore complex configuration
.env.local
OLLAMA_URL=http://localhost:11434
OLLAMA_CLOUD_URL=https://api.ollama.com
OLLAMA_API_KEY=ollama_sk_your_api_key_here
ENABLE_CLOUD_FALLBACK=true

๐Ÿ“‹ Migrating to Cloud

  1. 1Get an API key from https://ollama.com/settings/keys
  2. 2Run: npm run setup-ollama-cloud
  3. 3Update .env.local with your API key
  4. 4Re-index documents: npm run ingest
  5. 5Test your setup, then deploy to production

โ˜๏ธ Ollama Cloud Pricing

TierPriceModelsBest For
Free$07B โ€“ 13BTesting & development
Pro~$20/moUp to 70BProduction workloads
Max~$50/moUp to 405BEnterprise scale

๐Ÿ“ค Uploading Documents

Drag & Drop Upload

  1. 1. Go to /app
  2. 2. Click the "Upload Documents" button
  3. 3. Drag & drop files or click to browse
  4. 4. Files are indexed automatically on next query

Manual Indexing

  1. 1. Place files in the docs/ folder
  2. 2. Run npm run ingest
  3. 3. Index saved to data/index.json
๐Ÿ“„ Supported Formats
PDFWord (.docx)Excel (.xlsx)TXTMarkdownHTMLJSONCSVJSTSPNG (OCR)JPG (OCR)TIFF (OCR)
Max file size: 10MB per file. OCR is applied automatically to images and scanned PDFs.

๐Ÿ’ฌ Asking Questions

  1. 1
    Navigate to the app
    Go to /app. You must be signed in (default: admin@askmydocs.local / admin123).
  2. 2
    Type your question
    Enter your question in plain English in the text area. Be specific for better results.
  3. 3
    Submit your question
    Press Ctrl/Cmd + Enter or click the "Ask" button to submit.
  4. 4
    Review the answer
    The answer includes the AI response, source documents with confidence scores, and debug info.
  5. 5
    Ask follow-ups
    AskMyDocs remembers the last 6 messages for contextual conversation.
โŒจ๏ธ Keyboard Shortcuts
Ctrl/Cmd + EnterSubmit question
Ctrl/Cmd + SExport as Markdown
EscExit fullscreen

๐ŸŒŸ Enterprise Features

Authentication

/app
  1. 1. Navigate to /app โ€” redirects to sign-in
  2. 2. Default: admin@askmydocs.local / admin123
  3. 3. Sessions persist 30 days via JWT
๐Ÿ’ก Change default credentials in production via NEXTAUTH_SECRET.

Encrypted Vault

/app/features โ†’ Vault tab
  1. 1. Go to Features โ†’ Encrypted Vault
  2. 2. Drag & drop files to encrypt with AES-256
  3. 3. Download to decrypt, delete when done
๐Ÿ’ก Keep your VAULT_SECRET_KEY backed up โ€” without it files cannot be decrypted.

Voice Q&A

/app/features โ†’ Voice tab
  1. 1. Go to Features โ†’ Voice Q&A
  2. 2. Click the microphone button
  3. 3. Speak your question clearly
  4. 4. Answer is displayed and optionally read aloud
๐Ÿ’ก Best supported in Chrome and Edge. Requires microphone permission.

Analytics Dashboard

/app/features โ†’ Analytics tab
  1. 1. All searches are automatically logged
  2. 2. View top queries, documents, and knowledge gaps
  3. 3. Filter by 7 / 30 / 90 / 365 days
  4. 4. Export analytics to JSON
๐Ÿ’ก Use Analytics to identify missing documentation topics.

Folder Watcher

/app/features โ†’ Settings tab
  1. 1. Start the watcher from Features โ†’ Settings
  2. 2. Add / modify files in docs/ folder
  3. 3. Re-indexing triggers automatically after 3s
๐Ÿ’ก Stop the watcher when not needed to save resources.

OCR (Image Text Extraction)

Automatic on image upload
  1. 1. Upload PNG, JPG, TIFF, or scanned PDF
  2. 2. Tesseract OCR extracts text automatically
  3. 3. Confidence score reported for each extraction
  4. 4. Text is indexed and searchable like any document
๐Ÿ’ก Use high-quality scans (300 DPI+) for best OCR accuracy.

โš™๏ธ Environment Variables

VariableRequiredDescriptionDefault
OLLAMA_URLYesOllama server URL (local or cloud)http://localhost:11434
OLLAMA_API_KEYCloud onlyAPI key for Ollama Cloudโ€”
OLLAMA_CLOUD_URLHybrid onlyCloud fallback URLhttps://api.ollama.com
ENABLE_CLOUD_FALLBACKHybrid onlyEnable automatic cloud fallbackfalse
NEXTAUTH_URLYesPublic URL of your apphttp://localhost:3000
NEXTAUTH_SECRETYesSecret for JWT signingโ€”
VAULT_SECRET_KEYYesAES-256 key for Encrypted Vaultโ€”
NEXT_PUBLIC_APP_NAMENoDisplay name for the appAskMyDocs
Generate a secure secret key:
node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"

โ“ Frequently Asked Questions

Ready to get started?

Launch the app and start asking questions about your documents.