📖 Setup Guide

Getting Started with Neo AI

After successfully deploying Smart Proposal Generator, this guide walks you through the complete setup process — from configuring your Knowledge Base to generating your first proposal.

Step 1: Knowledge Base Setup (RAG Documents)

Start by building your Knowledge Base — this is where you'll upload documents that help the AI understand your business, brand, and past successes so it can generate more relevant proposals.

Knowledge Base page showing the upload and document management interface

Recommended RAG Documents

For best results, upload the following types of documents to your Knowledge Base:

  • Company Policy Documents
  • Brand Guidelines (tone of voice, values, messaging)
  • Case Studies (especially successful projects)
  • Past Proposals (your best performing ones)
  • Pricing Catalog / Service Packages
Pro Tip: Use PDF format whenever possible for the best text extraction and RAG performance.

How to Upload RAG Documents

Follow these steps to upload documents so the AI can learn from your past work:

  1. Select Document Category (Optional)
    Click on the "Upload as:" dropdown and choose the appropriate category for your document. If you don't select any category, it will be automatically saved as "Others".
    Upload category selection dropdown with options like 'Past Proposal', 'Case Study', 'Brand Guidelines'
  2. Upload the Document
    Click the "Upload Documents" button and select the file(s) from your computer.
    Upload Documents button in the Knowledge Base interface
  3. View Uploaded Documents
    Once uploaded, your documents will appear in the table below with details such as name, category, upload date, and status.
    Uploaded documents table showing document list with metadata
Note: For guidance on how to organize your RAG documents effectively, refer to the RAG_Documents folder included in your downloaded zip file.

Step 2: Settings Page Setup

The Settings page is your central hub for configuring the app — connect your preferred AI provider, personalize your organization's branding, and manage your team. Each configuration you complete here directly improves the quality and accuracy of the proposals you generate.

2.1 Configure AI Provider

Before generating proposals, connect an AI provider. The app supports OpenAI, Anthropic (Claude), Groq, Gemini, OpenRouter, DeepSeek and Local LLM (LM Studio).

  1. Choose Your Provider
    Click on the provider card for the service you want to use. Supported options include:
    • OpenAI — GPT-4o, GPT-4o-mini, etc.
    • Anthropic — Claude 3.5 Sonnet, Claude 3 Haiku
    • Google Gemini — Gemini 1.5 Pro, Gemini 1.5 Flash
    • Groq — Llama 3, Mixtral (fast inference)
    • OpenRouter — Unified access to multiple models
    • DeepSeek — DeepSeek-V2, DeepSeek-Coder
    • Local LLM — Run models locally via LM Studio
  2. Enter API Credentials
    Paste your API key in the "API Key" field.
  3. Provide a Model Name
    Enter the exact model name you'd like to use for proposal generation (e.g., gpt-4o, claude-3-sonnet-20240229, llama3-70b-8192).
    Important: The model name must match the provider's exact model identifier. An incorrect or misspelled name will cause generation to fail. Refer to your provider's documentation for the correct model string.
    AI Provider configuration section with provider cards and connection test button
  4. Test the Connection
    First click "Save AI Settings" then "Test Connection" to verify everything is set up correctly. A success dialog will confirm the connection and show response latency.
    AI Connection test result dialog showing success status and latency
Tip: For detailed configuration guidance, including proxy setup for local models, see the AI Configuration Guide.

2.2 Set Up Your Organization

Personalize your organization's identity — this branding will appear on every proposal you send.

  1. Upload Your Logo
    Click on "Upload Logo" to upload your brand logo. Supported formats: PNG, JPEG, or SVG (max 5MB). Use the "Remove Logo" button to replace or delete it.
    Note: Before uploading, make sure the logos storage bucket exists in your Supabase Dashboard (Settings → Storage → logos bucket). If you haven't created it yet, refer to the Deployment Guide step 3.7 Create Storage Bucket for Logos.
  2. Set Organization Name
    Enter the name of your agency or company.
  3. Choose Brand Color
    Use the color picker to select your primary brand color. This color will be used as the accent throughout your proposals.
    Organization Settings section showing logo upload, organization name, and brand color picker
Pro Tip: Uploading your logo and setting your brand color ensures that every proposal you generate looks polished and professional.

2.3 Configure Agency Profile

The Agency Profile section feeds information about your agency directly into the AI so it can craft more personalized and relevant proposal content — especially the Executive Summary.

  1. Tagline — Your agency's short, memorable statement (e.g., "Award-winning digital agency specializing in Web3 & AI").
  2. Company Description — A brief overview of what your agency does, your mission, and what makes you unique.
  3. Website — Your agency's website URL so the AI can reference your online presence.
  4. Services Offered — Add the services you provide by typing them in and clicking "Add". Remove any service by clicking the X icon.
    Agency Profile section with tagline, description, website, and services fields
Business Value: A well-filled agency profile helps the AI write proposals that sound like they came from your team, not a generic template.

2.4 Invite Team Members

Collaborate with your team by inviting members to your organization. You can assign roles to control what each person can do.

  1. Enter Email Address — Type the email address of the person you want to invite.
  2. Select Role — Choose the appropriate role for the new member:
RolePermissions
AdminFull access — can manage settings, team, and all proposals
EditorCan create, edit, and manage proposals; cannot change settings
ViewerRead-only access to proposals and templates
  1. Generate Invitation — Click "Generate Invitation". This will create an invite_token you can copy and share with the intended member along with instructions to join your organization.
    Team Members section showing invite form and member list
Important Note: Only Admin can send member invitations.
Before moving to Step 3: Go to the Templates page and verify that all Default Templates are present. These templates are pre-seeded during deployment and are essential for creating proposals with pre-built section structures. If you don't see any templates listed, try refreshing the page or re-running the database migration to seed them.

Step 3: Create Your First Proposal

Once your settings and knowledge base are ready, you can start creating proposals. There are two ways to collect client intake data and generate proposals — in-app and via external widget.

3.1 Create a Proposal Manually (In-App)

From the Dashboard or in Proposal Page, you can create a new proposal by entering client intake information directly through the "Create Proposal" dialog. This method is ideal for phone calls, in-person meetings, or when you already have all client details at hand.

  1. Open the Create Proposal Dialog
    From the Dashboard, click "Create New Proposal" or use the quick action card. A multi-step dialog will guide you through the process.
    Dashboard showing Create Proposal button and quick action cards
  2. Step 1 — Basic Info
    Enter the client's basic details:
    • Client Name
    • Company Name
    • Client Email & Phone
    Create Proposal dialog - Step 1 Basic Info with client name, company, and email fields
  3. Step 2 — Project Details
    Provide information about the scope of work:
    • Project Title — Give your proposal a clear, descriptive title
    • Project Description — Summarize the work, goals, and deliverables (used by the AI for content generation)
    Create Proposal dialog - Step 2 Project Details with project title and description fields
  4. Step 3 — Budget & Timeline
    Set the financial and scheduling parameters:
    • Budget Range — Select an estimated budget bracket
    • Timeline — Choose expected project duration
    Create Proposal dialog - Step 3 Budget and Timeline with budget range and duration options
  5. Step 4 — Review & Create
    Review all entered information, select a template if desired, and click "Create Proposal". After creation you'll be taken to the proposal editor where you can refine content, apply AI generation, and add sections. The AI will leverage your Knowledge Base documents and Agency Profile to craft relevant content.
    Create Proposal dialog - Step 4 Review with summary and create button

3.2 External Widget Integration

The Intake Widget allows potential clients to submit their project requirements directly from your website. Submissions are automatically captured and converted into draft proposals inside your app.

How It Works

The widget is a lightweight, embeddable form hosted on your deployed app. Clients fill out their details through a guided multi-step intake form. Once submitted, a new proposal is created in your dashboard with the status "Intake Received".

Finding Your Organization Slug

The widget requires your organization slug to route submissions to the correct account. Follow these steps to find it:

Option A: From Supabase Dashboard (SQL Editor)

  1. Go to your Supabase Dashboard → SQL Editor
  2. Run the following query:
    SELECT id, name, slug FROM public.organizations;
  3. Copy the slug value for your organization (e.g., my-agency).

Option B: From Supabase Dashboard (Table Editor)

  1. Go to your Supabase Dashboard → Table Editororganizations
  2. Look for the slug column for your organization row.
Your organization slug is auto-generated during setup — it's a URL-friendly version of your organization name (e.g., "My Agency" becomes my-agency).

Embedding on Your Website

Once you have your organization slug, follow these steps to embed the intake widget on your site:

  1. Visit the Embed Demo Page
    Go to https://your-app-domain/widget/embed-demo in your browser.
  2. Locate the "Iframe Embed" Section
    Scroll down to the Iframe Embed section. You'll see a pre-built iframe snippet with your organization slug pre-filled.
  3. Copy the Embed Code
    Click the copy icon next to the iframe snippet.
  4. Add to Your Website
    Paste the copied code into your website's HTML where you want the intake form to appear:
    Widget iframe embed code section on the embed demo page
    Replace:
    • https://your-app-domain with your actual app URL
    • YOUR_ORG_SLUG with the slug you found in Supabase organizations table (e.g., my-agency)

The widget will render a responsive, step-by-step Intake Form that clients can fill out directly on your site. Submitted data is automatically captured and converted into a draft proposal in your dashboard.

Widget iframe embed code section on the embed demo page

Testing the Widget

Before embedding on your live site, you can test the widget at:

https://your-app-domain/widget?org=YOUR_ORG_SLUG

This opens the full-page intake form — the same form your clients will see when embedded.

Widget Demo Page

You can also view an interactive demo with live code examples:

https://your-app.com/widget/embed-demo

This page shows:

  • A live preview of the embed code
  • Copy-paste ready HTML snippets
  • REST API examples for programmatic intake submissions

Managing Intake Submissions

When a client submits the widget:

  1. A new proposal is created automatically in your dashboard
  2. The status is set to "Intake Received"
  3. You can open the proposal, review the intake data, and generate a full proposal using AI

Step 4: Proposal Generation & Management

This is where the app truly shines — using your Knowledge Base documents and saved settings, the AI creates a polished proposal for you. You can then refine it section by section, save different versions, and export the final result.

4.1 View Your Proposal

After creating a proposal, it appears in the Proposals table on the main Dashboard. Click the eye icon (👁) in the action column to view the proposal's details.

Proposals table showing action column with eye icon to view proposal

This opens the Proposal Overview page with three main tabs:

  • Overview — Quick stats, client info, and proposal summary
  • Generate AI — The AI content generation interface
  • Versions — Version history for the proposal (only appears after the first AI generation)
Proposal Overview page with Overview, Generate AI, and Versions tabs

4.2 Generate Content with AI

The Generate AI tab is where you turn your intake data into a full proposal. Follow these steps:

  1. Select a Template
    Choose from the list of available templates. Each provides a different structure and tone for your proposal:
    • Pre-built Default Templates — A balanced, professional template covering all essential sections, seeded during deployment
    • Custom Template — Your own saved templates, which you can add via the Templates Page
    Note: You can create and manage custom templates from the Templates page in the sidebar.
    AI Generation tab showing template selection cards with pre-built template options
  2. Ensure an AI Provider is Connected
    Before generating, verify that you have selected and saved an AI Provider from the Settings Page. Without a configured provider, generation will not work.
  3. Click "Generate Proposal"
    The AI processes the client intake data, your Knowledge Base documents, and Agency Profile to generate a complete proposal. This may take 30–60 seconds depending on the model.
    AI generation in progress with loading indicator
  4. Auto-Redirect to Editor
    Once generation is complete, you are automatically taken to the Proposal Editor page where the generated content appears, organized into sections.

4.3 Edit Proposal Sections

The Editor page gives you full control over every section of your proposal:

  1. Navigate Sections
    Use the section tabs at the top of the editor to switch between different parts of the proposal (e.g., Executive Summary, Services, Pricing, Timeline). Each section can be individually edited.
    Proposal Editor showing section tabs for navigating through different proposal sections
  2. Edit Content
    Each section has editable text fields. You can refine the AI-generated content, add your own touch, or replace it entirely.
  3. AI-Powered Section Editing
    Each section includes an "AI Edit" button that allows you to refine or rewrite that specific section using AI. Click the button to open an AI editing interface where you can provide custom instructions. This feature is perfect for quickly enhancing individual sections without regenerating the entire proposal.
  4. Proposal Editor Gif showing editable section with rich text area
  5. Preview as PDF & Download
    Click "Preview" at any time to open a dialog showing exactly how the proposal will look when exported. The preview includes your organization's color scheme, name, logo, and contact information. Before downloading, you can customize:
    • Cover Style — Choose from 5 different professional cover layouts to match your brand
    • Watermark — Add an optional watermark with your company name for extra brand presence
    • Governing Law and Dispute Resolution — Include legal terms specific to your jurisdiction for added professionalism and legal clarity
    Inside the preview, click "Download PDF" to save the file to your computer.
  6. Proposal Editor Gif showing editable section with rich text area
  7. Save Your Work
ActionDescription
Save DraftSaves your progress as a draft — you can continue editing later
Save as Final VersionMarks the version as final. A new version entry is created in the Versions tab
Editor showing Save Draft and Save Final buttons

4.4 Version Management

The Versions tab keeps a complete history of every saved version of your proposal, giving you the freedom to experiment without losing previous work.

  1. Access Versions
    From the Proposal Overview page, click the "Versions" tab. (This tab only appears after the first AI generation.)
    Versions tab showing version history list
  2. Version History
    Each time you save (draft or final), a new version is recorded with:
    • Version number (v1, v2, v3, etc.)
    • Status — Draft or Final
    • Timestamp — When it was saved
    • Created by — The team member who saved it
  3. Restore a Previous Version
    To go back to an earlier version:
    • Locate the version you want in the list
    • Click the restore icon
    • Confirm the restoration
    • The editor will reload with that version's content, allowing you to continue editing from that point
  4. Re-edit Any Time
    You can always generate a new AI version or edit manually — every save creates a new entry in the version history, so nothing is ever lost. This means you can experiment freely with different approaches, knowing you can always revert.
    Version detail dialog showing version number, status, and restore option

4.5 Export & Share

Once your proposal is ready, export it as a professional PDF:

  1. Click "Preview PDF" from the editor or proposal overview page.
  2. Review the rendered PDF preview — it will include your organization's branding, colors, and logo.
  3. Click "Download PDF" to save it to your computer.
  4. Share the PDF with your client via email or your preferred channel.
PDF preview modal showing proposal rendered as a professional PDF document

Step 5: Next Steps

Once you've mastered the basics, here are more advanced capabilities to explore:

  1. Create Custom Templates — Create a Custom reusable templates.
  2. RAG Knowledge Base — Upload more documents to improve AI accuracy over time.
  3. Team Collaboration — Invite editors to streamline proposal creation.
  4. Widget Integration — Embed the intake widget on multiple websites to capture leads.

For additional help, refer to the deployment, AI configuration, and local LLM guides in the /docs folder. 🚀