diff --git a/website/data/ecosystem.yaml b/website/data/ecosystem.yaml index 76068c28f..fe2fcecd1 100644 --- a/website/data/ecosystem.yaml +++ b/website/data/ecosystem.yaml @@ -19,6 +19,10 @@ contributors: note: "Engineers whose public profile names these employers have commits in the repository." + # The landing page prints the names only, not the per-company counts: a "1 + # commit" stamp next to a large employer reads as weakness even though the + # claim is exactly as true. The counts stay here because they are the + # provenance for the list, and anyone re-checking it needs them. companies: - { name: "Microsoft", people: 3, commits: 20 } - { name: "Spectro Cloud", people: 3, commits: 11 } @@ -70,28 +74,50 @@ integrations: by: Sertac Ozercan url: https://github.com/sozercan/aikit what: "Builds fine-tuned models into images that serve through LocalAI." + - name: K8sGPT + by: CNCF Sandbox + url: https://docs.k8sgpt.ai/reference/providers/backend/ + what: "Lists LocalAI as an analysis backend, alongside Bedrock and Azure OpenAI." + - name: LlamaIndex + url: https://docs.llamaindex.ai/en/stable/examples/llm/localai/ + what: "Documents LocalAI as an OpenAI-compatible LLM you can point it at." - name: Kairos url: https://github.com/kairos-io/kairos what: "Ships LocalAI as part of its immutable Linux distribution." press: note: "Written about LocalAI, by people who do not work on it." + # One card per outlet. SUSE published four posts, and listing them as four + # entries made a single vendor look like the whole of the coverage; as one + # series entry the repetition becomes the point instead of the problem. + # + # Every entry here has been opened and checked to confirm it is about this + # project. Two earlier "coverage" links were not: a modelslab.com piece that + # reviewed Frikallo/parakeet.cpp, an unrelated project of the same name, and + # a snailtext.app benchmark of Parakeet through ONNX Runtime that never + # mentioned LocalAI at all. Verify before adding. articles: + - outlet: Pulumi + title: "Deploy low-code LLM apps on AWS with Flowise and LocalAI" + author: "Engin Diri" + date: "2024-02-26" + url: https://www.pulumi.com/blog/low-code-llm-apps-with-local-ai-flowise-and-pulumi/ + what: "A full EKS deployment, with LocalAI doing inference and no GPU in the cluster." + - outlet: Semaphore + title: "LocalAI: replacing OpenAI API with open-source" + author: "Tomas Fernandez" + date: "2023-12-19" + url: https://semaphore.io/blog/localai + what: "Swapping an existing OpenAI integration over to LocalAI, endpoint by endpoint." + - outlet: Spectro Cloud + title: "K8sGPT + LocalAI: unlock Kubernetes superpowers for free" + author: "Tyler Gillson" + date: "2023-04-29" + url: https://www.spectrocloud.com/blog/k8sgpt-localai-unlock-kubernetes-superpowers-for-free + what: "Cluster diagnosis through K8sGPT, answered by a model running on CPU." - outlet: SUSE - title: "Running AI locally" + title: "A four-part series on running AI locally" author: "Christian Huller" date: "2025-11-24" url: https://www.suse.com/c/running-ai-locally/ - what: "Deploying LocalAI on openSUSE, then driving it from VS Code." - - outlet: SUSE - title: "Adding own documents to your local AI using RAG" - url: https://www.suse.com/c/adding-own-documents-to-your-local-ai-using-rag/ - what: "Retrieval over your own documents, on top of LocalAI." - - outlet: SUSE - title: "Local AI and Confluence" - url: https://www.suse.com/c/local-ai-and-confluence/ - what: "Putting a Confluence space behind a local model." - - outlet: SUSE - title: "Introduction to AI training with openSUSE" - url: https://www.suse.com/c/introduction-to-ai-training-with-opensuse/ - what: "Training a LoRA and serving it through LocalAI." + what: "Install on openSUSE and drive it from VS Code, add your own documents with RAG, put a Confluence space behind a local model, then train a LoRA and serve it." diff --git a/website/hugo.toml b/website/hugo.toml index 7b753468d..968b3a68d 100644 --- a/website/hugo.toml +++ b/website/hugo.toml @@ -18,6 +18,7 @@ enableEmoji = true huggingface = 'https://huggingface.co/mudler' # Refreshed by hand or by CI; shown in the nav and the traction band. stars = '48,042' + contributors = '224' [markup.goldmark.renderer] unsafe = true diff --git a/website/layouts/index.html b/website/layouts/index.html index 6dd4aae92..a2a98a915 100644 --- a/website/layouts/index.html +++ b/website/layouts/index.html @@ -13,6 +13,7 @@
Install LocalAI Read the docs + ★ Star on GitHub
0GitHub stars
@@ -279,7 +280,7 @@

Qwen3.5-35B-A3B on an NVIDIA DGX Spark (GB10). Perplexity on wikitext-2-raw at context 2048. Full methodology in the technical report.

- APEX models on Hugging Face ↗ + APEX models on Hugging Face ↗ Technical report ↗
@@ -397,35 +398,9 @@ DeutschEspañolfrançais日本語 한국어PortuguêsРусский中文 -

Who turns up around it

-

Engineers from these companies have put code in

-

Every name below is a person with commits in the repository whose public profile - names that employer. It is a claim about them, not about their employer, and the commit history is - there if you want to check it. Organisations that want to say they use LocalAI add themselves to - ADOPTERS.md.

- -

Plus researchers at {{ delimit .Site.Data.ecosystem.contributors.academia ", " " and " }}.

- -

And these projects integrate it

-

Each one references LocalAI in its own repository or documentation, so you can - verify any of them without taking our word for it.

-
- {{- range .Site.Data.ecosystem.integrations.projects }} - {{ .name }}{{ with .by }}{{ . }}{{ end }}{{ .what }} - {{- end }} -
- -

Written about elsewhere

-
- {{- range .Site.Data.ecosystem.press.articles }} - {{ .outlet }}{{ .title }}{{ .what }} - {{- end }} -
- + {{/* The strongest sentence in this section is somebody else's, so it opens + the section rather than closing it. Everything below is supporting + evidence for what these three people already said. */}}

What other people say

@@ -442,6 +417,37 @@ Read the post ↗
+ {{/* Names run as a sentence rather than a grid of pills. A pill wall of + employers reads as a customer logo wall, which is a claim we are not + making; a sentence keeps it about the people, which is the true one. */}} +

Who shows up

+

{{ .Site.Params.contributors }} people have put code in this repository.

+ {{- $co := slice }} + {{- range .Site.Data.ecosystem.contributors.companies }}{{ $co = $co | append (printf "%s" .name) }}{{ end }} + {{- $ac := slice }} + {{- range .Site.Data.ecosystem.contributors.academia }}{{ $ac = $ac | append (printf "%s" .) }}{{ end }} +

Some of them do it from a desk at {{ delimit $co ", " " and " | safeHTML }}. + Others from labs at {{ delimit $ac ", " " and " | safeHTML }}.

+

That is where they work, not who sent them. + The commit history is public ↗

+ +

And these projects integrate it

+

Each one names LocalAI in its own repository or documentation.

+
+ {{- range .Site.Data.ecosystem.integrations.projects }} + {{ .name }}{{ with .by }}{{ . }}{{ end }}{{ .what }} + {{- end }} +
+

Using LocalAI at work? Add your organisation to + ADOPTERS.md.

+ +

Written about elsewhere

+
+ {{- range .Site.Data.ecosystem.press.articles }} + {{ .outlet }}{{ .title }}{{ .what }} + {{- end }} +
+

Built on, integrated with, written about

@@ -477,17 +483,6 @@

Oh, high there @LocalAI_API, nice to see a terminal based UI for ya! (it's a WIP, but just wanted something cleaner then CURL calls)

On X, 2023 ↗
-
-

Coverage

-

parakeet.cpp vs Whisper

An independent comparison of self-hosted ASR options put parakeet.cpp against Whisper on accuracy and speed.

- modelslab.com ↗
-

Coverage

-

Roughly 4x faster on CPU

A third-party benchmark measured Parakeet TDT against Whisper Small through whisper.cpp on the same machine.

- snailtext.app ↗
-

Contributors

-

224 people have shipped code

Backends, gallery entries, docs, translations and bug fixes, from people who are not on the team.

- github.com ↗
-
diff --git a/website/layouts/partials/footer.html b/website/layouts/partials/footer.html index ef78c57ca..81481bbc7 100644 --- a/website/layouts/partials/footer.html +++ b/website/layouts/partials/footer.html @@ -9,6 +9,6 @@

Community

Support us

-
© 2026 LocalAIMIT licenceDesign mock, not a live page
+
© 2026 LocalAIMIT licenceSource on GitHub
diff --git a/website/layouts/partials/nav.html b/website/layouts/partials/nav.html index df6451299..f8837b6ff 100644 --- a/website/layouts/partials/nav.html +++ b/website/layouts/partials/nav.html @@ -13,7 +13,7 @@ Docs
- ★ {{ .Site.Params.stars }} + ★ {{ .Site.Params.stars }} Install
diff --git a/website/static/css/site.css b/website/static/css/site.css index cb61e4fff..0db19a1d3 100644 --- a/website/static/css/site.css +++ b/website/static/css/site.css @@ -442,14 +442,16 @@ footer{background:var(--deep);border-top:1px solid var(--line2);padding:3rem 0 4 .eco__note{color:var(--dim);font-size:.92rem;max-width:66ch;margin-top:.7rem} .eco__note a{color:var(--cyan);text-decoration:underline;text-underline-offset:.2rem} .eco__aside{color:var(--faint);font-size:.85rem;margin-top:1rem;max-width:66ch} +.eco__aside a{color:var(--cyan);text-decoration:underline;text-underline-offset:.2rem} + +/* Employers are set as a running sentence, not a grid of pills, so the line + reads as a statement about people rather than a wall of customer logos. The + names take weight and the connective text stays dim, which lets the eye + scan the list without the paragraph turning into a badge rack. */ +.eco__names{color:var(--dim);font-size:1rem;line-height:1.75;max-width:62ch;margin-top:1rem} +.eco__names b{color:var(--ink);font-weight:600} .eco{list-style:none;padding:0;margin:1.4rem 0 0} -.eco--co{display:flex;flex-wrap:wrap;gap:.5rem} -.eco--co li{display:flex;align-items:baseline;gap:.5rem;padding:.5rem .8rem;border-radius:999px; - border:1px solid var(--line);background:rgba(255,255,255,.028);transition:border-color .22s,background .22s} -.eco--co li:hover{border-color:rgba(95,205,228,.5);background:rgba(95,205,228,.07)} -.eco--co b{font-size:.9rem;font-weight:600;color:var(--ink)} -.eco--co span{font-family:'Geist Mono',monospace;font-size:.6rem;color:var(--faint);white-space:nowrap} .eco--int{display:grid;gap:.8rem} @media(min-width:700px){.eco--int{grid-template-columns:repeat(2,1fr)}}