From e706ae83073bdca56286daae001fcff811d50ce8 Mon Sep 17 00:00:00 2001 From: Aidan Date: Sun, 7 Sep 2025 18:47:41 -0400 Subject: [PATCH] design/fix/clean: minor design tweaks and improvements, update ccusage, add Perplexity to /ai, ToolReviews -> FavoriteTools for flow --- app/ai/components/AIStack.tsx | 15 +++-- app/ai/components/FavoriteModels.tsx | 13 ++-- .../{ToolReviews.tsx => FavoriteTools.tsx} | 18 +++-- app/ai/components/TopPick.tsx | 18 ++--- app/ai/data.tsx | 18 ++++- app/ai/page.tsx | 5 +- public/data/cc.json | 65 +++++++++++++++++-- 7 files changed, 111 insertions(+), 41 deletions(-) rename app/ai/components/{ToolReviews.tsx => FavoriteTools.tsx} (77%) diff --git a/app/ai/components/AIStack.tsx b/app/ai/components/AIStack.tsx index 7bf51d5..7a62a05 100644 --- a/app/ai/components/AIStack.tsx +++ b/app/ai/components/AIStack.tsx @@ -1,4 +1,4 @@ -import { Bot } from 'lucide-react' +import { TbStack2 } from 'react-icons/tb' import Link from '@/components/objects/Link' import type { AITool } from '../types' @@ -27,10 +27,13 @@ export default function AIStack({ tools }: AIStackProps) { return (
-

- - My AI Stack -

+
+

+ + My AI Stack +

+

The AI tools I use as a part of my routine and workflow.

+
{tools.map((tool, index) => (
@@ -54,7 +57,7 @@ export default function AIStack({ tools }: AIStackProps) { {tool.link && ( - + View → )} diff --git a/app/ai/components/FavoriteModels.tsx b/app/ai/components/FavoriteModels.tsx index 12ea967..f5b812f 100644 --- a/app/ai/components/FavoriteModels.tsx +++ b/app/ai/components/FavoriteModels.tsx @@ -1,4 +1,4 @@ -import { Star } from 'lucide-react' +import { Brain, Star } from 'lucide-react' import type { FavoriteModel } from '../types' interface FavoriteModelsProps { @@ -8,10 +8,13 @@ interface FavoriteModelsProps { export default function FavoriteModels({ models }: FavoriteModelsProps) { return (
-

- - Favorite Models -

+
+

+ + Favorite Models +

+

Based on personal preference

+
{models.map((model, index) => (
diff --git a/app/ai/components/ToolReviews.tsx b/app/ai/components/FavoriteTools.tsx similarity index 77% rename from app/ai/components/ToolReviews.tsx rename to app/ai/components/FavoriteTools.tsx index 88d77a5..d04fe03 100644 --- a/app/ai/components/ToolReviews.tsx +++ b/app/ai/components/FavoriteTools.tsx @@ -1,17 +1,21 @@ -import { MessageSquare, Star } from 'lucide-react' +import { Star } from 'lucide-react' +import { TbTool } from 'react-icons/tb' import type { AIReview } from '../types' -interface ToolReviewsProps { +interface FavoriteToolsProps { reviews: AIReview[] } -export default function ToolReviews({ reviews }: ToolReviewsProps) { +export default function FavoriteTools({ reviews }: FavoriteToolsProps) { return (
-

- - Tool Reviews -

+
+

+ + Favorite Tools +

+

Based on personal preference

+
{reviews.map((review, index) => (
diff --git a/app/ai/components/TopPick.tsx b/app/ai/components/TopPick.tsx index 2faccd3..e7e251b 100644 --- a/app/ai/components/TopPick.tsx +++ b/app/ai/components/TopPick.tsx @@ -6,8 +6,8 @@ export default function TopPick() { return (

- - Top Pick of 2025 + + Top Pick of 2025

@@ -18,7 +18,7 @@ export default function TopPick() {

by Anthropic

- View My Usage + My Usage
@@ -30,15 +30,9 @@ export default function TopPick() {

- Claude Code - Best Tool Calling - High Value in Max Plan - Quite Fast Interface -
-
- - Top Overall Pick - + Top-Tier Tool Calling + Max Plan is High Value + Fast Interface
diff --git a/app/ai/data.tsx b/app/ai/data.tsx index 1e121be..d7c395c 100644 --- a/app/ai/data.tsx +++ b/app/ai/data.tsx @@ -1,7 +1,8 @@ import { SiClaude, SiGithubcopilot, - SiGooglegemini + SiGooglegemini, + SiPerplexity } from 'react-icons/si' import type { AITool, FavoriteModel, AIReview } from './types' @@ -58,6 +59,13 @@ export const aiTools: AITool[] = [ status: "occasional", link: "https://chat.qwen.ai/" }, + { + "name": "Perplexity", + icon: SiPerplexity, + description: "Reliable for more in-depth searching", + status: "occasional", + link: "https://perplexity.ai/" + } ] export const favoriteModels: FavoriteModel[] = [ @@ -70,7 +78,13 @@ export const favoriteModels: FavoriteModel[] = [ { name: "Claude 4.1 Opus", provider: "Anthropic", - review: "Amazing planner, useful for Plan Mode in Claude Code. Useful in code generation too.", + review: "Amazing planner, useful for Plan Mode in Claude Code. Useful in code generation, albeit at a higher cost.", + rating: 5 + }, + { + name: "Qwen3-Max-Preview", + provider: "Alibaba", + review: "A new personality for Qwen3 at a larger size, amazing for use in chats. I'm not so happy that it's closed source (for now).", rating: 5 }, { diff --git a/app/ai/page.tsx b/app/ai/page.tsx index 077b779..ef9a604 100644 --- a/app/ai/page.tsx +++ b/app/ai/page.tsx @@ -6,11 +6,10 @@ import { Brain } from 'lucide-react' import TopPick from './components/TopPick' import AIStack from './components/AIStack' import FavoriteModels from './components/FavoriteModels' -import ToolReviews from './components/ToolReviews' +import FavoriteTools from './components/FavoriteTools' import { aiTools, favoriteModels, aiReviews } from './data' export default function AI() { - return (
@@ -31,7 +30,7 @@ export default function AI() {
- +