API de Busqueda

Busqueda de texto completo en todas las skills.

Buscar Skills

GET /api/v1/skills/search

Parametros

| Parametro | Tipo | Descripcion | |-----------|------|-------------| | q | string | Consulta de busqueda (requerido) | | page | number | Numero de pagina (default: 1) | | limit | number | Items por pagina (default: 20) | | category | string | Filtrar por categoria | | platform | string | Filtrar por plataforma | | minStars | number | Conteo minimo de estrellas | | hasIndex | boolean | Tiene marketplace.json |

Ejemplo de Solicitud

bash
curl "https://skillsmp.com/api/v1/skills/search?q=react+typescript&category=frontend&minStars=100"

Ejemplo de Respuesta

json
{
  "data": [
    {
      "id": "456",
      "owner": "community",
      "repo": "react-typescript-guide",
      "name": "React TypeScript Guide",
      "description": "Type-safe React development patterns",
      "stars": 890,
      "score": 15.7,
      "highlights": {
        "name": "<mark>React</mark> <mark>TypeScript</mark> Guide",
        "description": "Type-safe <mark>React</mark> development patterns"
      }
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 45,
    "totalPages": 3
  },
  "meta": {
    "query": "react typescript",
    "took": 23
  }
}

Sintaxis de Busqueda

Busqueda Basica

react components

Busca estos terminos en todos los campos de texto.

Frase Exacta

"react hooks"

Coincide con la frase exacta.

Especifico por Campo

name:react description:hooks

Busca en campos especificos.

Exclusion

react -class

Excluye terminos con el signo menos.

Comodines

react*

Coincidencia por prefijo.

Consejos de Busqueda

Consultas Efectivas

Buenas:

  • react hooks state management - Terminos especificos
  • "code review" security - Frase + termino
  • typescript name:react - Especifico por campo

Menos Efectivas:

  • the best react skill - Palabras vacias ignoradas
  • r - Muy corto
  • * - Muy amplio

Puntuacion de Relevancia

Los resultados se ordenan por:

  1. Coincidencia exacta - Coincidencias de termino completo
  2. Peso de campo - Nombre > Descripcion > Contenido
  3. Popularidad - Impulso por conteo de estrellas
  4. Frescura - Impulso por actualizaciones recientes

Autocompletado

GET /api/v1/skills/autocomplete

Parametros

| Parametro | Tipo | Descripcion | |-----------|------|-------------| | q | string | Consulta parcial | | limit | number | Maximo de sugerencias (default: 5) |

Ejemplo de Solicitud

bash
curl "https://skillsmp.com/api/v1/skills/autocomplete?q=rea"

Ejemplo de Respuesta

json
{
  "data": [
    {
      "text": "react",
      "count": 89
    },
    {
      "text": "react hooks",
      "count": 34
    },
    {
      "text": "react typescript",
      "count": 28
    }
  ]
}

Manejo de Errores

| Codigo | Descripcion | |------|-------------| | INVALID_QUERY | La consulta esta vacia o es muy corta | | QUERY_TOO_LONG | La consulta excede 200 caracteres | | INVALID_SYNTAX | Sintaxis de busqueda malformada |