lesli.dev
SEO & AI Discoverability Audit
Prepared by Lesli Rose | April 2026
Open-Source Ruby on Rails SaaS Framework
No Sitemap -- No Schema -- No Blog -- Severely Limited Discoverability
Section 01
Executive Summary
Lesli is a technically impressive open-source framework with 11,900+ commits, 8 production-ready engines, and a clear value proposition. The engineering is strong. But search engines and AI systems have almost no structured way to understand what Lesli is, who built it, or why a developer should choose it over alternatives.
The Core Finding
Lesli.dev has no sitemap, no meta descriptions, no structured data, and no blog. Which means Google is guessing what your framework does based on raw HTML alone. Which means developers searching for "Rails SaaS framework" or "open-source SaaS boilerplate" are unlikely to find Lesli. Which means every day, potential users are choosing Jumpstart Rails, Bullet Train, or other alternatives -- not because they're better, but because they're more visible.
Top 5 Priorities
| # | Priority | Severity | Impact |
| 1 | Add sitemap.xml and submit to Google Search Console | Critical | Ensures all pages are discoverable by search engines |
| 2 | Add meta descriptions to every page | Critical | Controls how Lesli appears in search results |
| 3 | Deploy Organization + SoftwareApplication schema | High | Helps Google and AI systems understand what Lesli is |
| 4 | Launch a developer blog with tutorial content | High | Captures long-tail search traffic from developers |
| 5 | Add llms.txt and allow AI crawlers in robots.txt | Medium | Positions Lesli for AI-assisted discovery |
The Good News
You've already done the hard part -- building a real, production-quality framework with 11,900+ commits and 8 working engines. The fixes in this audit are structural, not creative. Most of the highest-impact items can be implemented in under a week. This is about making the work you've already done visible to the systems that decide what developers see.
Section 02
Site Snapshot & Health Scores
How lesli.dev performs across the five dimensions that determine search visibility and AI discoverability.
Current Assets
What's Working
- Strong H1 targeting "Open-Source SaaS Development Framework for Ruby on Rails"
- GA4 analytics installed (G-8SZFQK2DZB)
- HTTPS enabled
- Clean URL structure (/engines/, /gems/)
- Live demo at demo.lesli.dev
- Clear CTAs ("Build with Lesli", "Explore the Demo")
What's Missing
- No meta descriptions on any page
- No sitemap.xml
- No JSON-LD schema of any kind
- No Open Graph or Twitter Card tags
- No blog or content marketing
- No llms.txt file
- No canonical tags detected
- No FAQ content or schema
- Non-standard robots.txt
Tech Stack
Framework
Ruby on Rails + PostgreSQL
Frontend
Hotwire + Bulma + Alpine.js
License
GPLv3 Open Source
Engines
8 Production Modules
Gems
5 Supporting Packages
Section 03
Critical Issue
The single most impactful problem that needs to be fixed before anything else matters.
SEVERITY: CRITICAL -- No Sitemap + No Meta Descriptions
lesli.dev has no sitemap.xml and no meta descriptions on any page. These are the two most foundational SEO elements -- without them, Google is crawling the site blind and displaying auto-generated snippets in search results that you have no control over.
What Google Sees Right Now
No Sitemap
Google has no map of your site's pages. It discovers content only through internal links, which means deeper documentation pages may never get crawled. For a framework with 8 engines and 5 gems, each with multiple documentation pages, this is a significant amount of content that search engines may not know exists.
No Meta Descriptions
When lesli.dev does appear in search results, Google auto-generates a snippet from random page text. You lose control of the first impression. The title tag is decent ("Lesli -- Ruby on Rails SaaS Development Framework") but without a meta description, the listing looks incomplete and generic next to competitors who have polished snippets.
The Fix
sitemap.xml
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url><loc>https://www.lesli.dev/</loc><priority>1.0</priority></url>
<url><loc>https://www.lesli.dev/engines/</loc><priority>0.9</priority></url>
<url><loc>https://www.lesli.dev/gems/</loc><priority>0.8</priority></url>
<url><loc>https://www.lesli.dev/engines/lesli/about/</loc><priority>0.8</priority></url>
<url><loc>https://www.lesli.dev/engines/lesli/getting-started/</loc><priority>0.9</priority></url>
<!-- Add all engine and gem documentation pages -->
</urlset>
Homepage Meta Description
<meta name="description" content="Lesli is an open-source Ruby on Rails framework for building scalable SaaS applications. 8 production-ready engines, modular architecture, PostgreSQL, Hotwire. Start building in minutes.">
Time to Fix: 2--3 Hours | Impact: Foundational
Generate a complete sitemap.xml covering all documentation pages, write meta descriptions for the homepage and top 10 pages, and submit the sitemap to Google Search Console. This single action gives Google a complete map of your framework's documentation and controls how every page appears in search results.
Section 04
Technical SEO Issues
Every technical issue found, ranked by severity and business impact.
| # | Issue | Severity | Fix |
| 1 | No sitemap.xml -- search engines cannot discover all pages | Critical | Generate XML sitemap covering all documentation pages, submit to GSC |
| 2 | No meta descriptions on any page | Critical | Add unique, keyword-rich meta descriptions to every page |
| 3 | Non-standard robots.txt -- uses "content signals" policy instead of standard format | High | Replace with standard robots.txt with User-agent directives and sitemap reference |
| 4 | No canonical tags detected | High | Add rel="canonical" to every page to prevent duplicate content issues |
| 5 | No Open Graph or Twitter Card tags | High | Add og:title, og:description, og:image, twitter:card to all pages |
| 6 | /about returns 404 -- About page buried at /engines/lesli/about/ | Medium | Create a top-level /about/ page or redirect /about to /engines/lesli/about/ |
| 7 | /blog returns 404 -- no blog exists | Medium | Launch a developer blog with tutorial and guide content |
| 8 | Image alt text inconsistent or missing | Medium | Add descriptive alt text to all images including screenshots and logos |
| 9 | No structured data / JSON-LD schema of any kind | High | Add Organization, SoftwareApplication, BreadcrumbList, and WebSite schema |
| 10 | No hreflang tags for international audience | Low | Consider hreflang if documentation is translated (Babel engine suggests multilanguage support) |
Quick Wins (Under 30 Minutes Each)
Meta Description
Write homepage meta description
~10 minutes
Robots.txt
Replace with standard format
~10 minutes
GSC Setup
Verify site in Search Console
~15 minutes
OG Tags
Add Open Graph to homepage
~15 minutes
Canonical Tags
Add to all top-level pages
~20 minutes
/about Redirect
Redirect /about to About page
~5 minutes
Section 06
Schema Markup Package
Structured data helps search engines and AI systems recognize what Lesli offers faster and more confidently. Currently, lesli.dev has zero schema markup.
Schema Status
| Schema Type | Status | Where It Goes |
| Organization | Missing | Every page (global) |
| SoftwareApplication | Missing | Homepage, Getting Started |
| WebSite | Missing | Homepage |
| BreadcrumbList | Missing | Every page |
| SoftwareSourceCode | Missing | Engine/Gem pages |
| FAQPage | Missing | FAQ section (needs to be created) |
| HowTo | Missing | Getting Started page |
Copy-Paste Schema Blocks
Organization Schema (every page)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Lesli Technologies",
"legalName": "Lesli Technologies, S. A.",
"url": "https://www.lesli.tech",
"logo": "https://www.lesli.dev/images/brand/lesli-logo.svg",
"description": "A development team creating innovative open-source software solutions, based in Guatemala City.",
"foundingDate": "2020",
"address": {
"@type": "PostalAddress",
"addressLocality": "Guatemala City",
"addressCountry": "GT"
},
"contactPoint": {
"@type": "ContactPoint",
"email": "hello@lesli.tech",
"contactType": "technical support"
},
"sameAs": [
"https://github.com/LesliTech",
"https://www.linkedin.com/company/leslitech/",
"https://twitter.com/LesliTech"
]
}
</script>
SoftwareApplication Schema (homepage)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "Lesli",
"applicationCategory": "DeveloperApplication",
"applicationSubCategory": "Web Application Framework",
"operatingSystem": "Cross-platform",
"description": "Open-source Ruby on Rails framework for building scalable, secure, and customizable SaaS applications. Includes 8 production-ready engines for authentication, dashboards, support tickets, calendars, notifications, auditing, and translations.",
"url": "https://www.lesli.dev",
"downloadUrl": "https://rubygems.org/gems/lesli",
"softwareVersion": "5.1",
"programmingLanguage": ["Ruby", "JavaScript"],
"runtimePlatform": "Ruby on Rails 8.0",
"license": "https://www.gnu.org/licenses/gpl-3.0.html",
"offers": {
"@type": "Offer",
"price": "0",
"priceCurrency": "USD",
"description": "Free and open-source under GPLv3"
},
"author": {
"@type": "Organization",
"name": "Lesli Technologies",
"url": "https://www.lesli.tech"
},
"codeRepository": "https://github.com/LesliTech/Lesli"
}
</script>
WebSite Schema (homepage)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WebSite",
"name": "Lesli",
"url": "https://www.lesli.dev",
"description": "Documentation and guides for the Lesli Ruby on Rails SaaS development framework.",
"publisher": {
"@type": "Organization",
"name": "Lesli Technologies"
}
}
</script>
BreadcrumbList Schema (engine pages example)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{"@type": "ListItem", "position": 1, "name": "Home", "item": "https://www.lesli.dev/"},
{"@type": "ListItem", "position": 2, "name": "Engines", "item": "https://www.lesli.dev/engines/"},
{"@type": "ListItem", "position": 3, "name": "Shield", "item": "https://www.lesli.dev/engines/shield/"}
]
}
</script>
HowTo Schema (Getting Started page)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "How to Install and Set Up Lesli",
"description": "Install the Lesli Ruby on Rails SaaS framework and get a working development environment in under 5 minutes.",
"totalTime": "PT5M",
"tool": [
{"@type": "HowToTool", "name": "Ruby 3.2.x"},
{"@type": "HowToTool", "name": "Rails 8.0.x"},
{"@type": "HowToTool", "name": "Node.js 20.x"}
],
"step": [
{"@type": "HowToStep", "name": "Create Rails Application", "text": "Generate a fresh Rails application to host Lesli."},
{"@type": "HowToStep", "name": "Install Lesli Gem", "text": "Run bundle add lesli to add the framework to your project."},
{"@type": "HowToStep", "name": "Run Installation Generator", "text": "Run rails generate lesli:install to create configuration files."},
{"@type": "HowToStep", "name": "Prepare Database", "text": "Run rake lesli:db:dev to execute migrations and seed demo data."},
{"@type": "HowToStep", "name": "Start Development Server", "text": "Launch with rails s and navigate to localhost:3000/login."}
]
}
</script>
How to Add Schema in a Static Documentation Site
If lesli.dev is built with VitePress, VuePress, or a similar static site generator, add JSON-LD blocks to the <head> section via the theme configuration or a custom layout component. Most static site generators support injecting custom head content per page. For VitePress specifically, use the frontmatter "head" property or a custom theme with useHead().
Section 07
Content Strategy & Blog
Lesli.dev currently has documentation but no blog, no tutorial content, and no comparison pages. There are developers actively searching for answers that Lesli could provide -- and those searches are going to competitors.
What's Working
- Clear Getting Started guide with step-by-step installation
- Engine documentation organized by module
- Contributing guidelines signal a healthy open-source project
- Live demo available at demo.lesli.dev
What Needs Work
1. No Blog
Zero blog posts. Every framework competitor has a blog. This is the single largest content gap. Developers discover frameworks through blog posts, tutorials, and guides -- not just documentation.
2. No Comparison Content
"Lesli vs Jumpstart Rails", "Lesli vs Bullet Train", "open-source Rails SaaS framework comparison" -- these are high-intent searches from developers actively choosing a framework. Lesli isn't in those conversations.
3. No Use Case Pages
Pages like "Build a CRM with Lesli", "Build a Project Management Tool with Lesli", or "Build a Multi-tenant SaaS with Lesli" show developers exactly what's possible and capture specific search queries.
4. No FAQ Section
Common questions like "Is Lesli free?", "Does Lesli support multi-tenancy?", "What Rails version does Lesli need?" have no dedicated FAQ. These are exactly the kind of structured answers that AI systems pull from.
Content Opportunities
| Type | Example Topics | Search Intent |
| Comparison | "Lesli vs Jumpstart Rails", "Lesli vs Bullet Train", "Free vs Paid Rails SaaS frameworks" | Developers evaluating frameworks |
| Tutorial | "Build a SaaS dashboard with Lesli", "Multi-tenant Rails app with Lesli engines" | Developers learning by building |
| Use Case | "Lesli for CRM", "Lesli for project management", "Lesli for internal tools" | Developers with specific project needs |
| Technical | "Modular Rails engine architecture", "Rails SaaS authentication patterns" | Senior developers researching architecture |
| Ecosystem | "Why we chose Hotwire over React", "PostgreSQL vs MySQL for Rails SaaS" | Developers making stack decisions |
The Strategic Insight
Lesli has a documentation site. What it needs is a developer marketing site. Documentation explains how things work for people who already chose Lesli. A blog and content strategy captures developers who haven't chosen anything yet. That's where growth comes from -- not from better docs for existing users, but from visible content that brings new developers in the door.
Section 08
Keyword Pillars & Topic Clusters
Six content pillars that align with how developers search for and evaluate SaaS frameworks.
Pillar 1: Rails SaaS Frameworks
ruby on rails saas framework
rails saas boilerplate
open source saas framework
rails saas starter kit
rails multi-tenant framework
Pillar Page: "The Complete Guide to Ruby on Rails SaaS Frameworks in 2026" -- comparison of all options with Lesli positioning.
Pillar 2: Modular Rails Architecture
rails engines
modular rails architecture
rails engine pattern
mountable rails engine
rails plugin architecture
Pillar Page: "Modular Rails Architecture: How Engines Scale SaaS Applications" -- Lesli as the reference implementation.
Pillar 3: SaaS Development Tutorials
build saas with rails
rails saas tutorial
saas authentication rails
rails dashboard tutorial
rails role-based access
Pillar Page: "Build a SaaS Application with Ruby on Rails: Step-by-Step Guide"
Pillar 4: Open Source Business Software
open source business software
self-hosted saas platform
open source erp rails
open source crm ruby
free saas framework
Pillar Page: "Open-Source SaaS Platforms: Build vs Buy in 2026"
Pillar 5: Framework Comparisons
jumpstart rails vs
bullet train rails
rails vs django saas
rails vs next.js saas
best framework for saas 2026
Pillar Page: "Lesli vs Jumpstart Rails vs Bullet Train: Which Rails SaaS Framework?"
Pillar 6: Hotwire & Modern Rails
hotwire rails tutorial
turbo frames rails
stimulus rails
rails without react
alpine.js rails
Pillar Page: "Building Modern UIs with Hotwire, Bulma, and Alpine.js in Rails"
Internal Linking Strategy
Every blog post should link to its pillar page. Every pillar page should link to the Getting Started guide and relevant engine documentation. Every engine page should link back to the homepage and related blog content. This creates topic clusters that signal to Google: "Lesli is an authority on Rails SaaS development." Without internal linking, content works alone. With it, content compounds.
Section 09
Competitor Analysis
How Lesli compares to other Rails SaaS frameworks and dev tools in the market. The goal is not to copy competitors -- it's to find the gaps they're not filling.
| Competitor | Strengths | Weaknesses | Lesli's Advantage |
Jumpstart Rails gorails.com/jumpstart |
Strong brand, GoRails audience, active blog, good SEO, commercial support |
Paid ($249+), closed-source, starter kit not a framework, single developer dependency |
Free, open-source, modular engine architecture vs monolith starter, GPLv3 freedom |
Bullet Train bullettrain.co |
Team collaboration features, API-first, good docs, open-source core |
Complex setup, heavy abstraction layer, smaller community |
Simpler engine-based architecture, more modular, lighter footprint |
Avo avohq.io |
Beautiful admin panels, good content marketing, active community |
Admin-focused (not full SaaS framework), freemium model |
Full SaaS framework vs admin panel, broader scope, fully free |
Lago getlago.com |
Strong VC backing, billing-focused, good SEO, enterprise positioning |
Billing-only (not general SaaS), Ruby + API-only |
General-purpose framework, full-stack with frontend, broader use cases |
Solidus solidus.io |
Mature community, e-commerce focused, good schema, active development |
E-commerce only, heavy, complex plugin system |
SaaS-focused (not e-commerce), cleaner modular architecture |
Competitive SEO Gaps Lesli Can Own
- "open source rails saas framework" -- no clear winner in search results right now
- "rails engine architecture for saas" -- Lesli's core differentiator, zero content about it
- "free alternative to jumpstart rails" -- high-intent query, no one owns it
- "modular rails framework" -- Lesli is literally this, but has no content claiming the term
- "rails saas framework comparison 2026" -- no up-to-date comparison exists
- "build saas with rails open source" -- tutorial opportunity with zero competition
Lesli's Real Moat
Lesli is the only fully open-source, modular, engine-based Rails SaaS framework. Jumpstart is paid and monolithic. Bullet Train is complex. Avo is admin-only. Lago is billing-only. Lesli is the only option that gives a developer a complete, free, modular SaaS foundation with production-ready engines they can use independently. That's a powerful position -- but right now, nobody searching for a Rails SaaS framework can find it. The moat exists in the code. It needs to exist in the content.
Section 10
AI Discoverability & LLM Optimization
As search shifts toward AI-assisted answers, frameworks with clearer structure are more likely to be surfaced when developers ask ChatGPT, Claude, or Perplexity "what's the best Rails SaaS framework?"
Current AI Discoverability: Severely Limited
- No llms.txt file -- AI systems have no structured guide to the site
- No schema markup -- AI cannot parse entity relationships
- No FAQ content -- AI has no question-answer pairs to cite
- Robots.txt uses non-standard format -- AI crawlers may be confused
- GitHub repository (27 stars, 11.9k commits) provides some AI training signal
- RubyGems listing provides another structured data point
What AI Systems Need vs What Lesli Provides
| What AI Looks For | Lesli Status |
| Clear entity statement ("Lesli is a...") | Present in H1 and About |
| Structured data (JSON-LD) | Not present |
| FAQ content with question-answer pairs | Not present |
| Comparison content ("Lesli vs X") | Not present |
| llms.txt file | Not present |
| AI crawler access in robots.txt | Non-standard format |
| GitHub repository signal | Present (27 stars, 11.9k commits) |
| Clear feature lists with descriptions | Present on homepage |
AI-Optimized Entity Statement
Add This to the About Page
"Lesli is an open-source Ruby on Rails SaaS development framework created by Lesli Technologies in Guatemala City. It provides 8 production-ready modular engines -- including authentication, dashboards, calendars, support tickets, notifications, auditing, and translation management -- that plug into any Rails application. Lesli is free under the GPLv3 license and has over 11,900 commits on GitHub. Unlike starter kits or admin panels, Lesli is a modular framework built on standard Rails engine architecture, designed to scale from prototype to production."
llms.txt (Ready to Deploy)
Save as /llms.txt at site root
# Lesli - Ruby on Rails SaaS Development Framework
> Lesli is an open-source Ruby on Rails framework for building scalable, secure, and customizable SaaS applications. Built by Lesli Technologies in Guatemala City.
## What Lesli Is
- A modular SaaS framework (not a starter kit, admin panel, or boilerplate)
- Built on Ruby on Rails 8.0, PostgreSQL, Hotwire, Bulma, Alpine.js
- Free and open-source under GPLv3
- 8 production-ready engines, 5 supporting gems
- 11,900+ commits on GitHub
## Engines (Modules)
- Dashboard: Dashboard management and analytics
- Admin: Administration area and system settings
- Bell: Notification system
- Calendar: Unified calendar application
- Support: Support ticket system
- Shield: Authentication and access management
- Audit: Activity tracking, versioning, and analytics
- Babel: Translation and multilanguage management
## Gems (Packages)
- LesliSystem: Core system utilities
- LesliView: Web elements and components
- LesliDate: Datetime formatting
- LesliAssets: Shared frontend assets
- Termline: Human-friendly terminal logs
## Getting Started
Install with: bundle add lesli
Generate config: rails generate lesli:install
Setup database: rake lesli:db:dev
Requirements: Ruby 3.2+, Rails 8.0+, Node.js 20+
## Links
- Documentation: https://www.lesli.dev
- GitHub: https://github.com/LesliTech/Lesli
- Demo: https://demo.lesli.dev
- Company: https://www.lesli.tech
- Contact: hello@lesli.tech
Why This Matters Now
When a developer asks ChatGPT or Claude "What are the best open-source Rails SaaS frameworks?", the AI pulls from structured content, schema, GitHub data, and documentation sites. Right now, Lesli's GitHub repo is the strongest signal -- but it's competing against frameworks with dedicated blogs, FAQ pages, and comparison content. Adding llms.txt, schema, and structured content significantly increases the chance that AI systems will include Lesli in their recommendations. This is an emerging best practice, not yet standardized -- but early adopters gain a compounding advantage.
Section 11
Robots.txt & Crawl Directives
The current robots.txt uses a non-standard "content signals" format. Search engines and AI crawlers expect standard User-agent/Allow/Disallow directives.
Current State
Non-Standard robots.txt Format
The current robots.txt at lesli.dev/robots.txt uses a "content signals" policy with terms like "search", "ai-input", and "ai-train". This is not a standard robots.txt format. While some advanced crawlers may interpret it, Google, Bing, and most AI crawlers expect standard directives. This means your crawl instructions may be partially or completely ignored.
Recommended robots.txt
Replace current robots.txt
# Lesli - lesli.dev
# Standard robots.txt with AI crawler directives
User-agent: *
Allow: /
# AI Search Crawlers (ALLOW - these drive discoverability)
User-agent: GPTBot
Allow: /
User-agent: OAI-SearchBot
Allow: /
User-agent: ChatGPT-User
Allow: /
User-agent: ClaudeBot
Allow: /
User-agent: Claude-SearchBot
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: Google-Extended
Allow: /
User-agent: Applebot-Extended
Allow: /
User-agent: CCBot
Allow: /
# Block training-only crawlers (no search benefit)
User-agent: Bytespider
Disallow: /
Sitemap: https://www.lesli.dev/sitemap.xml
Why Allow AI Crawlers?
Every AI crawler you allow is another system that can recommend Lesli to developers. When someone asks Perplexity "What's a good open-source Rails SaaS framework?", PerplexityBot needs to have crawled your site to include you in the answer. Blocking AI crawlers is blocking free distribution. The only exception is Bytespider (ByteDance), which is primarily used for model training with no search product that benefits you.
Section 12
Site Architecture Cleanup
The current site structure is documentation-focused. Adding a few key pages and redirects would significantly improve both user experience and SEO.
| Page/URL | Action | Reason |
| /about | Create | Top-level About page expected by users and search engines |
| /blog | Create | Developer blog for content marketing and SEO |
| /faq | Create | FAQ page with FAQPage schema for AI discoverability |
| /pricing | Create | Even if free, a pricing page clarifies the business model and captures "lesli pricing" searches |
| /vs/jumpstart-rails | Create | Comparison page targeting high-intent developer searches |
| /vs/bullet-train | Create | Comparison page targeting competitor searches |
| /use-cases | Create | Landing page linking to specific use case pages |
| /sitemap.xml | Create | Required for search engine crawling |
| /llms.txt | Create | Emerging best practice for AI discoverability |
Recommended Site Structure
lesli.dev/
├── / (homepage)
├── /about/ (top-level about page)
├── /blog/ (developer blog)
│ ├── /blog/build-saas-with-rails/
│ ├── /blog/modular-engine-architecture/
│ └── /blog/lesli-vs-jumpstart-rails/
├── /engines/ (module listing)
│ ├── /engines/dashboard/
│ ├── /engines/shield/
│ ├── /engines/bell/
│ ├── /engines/calendar/
│ ├── /engines/support/
│ ├── /engines/admin/
│ ├── /engines/audit/
│ └── /engines/babel/
├── /gems/ (package listing)
│ ├── /gems/system/
│ ├── /gems/view/
│ ├── /gems/date/
│ ├── /gems/assets/
│ └── /gems/termline/
├── /vs/ (comparison pages)
│ ├── /vs/jumpstart-rails/
│ ├── /vs/bullet-train/
│ └── /vs/avo/
├── /use-cases/
├── /faq/
├── /pricing/
├── /start/ (getting started)
├── /sitemap.xml
├── /robots.txt
└── /llms.txt
Section 13
90-Day Implementation Roadmap
A phased plan to take lesli.dev from minimal SEO to full organic discoverability. Each phase builds on the previous one.
Week 1 -- Emergency Fixes
Foundation: Crawlability & Metadata
- Generate and deploy sitemap.xml with all pages
- Replace robots.txt with standard format + AI crawler rules
- Add meta descriptions to homepage and top 10 pages
- Add canonical tags to all pages
- Add Open Graph and Twitter Card tags to all pages
- Verify site in Google Search Console and submit sitemap
- Create /about top-level page (or redirect)
- Deploy llms.txt
Week 2-3 -- Schema & Structured Data
Make Search Engines and AI Understand Lesli
- Deploy Organization schema (global)
- Deploy SoftwareApplication schema (homepage)
- Deploy WebSite schema (homepage)
- Deploy BreadcrumbList schema (all pages)
- Deploy HowTo schema (Getting Started page)
- Create FAQ page with FAQPage schema
- Add OG share image (1200x630px branded graphic)
- Create /pricing page (even though Lesli is free)
Week 4-6 -- Content Activation
Launch Blog and Comparison Content
- Set up blog infrastructure (static site generator blog section)
- Publish "Lesli vs Jumpstart Rails" comparison page
- Publish "Lesli vs Bullet Train" comparison page
- Publish "The Complete Guide to Rails SaaS Frameworks in 2026" (Pillar 1)
- Publish 2 tutorial posts (build-along guides using Lesli engines)
- Add Article schema to each blog post
- Internal link blog posts to engine documentation and Getting Started
Week 7-9 -- Pillar Pages & Internal Linking
Build Topic Authority
- Publish Pillar 2: "Modular Rails Architecture" guide
- Publish Pillar 3: "Build a SaaS Application with Rails" tutorial
- Publish 3-4 supporting blog posts per pillar
- Build internal linking structure between pillars, posts, and docs
- Create use case pages (/use-cases/crm, /use-cases/project-management)
- Submit new URLs to GSC after each publish
Week 10-12 -- Authority Building & Scale
Compound the Content Investment
- Publish remaining pillar pages (4, 5, 6)
- Optimize top-performing posts based on GSC data
- Build external links: Rails community posts, dev.to articles, GitHub discussions
- Consider Hacker News and Ruby Weekly newsletter submissions
- Audit and update all schema based on Google Search Console enhancements
- Target featured snippets for question-based developer queries
Projected Score Improvements
AI Discoverability: 10 -> 70
Expected Timeline to Results
Week 1-2: Site fully indexed in Google. Brand searches ("Lesli framework") return complete, controlled results.
Month 2-3: First organic impressions for long-tail developer keywords. AI systems begin citing Lesli in framework comparisons.
Month 3-6: Blog content starts ranking. Comparison pages capture high-intent searches. Organic traffic compounds as content library grows.
Month 6-12: Targeting 500-1,000 organic developer visits per month. Lesli consistently appears in AI-assisted framework recommendations.
Section 14
Investment & Engagement
$10,000
$0
Free Audit
No commitment. This audit is yours to keep regardless of next steps. Every schema block, every robots.txt directive, every content recommendation -- it's all ready to implement.
Option A: Foundation Package
Technical SEO fixes, schema deployment, metadata optimization, and robots.txt/sitemap/llms.txt setup. Everything in Weeks 1-3 of the roadmap.
$3,000
- Sitemap.xml generation and GSC submission
- Meta descriptions for all pages
- Full schema markup deployment (6 types)
- Open Graph and Twitter Card tags
- robots.txt and llms.txt deployment
- Canonical tags sitewide
- FAQ page creation with schema
- /about and /pricing page creation
Recommended
Option B: Full Implementation
Everything in Option A plus content strategy execution: blog setup, comparison pages, pillar content, and 90-day roadmap implementation.
$5,000
- Everything in Option A
- Blog infrastructure setup
- 3 comparison pages (vs Jumpstart, Bullet Train, Avo)
- 2 pillar pages with full content
- 4 tutorial blog posts
- Internal linking architecture
- Use case page creation
- OG share image design
- Site architecture restructuring
Monthly Retainer: Ongoing Content & SEO
$1,500/month
- 4 blog posts per month (tutorials, comparisons, guides)
- Schema maintenance and updates
- GSC monitoring and optimization
- Internal linking updates
- Monthly SEO performance reports
- AI discoverability monitoring
- Keyword tracking and content adjustments
- Competitor monitoring
Projected ROI at 6 Months
500+
Monthly Organic Visits
The Path Forward
Lesli is real software with real engineering behind it.
The only issue is that the search engines and AI systems don't know it yet.
This Week
Sitemap. Meta descriptions. Standard robots.txt. Submit to Google Search Console. Deploy llms.txt.
This Month
Schema markup. FAQ page. Open Graph images. Comparison content. Blog infrastructure.
This Quarter
Pillar pages. Tutorial content. Internal linking. Authority building. Start ranking for developer searches.
Lesli has 11,900 commits, 8 working engines, and a clear value proposition that developers need to hear. You've already done the hard part -- building something real. The work ahead is structural, not creative. It's about making sure the systems that decide what developers see can understand what you've built. Every fix in this audit connects to the same outcome: more developers finding Lesli, trying it, and building with it.
Start with Week 1. The rest follows.
Audit prepared by
Lesli Rose
April 2026