A Serverless Edge AI Workspace with Puter.js zero-key client engine, OpenRouter 100+ models, multi-modal vision, live sandboxed code execution, and cloud storage.
FreeChatium is a Next.js application that provides an interactive, accessible, and fast AI workspace. Powered by Puter.js and OpenRouter, it offers access to over 100 AI models (including Claude 3.5, GPT-4o, DeepSeek V3, and Mistral Large), robust sandboxed code execution, and seamless cloud storage capabilities.
- Node.js 20.x or higher
- pnpm 9.0.0 or higher
-
Clone the repository:
git clone https://github.com/BleckWolf25/FreeChatium.git cd FreeChatium -
Install dependencies:
pnpm install
-
Run the development server:
pnpm run dev
-
Open http://localhost:3000 with your browser to see the result.
pnpm dev- Start the Next.js development serverpnpm build- Compile the production application and export it as static filespnpm start- Start the production build locallypnpm lint- Run ESLint on the codebasepnpm lint:fix- Run ESLint and automatically fix issuespnpm test- Run unit and integration tests using Vitestpnpm test:e2e- Run end-to-end integration tests using Playwrightpnpm format- Run Prettier to format the codebasepnpm format:check- Check formatting without making modificationspnpm typecheck- Run TypeScript compiler checkpnpm validate- Run all checks, linting, formatting, and tests
FreeChatium/
├── .next/ # Next.js build output (generated)
├── public/ # Static public assets (icons, PWA manifest, etc.)
├── scripts/ # Utility and automation scripts (e.g., generate-icons)
├── app/ # App Router layout, pages, and metadata
├── components/ # React UI components (shadcn/ui style, providers, etc.)
├── lib/ # Shared library functions & utilities
├── package.json
├── tsconfig.json # TypeScript configuration
├── tailwind.config.ts # Tailwind CSS configuration
└── eslint.config.ts # ESLint configurationThe project uses Vitest for unit/integration tests and Playwright for browser e2e testing.
pnpm testpnpm test:e2eContributions are welcome! Please read our Contributing Guidelines before submitting a pull request.
By participating in this project, you agree to abide by our Code of Conduct.
This project is licensed under the MIT License - see the LICENSE file for details.
For security concerns, please review our Security Policy.
For questions or support, please open an issue on GitHub or contact joao.coutinho08@gmail.com.
Built with ❤️ using Next.js, React, Tailwind CSS, shadcn/ui, TypeScript, Puter.js, and OpenRouter