{"id":50799935,"url":"https://github.com/domhhv/smartext","last_synced_at":"2026-06-12T18:33:57.671Z","repository":{"id":315895790,"uuid":"1060928931","full_name":"domhhv/smartext","owner":"domhhv","description":"⌨️ Advanced text editor with AI tool integration (BYOK) - enables contextual content generation, real-time formatting, and intelligent document manipulation through structured LLM commands","archived":false,"fork":false,"pushed_at":"2026-05-31T21:11:35.000Z","size":1769,"stargazers_count":4,"open_issues_count":2,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-31T23:10:38.003Z","etag":null,"topics":["ai","assistant","editor","lexical","nextjs","openai","posthog","radix-ui","react","sentry","shadcn-ui","supabase","tailwindcss","typescript","vercel"],"latest_commit_sha":null,"homepage":"https://textual.chat","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/domhhv.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-20T22:06:04.000Z","updated_at":"2026-05-31T21:11:36.000Z","dependencies_parsed_at":"2025-09-21T14:21:33.508Z","dependency_job_id":"149e72cb-ad3d-42ed-9031-a222a7c34c96","html_url":"https://github.com/domhhv/smartext","commit_stats":null,"previous_names":["domhhv/editor-assistant","domhhv/textual","domhhv/smartext"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/domhhv/smartext","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/domhhv%2Fsmartext","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/domhhv%2Fsmartext/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/domhhv%2Fsmartext/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/domhhv%2Fsmartext/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/domhhv","download_url":"https://codeload.github.com/domhhv/smartext/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/domhhv%2Fsmartext/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34258368,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-12T02:00:06.859Z","response_time":109,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","assistant","editor","lexical","nextjs","openai","posthog","radix-ui","react","sentry","shadcn-ui","supabase","tailwindcss","typescript","vercel"],"created_at":"2026-06-12T18:33:56.875Z","updated_at":"2026-06-12T18:33:57.663Z","avatar_url":"https://github.com/domhhv.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Smartext\n\n![CodeRabbit Pull Request Reviews](https://img.shields.io/coderabbit/prs/github/domhhv/smartext?utm_source=oss\u0026utm_medium=github\u0026utm_campaign=domhhv%2Fsmartext\u0026labelColor=171717\u0026color=FF570A\u0026link=https%3A%2F%2Fcoderabbit.ai\u0026label=CodeRabbit+Reviews)\n\n**An AI-powered rich text editor that transforms how you write and edit content.**\n\nSmartext merges a high-quality rich text editor with OpenAI's GPT and Anthropic's Claude models to offer intelligent writing help. Unlike standard AI writing tools that produce full documents, this app emphasizes clear, contextual editing within your current content.\n\n**[Try it live at smartext.app](https://smartext.app)**\n\n## Features\n\n### Intelligent Content Editing\n\n- **Contextual AI Commands**: Ask the AI to edit specific paragraphs, add content at exact positions, or format selections.\n- **Real-time Collaboration**: Chat with AI while maintaining full control over your document.\n- **Tool-based Precision**: AI uses structured commands to make specific changes instead of redoing everything.\n\n### Professional Writing Experience\n\n- **Rich Text Editor**: Full-featured editor with markdown support, tables, lists, and formatting.\n- **Split-pane Interface**: Work with your document and the AI assistant side-by-side.\n- **Dark/Light Themes**: Comfortable writing in any setting.\n- **Distraction-free**: Clean, modern interface that keeps you focused on your content.\n\n### Developer-friendly Architecture\n\n- **Modern Stack**: Built with Next.js 16, Lexical editor, and Vercel AI SDK.\n- **Tool Calling**: Advanced AI integration using structured commands.\n- **Type-safe**: Fully implemented in TypeScript with thorough linting.\n- **Performance-first**: Uses Turbopack for fast development.\n\n## Why This Approach is Promising\n\n### Beyond Simple AI Writing\n\nMost AI writing tools either:\n\n- Generate entire documents from scratch, losing your voice and style.\n- Provide general suggestions that lack understanding of context.\n\nSmartext takes a different approach:\n\n- **Precision Editing**: Make specific changes to exact locations in your text.\n- **Contextual Understanding**: AI sees your entire document for better suggestions.\n- **Incremental Improvement**: Improve your existing content instead of replacing it.\n- **Collaborative Workflow**: You remain in control while AI provides targeted help.\n\n### Technical Innovation\n\n- **Structured AI Commands**: Uses tool calling for precise, reliable text changes.\n- **Real-time Streaming**: View AI responses and changes as they occur.\n- **State Synchronization**: The editor and chat interface stay perfectly in sync.\n- **Extensible Architecture**: Easy to add new AI capabilities and editor features.\n\n## What's Coming Next\n\n### Enhanced AI Capabilities\n\n- **Multi-model Support**: Integration with Claude, Gemini, and other leading AI models.\n- **Specialized Writing Modes**: Academic writing, technical documentation, and creative writing assistance.\n- **Research Integration**: AI that can fact-check, add citations, and retrieve relevant information.\n- **Style Consistency**: AI that learns and maintains your writing style across documents.\n\n### Advanced Editor Features\n\n- **Collaborative Editing**: Real-time editing with AI support for teams.\n- **Version History**: Track changes with AI-powered change summaries.\n- **Template System**: Smart templates that adjust to your content and industry.\n- **Export Options**: Professional formatting for PDF, Word, and publishing platforms.\n\n### Workflow Integration\n\n- **API Access**: Programmatic access for integrating AI editing into other tools.\n- **Plugin System**: Flexible architecture for custom AI commands and editor plugins.\n- **Cloud Sync**: Document synchronization across devices, preserving AI context.\n- **Automation**: Scheduled AI reviews, content optimization, and publication workflows.\n\n### Enterprise Features\n\n- **Team Workspaces**: Shared AI assistants trained on company style guides.\n- **Projects**: Organize documents and AI interactions by project or client.\n- **Role-based Access**: Set permissions and roles for collaborative teams.\n- **Content Compliance**: AI that makes sure content meets industry standards and guidelines.\n- **Analytics**: Insights into writing productivity and AI support effectiveness.\n- **Custom Models**: Tailored AI models for specific industries or use cases.\n\n## Quick Start\n\n### Prerequisites\n\n- Node.js 22.22.3 or higher\n- npm 10.9.8 or higher\n- Supabase CLI\n- Docker for running local Supabase instance\n- Clerk development keys for local authentication\n\n### Setup\n\n1. **Clone the repository**\n\n   ```bash\n   git clone https://github.com/domhhv/smartext.git\n   cd smartext\n   ```\n\n2. **Install dependencies**\n\n   ```bash\n   npm install\n   ```\n\n3. **Configure environment**\n\n   ```bash\n   cp .env.example .env.local\n   # Fill in required environment variables in .env.local\n   ```\n\n4. **Boot local Supabase instance**\n\n   [Install Supabase CLI](https://supabase.com/docs/guides/local-development/cli/getting-started?queryGroups=platform\u0026platform=macos), open Docker Desktop, and run:\n\n   ```bash\n   supabase start\n   ```\n\n5. **Start the development server**\n\n   ```bash\n   npm run dev\n   ```\n\n6. **Open the application**\n\n   Navigate to [http://localhost:3000](http://localhost:3000)\n\n## Development\n\n### Essential Commands\n\n```bash\nnpm run dev             # Start development server with Turbopack\nnpm run build           # Build for production\nnpm run typecheck       # TypeScript checking\nnpm run eslint:check    # Code linting\nnpm run eslint:fix      # Auto-fix linting issues\nnpm run prettier:check  # Code formatting check\nnpm run prettier:write  # Auto-format code\n```\n\n**Important**: Always run `npm run typecheck`, `npm run eslint:check`, and `npm run prettier:check` after making changes. These are part of the prebuild process and must pass for production builds.\n\n### Architecture Overview\n\n- **Frontend**: Next.js 16 with App Router and Turbopack.\n- **Editor**: Lexical 0.35.0 (Facebook's rich text editor framework).\n- **AI Integration**: Vercel AI SDK with GPT and Claude models and tool calling.\n- **Styling**: Tailwind CSS v4 with OKLCH color system.\n- **UI Components**: Radix UI primitives with shadcn/ui (New York style).\n\n### Key Features\n\n- **Tool Calling**: AI uses structured commands to manipulate text precisely.\n- **Real-time Streaming**: Live updates during AI processing.\n- **State Management**: Synchronized editor and chat state via React Context.\n- **Theme Support**: Complete dark/light mode implementation with next-themes.\n\n## Contributing\n\nContributions are welcome! This project showcases cutting-edge AI integration patterns and modern React architecture. If you're interested in AI, editor technology, or user experience, there are opportunities to contribute.\n\n### Areas for Contribution\n\n- **AI Commands**: New tool calling capabilities for text manipulation.\n- **Editor Plugins**: Enhanced rich text editing features.\n- **UI/UX**: Interface improvements and accessibility enhancements.\n- **Performance**: Optimization and caching improvements.\n- **Documentation**: Guides and examples for developers.\n\n### Development Guidelines\n\n- **Code Quality**: All PRs must pass TypeScript checking, ESLint, and Prettier.\n- **Commit Messages**: Follow conventional commit format (enforced by commitlint).\n- **Testing**: Ensure changes work in both light and dark themes.\n- **Documentation**: Update relevant documentation for new features.\n\n## License\n\nMIT License - see [LICENSE](https://github.com/domhhv/smartext/blob/main/LICENSE.md) file for details.\n\n## Issues\n\nFound a bug or have a feature request? Please [open an issue](https://github.com/domhhv/smartext/issues).\n\n---\n\n**Smartext represents the future of AI-powered writing tools: intelligent, precise, and designed to enhance rather than replace human creativity.**\n\nVisit [smartext.app](https://smartext.app) to experience it yourself.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdomhhv%2Fsmartext","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdomhhv%2Fsmartext","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdomhhv%2Fsmartext/lists"}