FAST API es una API completa y eficiente construida con tecnologías modernas como Cloudflare, Hono, Bun, TypeScript, Tailwind y Redis. Este proyecto está diseñado para ser rápido, escalable y fácil de usar.
- Cloudflare: Proporciona seguridad y rendimiento a través de su red de entrega de contenido (CDN).
- Hono: Un framework web ligero y rápido para construir aplicaciones en TypeScript.
- Bun: Un entorno de ejecución de JavaScript y TypeScript que ofrece un rendimiento superior.
- TypeScript: Un superconjunto de JavaScript que añade tipado estático.
- Tailwind CSS: Un framework CSS de utilidad que permite un diseño rápido y responsivo.
- Redis: Una base de datos en memoria que se utiliza para el almacenamiento en caché y la gestión de sesiones.
Sigue estos pasos para instalar y configurar el proyecto en tu máquina local:
-
Clona el repositorio:
git clone https://github.com/tu_usuario/fast-api.git cd fast-api
-
Instala Bun (si no lo tienes instalado):
curl -fsSL https://bun.sh/install | bash
-
Instala las dependencias:
bun install
-
Configura Redis:
- Asegúrate de tener Redis instalado y en ejecución. Puedes instalarlo usando Docker:
docker run --name redis -d -p 6379:6379 redis
- Asegúrate de tener Redis instalado y en ejecución. Puedes instalarlo usando Docker:
-
Configura las variables de entorno:
- Crea un archivo
.env
en la raíz del proyecto y añade las siguientes variables:REDIS_URL=redis://localhost:6379
- Crea un archivo
Asegúrate de que las siguientes dependencias están incluidas en tu package.json
:
{
"dependencies": {
"hono": "^3.0.0",
"redis": "^4.0.0",
"tailwindcss": "^2.0.0"
},
"devDependencies": {
"typescript": "^4.0.0",
"bun-types": "^0.1.0"
}
Para utilizar Cloudflare, sigue estos pasos:
- Regístrate en Cloudflare.
- Añade tu dominio y configura los registros DNS.
- Configura las reglas de firewall y las configuraciones de rendimiento según tus necesidades.
Para crear rutas en Hono, puedes usar el siguiente ejemplo:
import { Hono } from 'hono';
const app = new Hono();
app.get('/', (c) => c.text('¡Hola, FAST API!'));
app.listen(3000);
Para interactuar con Redis, puedes usar el siguiente código:
import { createClient } from 'redis';
client.on('error', (err) => console.log('Redis Client Error', err));
async function connectRedis() {
await client.connect();
}
connectRedis();
Para configurar Tailwind CSS, sigue estos pasos:
-
Crea un archivo de configuración de Tailwind:
npx tailwindcss init
-
Configura tu archivo
tailwind.config.js
:module.exports = { content: ['./src/**/*.{html,js,ts}'], theme: { extend: {}, }, plugins: [], };
-
Importa Tailwind en tu archivo CSS:
@tailwind base; @tailwind components; @tailwind utilities;
Para ejecutar la API, utiliza el siguiente comando:
bun run start
Para deployar la API en Cloudflare, utiliza el siguiente comando:
bun add -D @opennextjs/cloudflare
Crear archivo wrangler.toml:
compatibility_date = "2024-11-08"
name = "fastapi"
[vars]
UPSTASH_REDIS_REST_TOKEN = ".................."
UPSTASH_REDIS_REST_URL = "................"
# wrangler.toml (wrangler v3.79.0^)
[observability]
enabled = true
head_sampling_rate = 1
Las contribuciones son bienvenidas. Si deseas contribuir, por favor sigue estos pasos:
- Haz un fork del repositorio.
- Crea una nueva rama (
git checkout -b feature/nueva-caracteristica
). - Realiza tus cambios y haz un commit (
git commit -m 'Añadir nueva característica'
). - Envía un pull request.
Este proyecto está bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.
Para más información, puedes contactarme en epsa@example.com.