Skip to content

Commit 3694322

Browse files
Merge pull request #274 from asinghvi17/as/commercialsupport
Add a commercial support dropdown
2 parents 468f689 + 44e14b1 commit 3694322

File tree

4 files changed

+71
-3
lines changed

4 files changed

+71
-3
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
*.jl.cov
33
*.jl.mem
44
/docs/build/
5+
/docs/cloned/
56
/docs/src/modules
67
Manifest.toml
78
*.swp

docs/CommercialSupportComponent.jl

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
struct JuliaHubCommercialSupportComponent <: MultiDocumenter.DropdownComponent
2+
link::String
3+
end
4+
5+
function MultiDocumenter.render(c::JuliaHubCommercialSupportComponent, doc, thispage, prettyurls)
6+
7+
return MultiDocumenter.@htl """
8+
<div>
9+
<a href="$(c.link)" class="nav-link nav-item">
10+
<img src="https://info.juliahub.com/hubfs/Julia-Hub-Navigation-Logo-JuliaHub.svg" alt="JuliaHub logo - contact sales today!" style = "padding: 10px;"/>
11+
</a>
12+
<p></p>
13+
<a href="$(c.link)" class="nav-link nav-item">JuliaHub offers commercial support for ModelingToolkit and the SciML ecosystem. Contact us today to discuss your needs!</a>
14+
</div>
15+
"""
16+
17+
end
18+
19+
struct ProductsUsedComponent <: MultiDocumenter.DropdownComponent end
20+
21+
PRODUCTNAME_IMAGE_LINK = [
22+
(; product = "JuliaSim", logo = "https://juliahub.com/ui/juliasim-logo.notext.svg", link = "https://juliahub.com/products/juliasim"),
23+
(; product = "Pumas", logo = "https://juliahub.com/ui/Pumas%20Logomark.svg", link = "https://pumas.ai/"),
24+
(; product = "Cedar EDA", logo = "https://juliahub.com/ui/cedar_eda.svg", link = "https://juliahub.com/products/cedar-eda"),
25+
(; product = "Neuroblox", logo = "https://juliahub.com/ui/Neuroblox-logo-400-300-dark.png", link = "https://www.neuroblox.org/"),
26+
(; product = "Planting Space", logo = "https://planting.space/img/logo_big.svg", link = "https://planting.space/"),
27+
]
28+
29+
function MultiDocumenter.render(c::ProductsUsedComponent, doc, thispage, prettyurls)
30+
strings = [MultiDocumenter.@htl """
31+
<li>
32+
<a href=$(product.link) class="nav-link nav-item">
33+
$(product.product)
34+
</a>
35+
</li>
36+
""" for product in PRODUCTNAME_IMAGE_LINK]
37+
38+
return MultiDocumenter.@htl """
39+
<table>
40+
$strings
41+
</table>
42+
"""
43+
end
44+
45+
46+
struct Link <: MultiDocumenter.DropdownComponent
47+
text::String
48+
link::String
49+
end
50+
51+
function MultiDocumenter.render(c::Link, doc, thispage, prettyurls)
52+
return MultiDocumenter.@htl """
53+
<a href=$(c.link) class="nav-link nav-item">$(c.text)</a>
54+
"""
55+
end

docs/make.jl

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,8 @@ makedocs(sitename = "Overview of Julia's SciML",
7878
"highlevels/interfaces.md",
7979
"highlevels/developer_documentation.md"],
8080
"Extra Learning Resources" => ["highlevels/learning_resources.md"]
81-
]])
81+
]],
82+
warnonly = true,
83+
)
8284

8385
deploydocs(repo = "github.com/SciML/SciMLDocs")

docs/make_aggregate.jl

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
using Documenter, LibGit2, Pkg
22
using MultiDocumenter
33

4-
clonedir = mktempdir()
4+
include("CommercialSupportComponent.jl")
5+
6+
clonedir = joinpath(@__DIR__, "cloned")
57

68
# Ordering Matters!
79
docsmodules = [
@@ -182,7 +184,7 @@ docs = Any[MultiDocumenter.MultiDocRef(upstream = joinpath(clonedir, "Home"),
182184
for group in docsmodules
183185
docgroups = []
184186
for cat in group[2]
185-
docsites = []
187+
docsites = MultiDocumenter.DropdownComponent[]
186188
for mod in cat[2]
187189
url = if mod in hasnojl
188190
"https://github.com/SciML/$mod.git"
@@ -204,6 +206,14 @@ for group in docsmodules
204206
push!(docs, MultiDocumenter.MegaDropdownNav(group[1], docgroups))
205207
end
206208

209+
push!(docs, MultiDocumenter.MegaDropdownNav(
210+
"Commercial Support",
211+
[
212+
MultiDocumenter.Column("Commercial Support", [JuliaHubCommercialSupportComponent("https://juliahub.com/company/contact-us-sciml-docs")]),
213+
MultiDocumenter.Column("Products built with SciML", [ProductsUsedComponent()]),
214+
]
215+
))
216+
207217
outpath = joinpath(@__DIR__, "build")
208218

209219
MultiDocumenter.make(outpath, docs;

0 commit comments

Comments
 (0)