Perpustakaan API RESTful berperforma tinggi dengan desain minimalis "Hard-Edge".
Terinspirasi dari perjalanan sang penyihir pengembara, Elaina.
Elaina's API adalah solusi backend terintegrasi yang menyediakan berbagai layanan mulai dari Kecerdasan Buatan (Multi-Model AI), pencarian data anime melalui Anilist, hingga pengunduh media sosial. Projek ini dibangun dengan fokus pada latensi rendah, skalabilitas modular, dan estetika desain modern-jejepangan.
- Runtime: Node.js (Versi 16+ atau terbaru).
- Web Framework: Express.js (Fast & Minimalist).
- Database: Upstash Redis (Serverless database untuk analitik & tracking).
- Frontend: Tailwind CSS (Tanpa Next.js untuk menjaga kesederhanaan aset statis).
- Analytics: Chart.js (Visualisasi trafik real-time).
- AI Engine: Google Gemini, Cerebras SDK, & Groq Cloud.
- Scraper: Axios & Cheerio (Parsing data web yang stabil).
Pastikan Anda sudah menginstal Node.js dan Git di sistem Anda.
git clone https://github.com/alip-jmbd/elaina-api.git
cd elaina-apinpm installBuat file .env di folder utama dan lengkapi kredensial berikut:
# Koneksi Database (Upstash Redis)
REDIS_URL="rediss://default:xxxxxx@fit-griffon-21539.upstash.io:6379"
# API Keys AI
CEREBRAS_KEY="csk-xxxxxxxxxx"
GROQ_KEY="gsk_xxxxxxxxxx"
# Port Server
PORT=3000npm startAkses di browser: http://localhost:3000
Arsitektur projek ini dibuat sangat modular. Anda dapat menambah fitur baru tanpa harus menyentuh kode UI atau logika server utama.
Buat file baru, misal lib/downloader.js.
const axios = require('axios');
class MyDownloader {
async fetch(url) {
// Logika scraping atau pemanggilan API pihak ketiga
return { result: "Data dari " + url };
}
}
module.exports = new MyDownloader();Tambahkan modul Anda ke objek export agar dapat diakses secara global.
module.exports = {
// ... endpoint yang sudah ada
myDownloader: require('./downloader')
};Tambahkan objek konfigurasi ke dalam array list. Sidebar dan UI Docs akan otomatis terbuat.
{
category: "Download", // Nama kategori baru akan muncul otomatis di sidebar
name: "Video Downloader",
path: "/api/download/video",
method: "GET",
params: [
{ name: "url", required: true, placeholder: "https://..." }
],
handler: async (req, res) => {
const { url } = req.query;
if (!url) return res.status(400).json({ status: 400 });
try {
const result = await scrap.myDownloader.fetch(url);
res.json({ status: 200, creator: "elaina", data: result });
} catch (e) {
res.status(500).json({ status: 500, message: e.message });
}
}
}Projek ini menggunakan filosofi Hard-Edge Design:
- Border Tegas: Garis hitam solid 2px tanpa sudut melengkung (rounded).
- Shadow Tajam: Menggunakan bayangan keras untuk kesan brutal namun bersih.
- Grid Background: Pola kotak teknis yang memudar di tepian.
- Visual Responsif: Navigasi menimpa konten (overlay) untuk pengalaman seluler yang sempurna.
- Lead Developer: LippWangsaff / Alip
- Infrastructure: Upstash Redis
- Character Design: Wandering Witch: The Journey of Elaina (Majo no Tabitabi)