Skip to main content
Glama
frameworks.json15 kB
{ "frameworks": [ { "id": "react", "name": "React", "language": "javascript", "type": "Frontend", "features": [ "Virtual DOM", "Hooks", "JSX" ] }, { "id": "vue", "name": "Vue.js", "language": "javascript", "type": "Frontend", "features": [ "Reactive", "Composition API", "SFC" ] }, { "id": "angular", "name": "Angular", "language": "typescript", "type": "Frontend", "features": [ "DI", "RxJS", "CLI" ] }, { "id": "svelte", "name": "Svelte", "language": "javascript", "type": "Frontend", "features": [ "Compiled", "No Virtual DOM" ] }, { "id": "nextjs", "name": "Next.js", "language": "javascript", "type": "Full-Stack", "features": [ "SSR", "SSG", "App Router" ] }, { "id": "nuxt", "name": "Nuxt", "language": "javascript", "type": "Full-Stack", "features": [ "SSR", "Vue-based", "Auto-imports" ] }, { "id": "astro", "name": "Astro", "language": "javascript", "type": "Full-Stack", "features": [ "Islands", "Zero JS by default" ] }, { "id": "solidjs", "name": "SolidJS", "language": "javascript", "type": "Frontend", "features": [ "Fine-grained Reactivity", "No Virtual DOM" ] }, { "id": "qwik", "name": "Qwik", "language": "typescript", "type": "Full-Stack", "features": [ "Resumable", "O(1) Loading" ] }, { "id": "lit", "name": "Lit", "language": "javascript", "type": "Frontend", "features": [ "Web Components", "Lightweight" ] }, { "id": "ember", "name": "Ember.js", "language": "javascript", "type": "Frontend", "features": [ "Convention over Config", "Ember Data" ] }, { "id": "alpine", "name": "Alpine.js", "language": "javascript", "type": "Frontend", "features": [ "Lightweight", "Declarative" ] }, { "id": "express", "name": "Express", "language": "javascript", "type": "Backend", "features": [ "Minimal", "Middleware", "REST" ] }, { "id": "fastify", "name": "Fastify", "language": "javascript", "type": "Backend", "features": [ "High Performance", "Schema Validation" ] }, { "id": "nestjs", "name": "NestJS", "language": "typescript", "type": "Backend", "features": [ "DI", "Modular", "TypeScript-first" ] }, { "id": "koa", "name": "Koa", "language": "javascript", "type": "Backend", "features": [ "Async/Await", "Minimal" ] }, { "id": "hapi", "name": "Hapi", "language": "javascript", "type": "Backend", "features": [ "Plugin System", "Config-centric" ] }, { "id": "django", "name": "Django", "language": "python", "type": "Backend", "features": [ "Batteries Included", "ORM", "Admin" ] }, { "id": "flask", "name": "Flask", "language": "python", "type": "Backend", "features": [ "Micro-framework", "Flexible" ] }, { "id": "fastapi", "name": "FastAPI", "language": "python", "type": "Backend", "features": [ "Async", "Type Hints", "OpenAPI" ] }, { "id": "starlette", "name": "Starlette", "language": "python", "type": "Backend", "features": [ "ASGI", "Lightweight" ] }, { "id": "rails", "name": "Ruby on Rails", "language": "ruby", "type": "Backend", "features": [ "Convention over Config", "ActiveRecord" ] }, { "id": "sinatra", "name": "Sinatra", "language": "ruby", "type": "Backend", "features": [ "Micro-framework", "DSL" ] }, { "id": "laravel", "name": "Laravel", "language": "php", "type": "Backend", "features": [ "Eloquent ORM", "Blade", "Artisan" ] }, { "id": "symfony", "name": "Symfony", "language": "php", "type": "Backend", "features": [ "Components", "Bundles", "Flex" ] }, { "id": "cakephp", "name": "CakePHP", "language": "php", "type": "Backend", "features": [ "MVC", "Scaffolding" ] }, { "id": "spring", "name": "Spring Boot", "language": "java", "type": "Backend", "features": [ "DI", "Auto-config", "Microservices" ] }, { "id": "quarkus", "name": "Quarkus", "language": "java", "type": "Backend", "features": [ "GraalVM Native", "Kubernetes-native" ] }, { "id": "micronaut", "name": "Micronaut", "language": "java", "type": "Backend", "features": [ "Compile-time DI", "Low Memory" ] }, { "id": "aspnet", "name": "ASP.NET Core", "language": "csharp", "type": "Backend", "features": [ "Cross-platform", "Blazor", "Minimal APIs" ] }, { "id": "blazor", "name": "Blazor", "language": "csharp", "type": "Full-Stack", "features": [ "WebAssembly", "Razor Components" ] }, { "id": "gin", "name": "Gin", "language": "go", "type": "Backend", "features": [ "Fast", "Middleware" ] }, { "id": "echo", "name": "Echo", "language": "go", "type": "Backend", "features": [ "High Performance", "Extensible" ] }, { "id": "fiber", "name": "Fiber", "language": "go", "type": "Backend", "features": [ "Express-inspired", "Fast" ] }, { "id": "chi", "name": "Chi", "language": "go", "type": "Backend", "features": [ "Lightweight", "idiomatic Go" ] }, { "id": "actix", "name": "Actix Web", "language": "rust", "type": "Backend", "features": [ "Fast", "Actor Model" ] }, { "id": "axum", "name": "Axum", "language": "rust", "type": "Backend", "features": [ "Tokio", "Tower", "Modular" ] }, { "id": "rocket", "name": "Rocket", "language": "rust", "type": "Backend", "features": [ "Type-safe", "Macros" ] }, { "id": "phoenix", "name": "Phoenix", "language": "elixir", "type": "Backend", "features": [ "LiveView", "Channels", "Real-time" ] }, { "id": "flutter", "name": "Flutter", "language": "dart", "type": "Mobile", "features": [ "Cross-platform", "Widgets", "Hot Reload" ] }, { "id": "reactnative", "name": "React Native", "language": "javascript", "type": "Mobile", "features": [ "Cross-platform", "Native Components" ] }, { "id": "swiftui", "name": "SwiftUI", "language": "swift", "type": "Mobile", "features": [ "Declarative", "Apple Native" ] }, { "id": "jetpackcompose", "name": "Jetpack Compose", "language": "kotlin", "type": "Mobile", "features": [ "Declarative", "Android Native" ] }, { "id": "hono", "name": "Hono", "language": "typescript", "type": "Backend", "features": [ "Edge-ready", "Fast", "Standards-based" ] }, { "id": "trpc", "name": "tRPC", "language": "typescript", "type": "Backend", "features": [ "End-to-end types", "No schemas", "Lightweight" ] }, { "id": "drizzle", "name": "Drizzle ORM", "language": "typescript", "type": "Backend", "features": [ "SQL-like", "Lightweight", "Zero dependencies" ] }, { "id": "prisma", "name": "Prisma", "language": "typescript", "type": "Backend", "features": [ "Type-safe", "Schema-first", "Migrations" ] }, { "id": "typeorm", "name": "TypeORM", "language": "typescript", "type": "Backend", "features": [ "Decorator-based", "Active Record", "Data Mapper" ] }, { "id": "supabase", "name": "Supabase", "language": "typescript", "type": "Full-Stack", "features": [ "Postgres", "Auth", "Realtime" ] }, { "id": "zustand", "name": "Zustand", "language": "typescript", "type": "Frontend", "features": [ "Minimal", "Hooks-based", "Unopinionated" ] }, { "id": "redux-toolkit", "name": "Redux Toolkit", "language": "typescript", "type": "Frontend", "features": [ "Standard", "Opinionated", "DevTools" ] }, { "id": "tanstack-query", "name": "TanStack Query", "language": "typescript", "type": "Frontend", "features": [ "Data Synchronization", "Caching", "Optimistic Updates" ] }, { "id": "jotai", "name": "Jotai", "language": "typescript", "type": "Frontend", "features": [ "Atomic", "Flexible", "Recoil-like" ] }, { "id": "jest", "name": "Jest", "language": "javascript", "type": "Testing", "features": [ "Runner", "Assertions", "Mocking" ] }, { "id": "vitest", "name": "Vitest", "language": "typescript", "type": "Testing", "features": [ "Vite-native", "Fast", "Jest-compatible" ] }, { "id": "playwright", "name": "Playwright", "language": "typescript", "type": "Testing", "features": [ "E2E", "Multi-browser", "Reliable" ] }, { "id": "msw", "name": "Mock Service Worker", "language": "typescript", "type": "Testing", "features": [ "Mocking", "Network-level", "Browser/Node" ] } ] }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/millsydotdev/Code-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server