Skip to content

Referencia de API ​

mineproj genera una API estática similar a REST bajo dist/api/v1/. Cada endpoint sirve JSON estático — no se requiere backend.

Envoltorio ​

Cada respuesta sigue esta estructura:

json
{
  "apiVersion": "v1",
  "kind": "ProjectList",
  "generatedAt": "2026-01-01T00:00:00.000Z",
  "schemaVersion": 1,
  "data": { ... }
}

Endpoints ​

EndpointKindDescripción
/api/v1/projects.jsonProjectListLista completa de proyectos
/api/v1/projects/<slug>.jsonProjectDetalle de un proyecto individual
/api/v1/tags.jsonTagListTodas las etiquetas con recuentos
/api/v1/categories.jsonCategoryListTodas las categorías
/api/v1/collections.jsonCollectionListTodas las colecciones
/api/v1/profile.jsonProfileDatos del perfil
/api/v1/stats.jsonStatsEstadísticas agregadas
/api/v1/search.jsonSearchIndexÍndice MiniSearch
/api/v1/feed.jsonFeedElementos del feed
/api/v1/manifest.jsonManifestLista de endpoints auto-descriptiva

Parámetros de Consulta (modo desarrollo) ​

ParámetroEjemploDescripción
q?q=webBúsqueda de texto completo
tag?tag=web,gameFiltrar por etiquetas (Y)
category?category=webFiltrar por categoría
status?status=releasedFiltrar por estado
sort?sort=createdAt:descCampo y dirección de ordenación
page?page=2Número de página
pageSize?pageSize=20Elementos por página
lang?lang=enIdioma para datos localizados

SDK de Cliente ​

ts
import { createApiClient } from '@mineproj/client';

const api = createApiClient({ baseUrl: 'https://example.com' });
const projects = await api.getProjects();
const project = await api.getProject('my-project');
const results = await api.search('web');

Hooks de React:

ts
import { useProjects, useProject, useTags, useSearch } from '@mineproj/client';

function MyComponent() {
  const { data, loading } = useProjects({ tag: 'web' });
  return <div>{loading ? 'Cargando...' : data.length} proyectos</div>;
}

Released under the Apache-2.0 License.