An open API service indexing awesome lists of open source software.

https://github.com/marco0antonio0/front-makeapi

Projeto consiste em um site de api de sistema para criacao de apis e gerenciamento de conteudos com persistencia de dados
https://github.com/marco0antonio0/front-makeapi

cms criador-de-apis firebase gestor-de-conteudo nextjs website

Last synced: 2 months ago
JSON representation

Projeto consiste em um site de api de sistema para criacao de apis e gerenciamento de conteudos com persistencia de dados

Awesome Lists containing this project

README

          

# 🚀 Make API — Front-end (Next.js) + API (NestJS)

Make API é um CMS simples e direto para criar endpoints REST e gerenciar conteúdo de sites e apps.
Este repositório descreve o front-end em Next.js que consome a API em NestJS.

---

## 💡 Ideia
Um **CMS leve para APIs**: você define coleções (ex.: `posts`, `produtos`, `faq`), cadastra itens e já tem **endpoints REST prontos** para usar em qualquer site/app. Sem dores de infra, com foco em velocidade.

## 🔎 O que ele é
- **Painel (Next.js):** interface para criar coleções e gerenciar itens.
- **API (NestJS):** expõe os dados em **rotas REST**, com autenticação via **cookie httpOnly**.
- Filosofia **plug-and-play**: do zero ao endpoint em poucos cliques.

## 🧭 Como usar
1. **Acesse o painel** e faça **login** (ou crie conta).
2. **Crie uma coleção** (ex.: `posts`) definindo os campos que você precisa.
3. **Cadastre itens** na coleção.
4. **Consuma os dados** pela API:

**Exemplo leitura pública:**s
```bash
GET https://sua-api.com/posts
```

**Exemplo no front:**
```ts
const res = await fetch("https://sua-api.com/posts")
const posts = await res.json()
```

**Se for protegido:**
1) faça login (o cookie é salvo automaticamente):
```ts
await fetch("/api/auth/login", {
method: "POST",
headers: { "Content-Type": "application/json" },
credentials: "include",
body: JSON.stringify({ email: "admin@makeapi.com", password: "admin123" }),
})
```
2) depois consuma normalmente (o navegador envia o cookie):
```ts
const res = await fetch("/api/me", { credentials: "include" })
const me = await res.json()
```