chris12x1/cyberbrief
GitHub: chris12x1/cyberbrief
Stars: 0 | Forks: 0
# 🔐 CyberBrief




## 📸 Features
- 🔴 **Live threat feed** — fetches real cybersecurity news from the last 48 hours
- ⚡ **AI TL;DR** — every story summarized in 1-2 sentences by Gemini 2.5
- 🎯 **Severity ratings** — Critical / High / Medium / Low / Info color coding
- 🗂️ **Category filters** — Vulnerabilities, Data Breaches, Malware, Nation-State, Zero-Day
- 🌐 **Grounded search** — powered by Google Search via Gemini's grounding tool
- 🎨 **Hacker aesthetic** — dark UI built for security professionals
## 🚀 Live Demo
[cyberbrief.vercel.app](https://cyberbrief.vercel.app)
## 🛠️ Tech Stack
| Layer | Tech |
|-------|------|
| Framework | Next.js 14 (App Router) |
| AI Model | Gemini 2.5 Flash |
| Search | Google Search Grounding |
| Deployment | Vercel |
| Styling | Inline styles + Google Fonts |
## ⚙️ Local Setup
### 1. Clone the repo
git clone https://github.com/chris12x1/cyberbrief.git
cd cyberbrief
### 2. Install dependencies
npm install
### 3. Add your Gemini API key
cp .env.example .env.local
Open `.env.local` and paste your key from [aistudio.google.com/apikey](https://aistudio.google.com/apikey)
GEMINI_API_KEY=your_key_here
### 4. Run locally
npm run dev
Open [http://localhost:3000](http://localhost:3000)
## 🌍 Deploy to Vercel
[](https://vercel.com/new/clone?repository-url=https://github.com/chris12x1/cyberbrief)
1. Click the button above or import the repo at [vercel.com](https://vercel.com)
2. Add environment variable: `GEMINI_API_KEY`
3. Deploy ✅
## 📁 Project Structure
cyberbrief/
├── app/
│ ├── about/
│ │ └── page.jsx
│ ├── api/
│ │ ├── create-checkout/
│ │ │ └── route.js
│ │ ├── news/
│ │ │ └── route.js # Backend — Gemini API call (key stays secret)
│ │ ├── refresh-status/
│ │ │ └── route.js
│ │ ├── setup-db/
│ │ │ └── route.js
│ │ ├── user-status/
│ │ │ └── route.js
│ │ └── webhook/
│ │ └── route.js
│ ├── components/
│ │ └── NewsCard.jsx # Expandable article card
│ ├── contact/
│ │ └── page.jsx
│ ├── lib/
│ │ └── db.js
│ ├── success/
│ │ └── page.jsx
│ ├── globals.css # Global styles + animations
│ ├── layout.jsx # Root layout
│ └── page.jsx # Main dashboard UI
├── .env.example # Environment variable template
├── .gitignore
├── LICENSE
├── README.md
├── middleware.js
├── next.config.js
├── package-lock.json
├── package.json
└── tailwind.config.js
## 🔑 Environment Variables
| Variable | Description | Where to get it |
|----------|-------------|-----------------|
| `GEMINI_API_KEY` | Google Gemini API key | [aistudio.google.com/apikey](https://aistudio.google.com/apikey) |
## 📜 License
MIT — free to use, modify, and deploy.
Built by [Christopher Diaz](https://github.com/chris12x1) · Powered by [Google Gemini](https://deepmind.google/technologies/gemini/)
标签:自定义脚本