Skip to content

Commit 817be0e

Browse files
committed
Add GitHub Pages documentation and fix username placeholder
1 parent 882e685 commit 817be0e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+727
-279
lines changed

.github/workflows/docs.yml

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
name: Deploy Documentation to GitHub Pages
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
paths:
7+
- 'docs/**'
8+
- '.github/workflows/docs.yml'
9+
pull_request:
10+
branches: [ main ]
11+
paths:
12+
- 'docs/**'
13+
- '.github/workflows/docs.yml'
14+
workflow_dispatch:
15+
16+
permissions:
17+
contents: read
18+
pages: write
19+
id-token: write
20+
21+
concurrency:
22+
group: "pages"
23+
cancel-in-progress: false
24+
25+
jobs:
26+
build:
27+
runs-on: ubuntu-latest
28+
steps:
29+
- name: Checkout
30+
uses: actions/checkout@v4
31+
with:
32+
fetch-depth: 0
33+
34+
- name: Setup Ruby
35+
uses: ruby/setup-ruby@v1
36+
with:
37+
ruby-version: '3.2'
38+
bundler-cache: true
39+
40+
- name: Setup Node.js
41+
uses: actions/setup-node@v4
42+
with:
43+
node-version: '18'
44+
cache: 'npm'
45+
46+
- name: Install Jekyll
47+
run: |
48+
gem install jekyll bundler
49+
bundle install
50+
51+
- name: Build documentation
52+
run: |
53+
cd docs
54+
jekyll build --baseurl "${{ github.event.repository.name }}"
55+
56+
- name: Upload artifact
57+
uses: actions/upload-pages-artifact@v3
58+
with:
59+
path: docs/_site
60+
61+
deploy:
62+
environment:
63+
name: github-pages
64+
url: ${{ steps.deployment.outputs.page_url }}
65+
runs-on: ubuntu-latest
66+
needs: build
67+
if: github.ref == 'refs/heads/main'
68+
steps:
69+
- name: Deploy to GitHub Pages
70+
id: deployment
71+
uses: actions/deploy-pages@v4

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ SmartRAG is a **production-ready** .NET 9.0 library that provides a complete **R
2323
- 🔍 **Smart Document Chunking**: Word boundary validation and optimal break points for context preservation
2424
-**Enterprise Grade**: Zero Warnings Policy, SOLID principles, comprehensive logging, XML documentation
2525
- 🧹 **GlobalUsings Support**: Clean code with centralized using directives for both API and Test projects
26+
- 📚 **Documentation**: Comprehensive documentation with GitHub Pages support
2627

2728
## 🎯 What Makes SmartRAG Special
2829

@@ -47,6 +48,7 @@ SmartRAG is a **production-ready** .NET 9.0 library that provides a complete **R
4748
- **GlobalUsings Support**: Centralized using directives for clean, maintainable code
4849
- **Enterprise Architecture**: Zero Warnings Policy, SOLID/DRY principles, comprehensive XML documentation
4950
- **Production Ready**: Thread-safe operations, centralized logging, proper error handling
51+
- **Documentation**: Professional documentation site with GitHub Pages integration
5052

5153
## 🧠 Smart Query Intent Detection
5254

@@ -703,6 +705,7 @@ We welcome contributions!
703705
- **💼 [LinkedIn](https://www.linkedin.com/in/barisyerlikaya)**
704706
- **🐙 [GitHub Profile](https://github.com/byerlikaya)**
705707
- **📦 [NuGet Packages](https://www.nuget.org/profiles/barisyerlikaya)**
708+
- **📖 [Documentation](https://yourusername.github.io/SmartRAG)** - Comprehensive guides and API reference
706709

707710
## 📄 License
708711

docs/Gemfile

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
source "https://rubygems.org"
2+
3+
gem "jekyll", "~> 4.3.0"
4+
gem "just-the-docs", "~> 0.7.3"
5+
6+
group :jekyll_plugins do
7+
gem "jekyll-remote-theme"
8+
gem "jekyll-feed", "~> 0.12"
9+
gem "jekyll-seo-tag", "~> 2.7"
10+
gem "jekyll-sitemap", "~> 1.4"
11+
end
12+
13+
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
14+
# and associated library.
15+
platforms :mingw, :x64_mingw, :mswin, :jruby do
16+
gem "tzinfo", ">= 1", "< 3"
17+
gem "tzinfo-data"
18+
end
19+
20+
# Performance-booster for watching directories on Windows
21+
gem "wdm", "~> 0.1.1", :platforms => [:mingw, :x64_mingw, :mswin]
22+
23+
# Lock `http_parser.rb` gem to `v0.6.x` on JRuby builds since newer versions of the gem
24+
# do not have a Java counterpart.
25+
gem "http_parser.rb", "~> 0.6.0", :platforms => [:jruby]
26+
27+
# Use `0.18.1` for all platforms, as newer versions of this gem have dependencies
28+
# that are not yet released for JRuby on Java 8.
29+
gem "webrick", "~> 1.7"

docs/_config.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
title: SmartRAG Documentation
2+
description: A powerful and intelligent RAG library for .NET applications
3+
baseurl: ""
4+
url: "https://byerlikaya.github.io"
5+
6+
# GitHub Pages settings
7+
remote_theme: just-the-docs/just-the-docs
8+
plugins:
9+
- jekyll-remote-theme
10+
11+
# Build settings
12+
markdown: kramdown
13+
highlighter: rouge
14+
15+
# Collections
16+
collections:
17+
docs:
18+
output: true
19+
permalink: /:collection/:name/
20+
21+
# Defaults
22+
defaults:
23+
- scope:
24+
path: ""
25+
type: "docs"
26+
values:
27+
layout: "default"
28+
search: true
29+
top_level: true
30+
31+
# Search
32+
search_enabled: true
33+
search:
34+
heading_level: 2
35+
previews: 3
36+
preview_words_before: 5
37+
preview_words_after: 10
38+
tokenizer_separator: /[\s/]+/
39+
40+
# UI
41+
color_scheme: light
42+
back_to_top: true
43+
back_to_top_text: "Back to top"
44+
scroll_to_top: true
45+
46+
# Footer
47+
footer_content: "Copyright &copy; 2024 SmartRAG. Distributed by an <a href=\"https://github.com/just-the-docs/just-the-docs/tree/main/LICENSE.txt\">MIT license.</a>"

docs/_data/navigation.yml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
# Navigation structure for SmartRAG documentation
2+
3+
- title: Getting Started
4+
url: /getting-started
5+
children:
6+
- title: Installation
7+
url: /getting-started#installation
8+
- title: Quick Start
9+
url: /getting-started#quick-start
10+
- title: Basic Configuration
11+
url: /getting-started#basic-configuration
12+
13+
- title: Configuration
14+
url: /configuration
15+
children:
16+
- title: AI Providers
17+
url: /configuration#ai-providers
18+
- title: Storage Providers
19+
url: /configuration#storage-providers
20+
- title: Advanced Settings
21+
url: /configuration#advanced-settings
22+
23+
- title: API Reference
24+
url: /api-reference
25+
children:
26+
- title: Services
27+
url: /api-reference#services
28+
- title: Interfaces
29+
url: /api-reference#interfaces
30+
- title: Models
31+
url: /api-reference#models
32+
- title: Extensions
33+
url: /api-reference#extensions
34+
35+
- title: Examples
36+
url: /examples
37+
children:
38+
- title: Web API
39+
url: /examples#web-api
40+
- title: Console Application
41+
url: /examples#console-application
42+
- title: Custom Implementation
43+
url: /examples#custom-implementation
44+
45+
- title: Troubleshooting
46+
url: /troubleshooting
47+
children:
48+
- title: Common Issues
49+
url: /troubleshooting#common-issues
50+
- title: Error Messages
51+
url: /troubleshooting#error-messages
52+
- title: Performance Tips
53+
url: /troubleshooting#performance-tips

docs/api-reference.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,10 @@
1-
# 📚 API Reference
1+
---
2+
layout: default
3+
title: API Reference
4+
nav_order: 4
5+
---
6+
7+
# API Reference
28

39
Complete reference for SmartRAG API interfaces and services.
410

docs/assets/css/style.css

Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
/* Custom styles for SmartRAG documentation */
2+
3+
/* Code blocks */
4+
.highlight {
5+
background-color: #f6f8fa;
6+
border-radius: 6px;
7+
padding: 16px;
8+
margin: 16px 0;
9+
}
10+
11+
/* Inline code */
12+
code {
13+
background-color: #f6f8fa;
14+
padding: 2px 6px;
15+
border-radius: 3px;
16+
font-size: 0.9em;
17+
}
18+
19+
/* Tables */
20+
table {
21+
border-collapse: collapse;
22+
width: 100%;
23+
margin: 16px 0;
24+
}
25+
26+
th, td {
27+
border: 1px solid #e1e4e8;
28+
padding: 8px 12px;
29+
text-align: left;
30+
}
31+
32+
th {
33+
background-color: #f6f8fa;
34+
font-weight: 600;
35+
}
36+
37+
/* Buttons */
38+
.btn {
39+
display: inline-block;
40+
padding: 8px 16px;
41+
background-color: #0366d6;
42+
color: white;
43+
text-decoration: none;
44+
border-radius: 6px;
45+
font-weight: 500;
46+
transition: background-color 0.2s;
47+
}
48+
49+
.btn:hover {
50+
background-color: #0256cc;
51+
color: white;
52+
text-decoration: none;
53+
}
54+
55+
/* Feature cards */
56+
.feature-card {
57+
border: 1px solid #e1e4e8;
58+
border-radius: 6px;
59+
padding: 20px;
60+
margin: 16px 0;
61+
background-color: white;
62+
}
63+
64+
.feature-card h3 {
65+
margin-top: 0;
66+
color: #24292e;
67+
}
68+
69+
/* Alert boxes */
70+
.alert {
71+
padding: 12px 16px;
72+
border-radius: 6px;
73+
margin: 16px 0;
74+
}
75+
76+
.alert-info {
77+
background-color: #f1f8ff;
78+
border: 1px solid #c8e1ff;
79+
color: #0366d6;
80+
}
81+
82+
.alert-warning {
83+
background-color: #fffbf0;
84+
border: 1px solid #fae17d;
85+
color: #735c0f;
86+
}
87+
88+
.alert-success {
89+
background-color: #f0fff4;
90+
border: 1px solid #85e89d;
91+
color: #28a745;
92+
}
93+
94+
/* Navigation improvements */
95+
.nav-list-link {
96+
color: #586069;
97+
transition: color 0.2s;
98+
}
99+
100+
.nav-list-link:hover {
101+
color: #0366d6;
102+
}
103+
104+
/* Page header */
105+
.page-header {
106+
border-bottom: 1px solid #e1e4e8;
107+
margin-bottom: 24px;
108+
padding-bottom: 16px;
109+
}
110+
111+
.page-title {
112+
margin: 0;
113+
color: #24292e;
114+
}
115+
116+
.page-description {
117+
margin: 8px 0 0 0;
118+
color: #586069;
119+
font-size: 1.1em;
120+
}

docs/assets/images/logo.svg

Lines changed: 22 additions & 0 deletions
Loading

0 commit comments

Comments
 (0)