Initial release of FreeLLMAPI
Self-hosted OpenAI-compatible proxy that aggregates the free tiers of fourteen LLM providers — Google, Groq, Cerebras, SambaNova, NVIDIA, Mistral, OpenRouter, GitHub Models, Hugging Face, Cohere, Cloudflare, Zhipu, Moonshot, MiniMax — behind a single /v1/chat/completions endpoint. Server: - Express + SQLite, per-provider adapters with streaming and non-streaming support, automatic fallover on 429/5xx, per-key RPM/RPD/TPM/TPD tracking, sticky sessions for multi-turn, AES-256-GCM encrypted key storage, unified bearer-token auth, periodic health checks. Client: - React + Vite + shadcn/ui admin dashboard: keys, fallback chain (drag to reorder, color-coded per-provider monthly token budget), playground, analytics with per-provider breakdowns. Tooling: - GitHub Actions CI (server tests + client build), MIT license, README with provider-by-provider ToS review. For personal experimentation, not production.
parents
Showing
.env.example
0 → 100644
.github/workflows/ci.yml
0 → 100644
.gitignore
0 → 100644
LICENSE
0 → 100644
README.md
0 → 100644
client/.gitignore
0 → 100644
client/README.md
0 → 100644
client/components.json
0 → 100644
client/eslint.config.js
0 → 100644
client/index.html
0 → 100644
client/package.json
0 → 100644
client/public/favicon.svg
0 → 100644
client/public/icons.svg
0 → 100644
client/src/App.tsx
0 → 100644
client/src/assets/vite.svg
0 → 100644
client/src/index.css
0 → 100644
client/src/lib/api.ts
0 → 100644
client/src/lib/utils.ts
0 → 100644
client/src/main.tsx
0 → 100644
client/tsconfig.app.json
0 → 100644
client/tsconfig.json
0 → 100644
client/tsconfig.node.json
0 → 100644
client/vite.config.ts
0 → 100644
free-ai-apis.pdf
0 → 100644
File added
free-ai-apis.typ
0 → 100644
package-lock.json
0 → 100644
This source diff could not be displayed because it is too large. You can view the blob instead.
package.json
0 → 100644
| { | ||
| "name": "freellmapi", | ||
| "private": true, | ||
| "workspaces": [ | ||
| "shared", | ||
| "server", | ||
| "client" | ||
| ], | ||
| "scripts": { | ||
| "dev": "concurrently \"npm run dev -w server\" \"npm run dev -w client\"", | ||
| "test": "npm run test -w server && npm run test -w client", | ||
| "build": "npm run build -w server && npm run build -w client", | ||
| "build:server": "npm run build -w server" | ||
| }, | ||
| "devDependencies": { | ||
| "concurrently": "^9.1.2" | ||
| } | ||
| } |
repo-assets/analytics.png
0 → 100644
280 KB
395 KB
repo-assets/keys.png
0 → 100644
275 KB
repo-assets/playground.png
0 → 100644
214 KB
server/package.json
0 → 100644
server/src/app.ts
0 → 100644
server/src/db/index.ts
0 → 100644
server/src/index.ts
0 → 100644
server/src/lib/crypto.ts
0 → 100644
server/src/providers/base.ts
0 → 100644
server/src/providers/groq.ts
0 → 100644
server/src/routes/health.ts
0 → 100644
server/src/routes/keys.ts
0 → 100644
server/src/routes/models.ts
0 → 100644
server/src/routes/proxy.ts
0 → 100644
server/tsconfig.json
0 → 100644
server/vitest.config.ts
0 → 100644
shared/package.json
0 → 100644
shared/types.ts
0 → 100644