This is a web application designed to browse, filter, sort, and manage free models available on OpenRouter. It allows users to easily select models and copy their IDs in various formats compatible with other tools. The application is built with Next.js and supports multiple languages (English and Chinese).
- Model Browsing: View a list of all free models from the OpenRouter API.
- Filtering: Filter models by company and provider.
- Sorting: Sort models by name, context length, etc.
- Search: Search for models by name.
- Batch Selection: Select multiple models, with options for "Select All," "Deselect All," and "Invert Selection".
- Reasoning Models Filter: Option to display only models that support reasoning.
- Copy IDs: Easily copy the IDs of selected models.
- Multi-language Support: Switch between English and Chinese.
- Responsive Design: The interface is optimized for both desktop and mobile devices.
The application supports copying selected model IDs in two different formats, compatible with NewAPI and UniAPI.
- Model Name : A comma-separated list of model names, ideal for quick lists.
- Model Mapping (JSON): A JSON object that maps a custom name to the original OpenRouter model ID. This is useful for creating aliases.
- YAML List: A YAML-style list. If mapping is enabled, it's formatted as
original-id: mapped-name; otherwise, it's just theoriginal-id.
Both formats can be customized with the following mapping options:
- Prefix: Add a custom prefix to model names.
- Strip
:freeSuffix: Remove the:freesuffix from the model ID. - Strip Company Name: Remove the company name (e.g.,
google/) from the model ID.
- Framework: Next.js
- UI Components: shadcn/ui (built on Radix UI)
- Styling: Tailwind CSS
- Internationalization (i18n): next-intl
- Data Fetching: SWR
- Icons: Lucide React
- Code Quality: TypeScript, ESLint, Prettier
- Clone the repository:
git clone https://github.com/your-username/openrouter-free-model.git cd openrouter-free-model - Install dependencies:
pnpm install
Start the development server:
pnpm devOpen http://localhost:3000 in your browser to see the result.
app/[lang]/: Dynamic routes for internationalization.app/api/: API routes.components/: React components.hooks/: Custom React hooks.lib/: Utility functions.messages/: Language files for i18n.public/: Static assets.types/: TypeScript type definitions.