Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
48 changes: 48 additions & 0 deletions apps/cortigpt-monorepo/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
node_modules
.turbo
.mastra

# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.*
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/versions

# testing
/coverage

# next.js
/.next/
/out/

# production
/build

# misc
.DS_Store
*.pem

# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*

# env files (can opt-in for committing if needed)
.env*
.next
# vercel
.vercel

# typescript
*.tsbuildinfo
next-env.d.ts
.vscode/settings.json

sync-to-community-projects.js
142 changes: 142 additions & 0 deletions apps/cortigpt-monorepo/.oxlintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
{
"plugins": [
"unicorn",
"typescript",
"oxc"
],
"categories": {},
"rules": {
"for-direction": "warn",
"no-async-promise-executor": "warn",
"no-caller": "warn",
"no-class-assign": "warn",
"no-compare-neg-zero": "warn",
"no-cond-assign": "warn",
"no-const-assign": "warn",
"no-constant-binary-expression": "warn",
"no-constant-condition": "warn",
"no-control-regex": "warn",
"no-debugger": "warn",
"no-delete-var": "warn",
"no-dupe-class-members": "warn",
"no-dupe-else-if": "warn",
"no-dupe-keys": "warn",
"no-duplicate-case": "warn",
"no-empty-character-class": "warn",
"no-empty-pattern": "warn",
"no-empty-static-block": "warn",
"no-eval": "warn",
"no-ex-assign": "warn",
"no-extra-boolean-cast": "warn",
"no-func-assign": "warn",
"no-global-assign": "warn",
"no-import-assign": "warn",
"no-invalid-regexp": "warn",
"no-irregular-whitespace": "warn",
"no-loss-of-precision": "warn",
"no-new-native-nonconstructor": "warn",
"no-nonoctal-decimal-escape": "warn",
"no-obj-calls": "warn",
"no-self-assign": "warn",
"no-setter-return": "warn",
"no-shadow-restricted-names": "warn",
"no-sparse-arrays": "warn",
"no-this-before-super": "warn",
"no-unassigned-vars": "warn",
"no-unsafe-finally": "warn",
"no-unsafe-negation": "warn",
"no-unsafe-optional-chaining": "warn",
"no-unused-labels": "warn",
"no-unused-private-class-members": "warn",
"no-unused-vars": "warn",
"no-useless-backreference": "warn",
"no-useless-catch": "warn",
"no-useless-escape": "warn",
"no-useless-rename": "warn",
"no-with": "warn",
"require-yield": "warn",
"use-isnan": "warn",
"valid-typeof": "warn",
"oxc/bad-array-method-on-arguments": "warn",
"oxc/bad-char-at-comparison": "warn",
"oxc/bad-comparison-sequence": "warn",
"oxc/bad-min-max-func": "warn",
"oxc/bad-object-literal-comparison": "warn",
"oxc/bad-replace-all-arg": "warn",
"oxc/const-comparisons": "warn",
"oxc/double-comparisons": "warn",
"oxc/erasing-op": "warn",
"oxc/missing-throw": "warn",
"oxc/number-arg-out-of-range": "warn",
"oxc/only-used-in-recursion": "warn",
"oxc/uninvoked-array-callback": "warn",
"typescript/await-thenable": "warn",
"typescript/no-array-delete": "warn",
"typescript/no-base-to-string": "warn",
"typescript/no-confusing-void-expression": "warn",
"typescript/no-duplicate-enum-values": "warn",
"typescript/no-duplicate-type-constituents": "warn",
"typescript/no-extra-non-null-assertion": "warn",
"typescript/no-floating-promises": "warn",
"typescript/no-for-in-array": "warn",
"typescript/no-implied-eval": "warn",
"typescript/no-meaningless-void-operator": "warn",
"typescript/no-misused-new": "warn",
"typescript/no-misused-spread": "warn",
"typescript/no-non-null-asserted-optional-chain": "warn",
"typescript/no-redundant-type-constituents": "warn",
"typescript/no-this-alias": "warn",
"typescript/no-unnecessary-parameter-property-assignment": "warn",
"typescript/no-unsafe-declaration-merging": "warn",
"typescript/no-unsafe-unary-minus": "warn",
"typescript/no-useless-empty-export": "warn",
"typescript/no-wrapper-object-types": "warn",
"typescript/prefer-as-const": "warn",
"typescript/require-array-sort-compare": "warn",
"typescript/restrict-template-expressions": "warn",
"typescript/triple-slash-reference": "warn",
"typescript/unbound-method": "warn",
"unicorn/no-await-in-promise-methods": "warn",
"unicorn/no-empty-file": "warn",
"unicorn/no-invalid-fetch-options": "warn",
"unicorn/no-invalid-remove-event-listener": "warn",
"unicorn/no-new-array": "warn",
"unicorn/no-single-promise-in-promise-methods": "warn",
"unicorn/no-thenable": "warn",
"unicorn/no-unnecessary-await": "warn",
"unicorn/no-useless-fallback-in-spread": "warn",
"unicorn/no-useless-length-check": "warn",
"unicorn/no-useless-spread": "warn",
"unicorn/prefer-set-size": "warn",
"unicorn/prefer-string-starts-ends-with": "warn"
},
"settings": {
"jsx-a11y": {
"polymorphicPropName": null,
"components": {},
"attributes": {}
},
"next": {
"rootDir": []
},
"react": {
"formComponents": [],
"linkComponents": []
},
"jsdoc": {
"ignorePrivate": false,
"ignoreInternal": false,
"ignoreReplacesDocs": true,
"overrideReplacesDocs": true,
"augmentsExtendsReplacesDocs": false,
"implementsReplacesDocs": false,
"exemptDestructuredRootsFromChecks": false,
"tagNamePreference": {}
}
},
"env": {
"builtin": true
},
"globals": {},
"ignorePatterns": []
}
9 changes: 9 additions & 0 deletions apps/cortigpt-monorepo/.sync-metadata.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"sourceRepository": "https://github.com/Ezejaemmanuel/cortigpt-monorepo.git",
"lastSync": "2025-08-30T14:12:01.368Z",
"syncedBy": "HP",
"projectName": "cortigpt-monorepo",
"version": "2.0.0",
"syncTool": "Node.js",
"nodeVersion": "v22.14.0"
}
104 changes: 104 additions & 0 deletions apps/cortigpt-monorepo/COMMUNITY_README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
# CortiGPT - Decentralized AI Platform

> **A comprehensive monorepo for decentralized AI chat and search capabilities powered by the Cortensor network**

## 🚀 Quick Overview

CortiGPT is a complete AI platform that combines blockchain technology with AI-powered search and chat capabilities. This project is part of the [Cortensor Community Projects](https://github.com/cortensor/community-projects).

### What's Included

- **🌐 Web Application** - Full-featured AI chat interface with Web3 integration
- **🔌 Browser Extension** - Cross-browser AI assistant with sidepanel interface
- **🖥️ API Server** - Scalable backend for AI services and chat management
- **🤖 AI Package** - Shared AI integration library with Mastra framework

## 🛠️ Tech Stack

- **Frontend**: Next.js 15, React 19, Tailwind CSS, shadcn/ui
- **AI Integration**: Cortensor OpenAI Provider, Mastra Framework
- **Blockchain**: Wagmi, Viem, RainbowKit
- **Development**: TypeScript, Turborepo, pnpm

## 🚀 Getting Started

### Prerequisites
- Node.js 18+
- pnpm 10.12.3+
- Git

### Installation

1. **Clone and install dependencies**
```bash
git clone https://github.com/cortensor/community-projects.git
cd community-projects/apps/cortigpt-monorepo
pnpm install
```

2. **Set up environment variables**
```bash
# Copy environment files for each app
cp apps/web/.env.example apps/web/.env.local
cp apps/extension/.env.example apps/extension/.env.local
cp apps/server/.env.example apps/server/.env.local
```

3. **Configure your API keys**
- Get your Cortensor API key from [Cortensor Network](https://cortensor.network)
- Get Tavily API key for web search
- Set up WalletConnect project ID for Web3 features

4. **Start development**
```bash
pnpm dev
```

## 🌐 Live Demo

- **Website**: [cortigpt.jatique.dev](https://cortigpt.jatique.dev)
- **Original Repository**: [github.com/Ezejaemmanuel/cortigpt-monorepo](https://github.com/Ezejaemmanuel/cortigpt-monorepo)

## 📱 Applications

| App | Port | Description |
|-----|------|-------------|
| Web App | 3001 | Main web interface with AI chat |
| API Server | 3002 | Backend API for AI services |
| Extension | - | Browser extension (build and load) |

## 🔑 Key Features

- **🤖 Decentralized AI**: Powered by Cortensor network for verifiable intelligence
- **🔗 Web3 Integration**: Full blockchain wallet support
- **🧠 AI Agents**: Intelligent chat assistants with context awareness
- **🌐 Web Search**: Real-time information retrieval
- **📱 Cross-Platform**: Web app and browser extension
- **🎨 Modern UI**: Beautiful, responsive design

## 📚 Documentation

For detailed documentation, setup instructions, and API reference, see the main [README.md](./README.md) file.

## 🤝 Contributing

This project is actively maintained. For contributions:

1. Check the [original repository](https://github.com/Ezejaemmanuel/cortigpt-monorepo) for the latest updates
2. Follow the contribution guidelines in the main README
3. Test your changes across all applications

## 📄 License

MIT License - see [LICENSE](./LICENSE) for details.

## 🔗 Links

- **Original Repository**: [Ezejaemmanuel/cortigpt-monorepo](https://github.com/Ezejaemmanuel/cortigpt-monorepo)
- **Cortensor Network**: [cortensor.network](https://cortensor.network)
- **Documentation**: [docs.cortensor.network](https://docs.cortensor.network)
- **Community Projects**: [cortensor/community-projects](https://github.com/cortensor/community-projects)

---

*This project is part of the Cortensor community ecosystem, bringing decentralized AI to everyone.*
32 changes: 32 additions & 0 deletions apps/cortigpt-monorepo/PROJECTS_SAMPLE.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Sample PROJECTS.yml entry for CortiGPT Monorepo
# Add this entry to the main PROJECTS.yml file in cortensor/community-projects

- name: cortigpt-monorepo
category: apps
owner: "@ezejaemmanuel" # Replace with your GitHub username
collaborators: ["@ezejaemmanuel"]
status: active
created: 2025-08-18 # Replace with actual date
version: v1.0.0
tags: [monorepo, nextjs, react, ai-chat, web3, browser-extension, api-server, cortensor, full-stack]
description: "Complete CortiGPT ecosystem monorepo - decentralized AI platform with web app, browser extension, API server, and AI package. Features modern React 19, Next.js 15, Web3 integration, and comprehensive AI chat capabilities."
repository: "https://github.com/ezejaemmanuel/cortigpt-monorepo" # Replace with your repo URL
demo: "https://cortigpt.jatique.dev" # Replace with your demo URL if available
tech_stack: [nextjs, react, typescript, tailwindcss, wxt, wagmi, viem, cortensor, turborepo, pnpm]
components:
- name: "Web Application"
path: "apps/web"
description: "Modern web interface with AI chat and Web3 integration"
port: 3001
- name: "Browser Extension"
path: "apps/extension"
port: 3000
description: "Cross-browser extension with sidepanel AI assistant"
browsers: [chrome, firefox, edge, safari]
- name: "API Server"
path: "apps/server"
description: "RESTful API server for AI interactions"
port: 3002
- name: "AI Package"
path: "packages/ai"
description: "Shared AI integration and agent management library"
Loading