TopFreeAlternative

- Free open source alternatives of paid software.

Paid software

Free open source alternatives for Linux

Browse free and open source software that runs on Linux. Find open-source alternatives, compare features, platforms and pricing, and pick the right Linux tool for you.

FoxRemake logo
FoxRemake is a dedicated Star Fox 64 Remake information hub featuring original vs remake comparisons, official release details, gameplay analysis, and exclusive Switch 2 platform breakdowns for Nintendo fans. FoxRemake.com is a professional, specialized information hub fully dedicated to the highly anticipated Star Fox 64 Remake for Nintendo Switch 2, providing comprehensive, well-structured, and detailed game comparison content, official release information, visual difference analysis, and in-depth gameplay breakdowns for retro gaming fans, Nintendo enthusiasts, and Star Fox franchise lovers. Centered around the Star Fox 64 Remake topic cluster, this website systematically sorts and integrates all confirmed official information, visual comparison materials, platform specifications, and gameplay upgrades, creating an all-in-one dedicated portal for players tracking the latest updates of the classic rail shooter remake. As a focused Star Fox information platform, FoxRemake strictly classifies diverse search intentions into independent but interconnected sub-pages, including visual comparison guides, official release date records, screenshot galleries, remake versus remaster distinction analysis, Nintendo Switch 2 platform introductions, and detailed gameplay breakdowns. This clear content clustering structure enables search engines and visitors to accurately locate targeted information, ranging from intuitive graphic contrast to deep mechanical analysis. The core flagship page of FoxRemake is the Star Fox 64 Remake original vs remake visual comparison guide, which thoroughly displays the comprehensive visual overhaul between the classic Nintendo 64 original version and the brand-new Switch 2 remake. The comparison content is divided into three core modules: Fox McCloud character model comparison, Arwing starship detail analysis, and Corneria stage environment contrast. Every comparison item covers model polygon density, modern lighting rendering, texture reflection effects, color grading optimization, cockpit internal details, environmental geometric density, atmospheric rendering, and overall visual scale changes, clearly demonstrating why this latest Star Fox work is defined as a complete remake rather than a simple remaster. In addition to visual evaluation, FoxRemake records all verified official release information, confirming the official launch date as June 25, 2026, and marking exclusive platform support for the Nintendo Switch 2 console. The website also sorts out complete platform-related parameters, including local multiplayer modes supporting 1-2 players, online multiplayer battles accommodating up to 8 participants, exclusive Switch 2 hardware optimizations such as GameShare functions, GameChat communication systems, and upgraded Joy-Con 2 mouse control compatibility. The gameplay analysis page deeply dissects the rail shooter core mechanics of Star Fox 64 Remake, covering combat rhythm, enemy wave spawning logic, branching route designs, cooperative gameplay mechanisms, and competitive 4v4 Battle Mode content to help players fully understand upgraded combat systems and gaming experiences. To eliminate industry confusion among game fans, FoxRemake creates an exclusive remake vs remaster interpretation page, professionally explaining the essential differences between game remakes and remasters. The website explicitly analyzes that the Switch 2 Star Fox 64 iteration adopts comprehensive asset reconstruction, brand-new cinematic cutscenes, optimized character modeling, re-orchestrated background music, and complete voice acting upgrades, further proving its standard as a genuine high-budget remake. All visual materials displayed on FoxRemake are independently produced non-infringing comparison artworks, including restored low-poly N64-style original scenes and modern high-definition Switch 2 rendering previews, ensuring clear visual contrast while complying with copyright regulations. The website also sorts out the official announcement timeline, recording the Star Fox Direct release on May 6, 2026, and the formal global launch arrangement on June 25, 2026, facilitating fans to track the complete development and announcement process. With a minimalist, clean, and game-oriented interface design, FoxRemake abandons redundant advertisements and messy navigation, allowing every visitor to quickly access comparison galleries, release logs, gameplay tutorials, and platform specifications. Tailored for both nostalgic retro gamers and modern Nintendo Switch 2 players, FoxRemake continuously updates verified post-launch data, supplementary screenshots, and deeper mechanical analysis after the official game release. Dedicated to becoming the most intuitive, detailed, and authoritative Star Fox 64 Remake comparison hub on the internet, FoxRemake consistently maintains information accuracy, neutral analysis perspectives, and user-friendly browsing experiences for every Star Fox franchise supporter around the world.
FreeWindowsmacOSLinuxAndroidiOS
cc-switch logo
cc-switch is a free, open-source software / service you can self-host or use without paying. CC Switch The All-in-One Manager for Claude Code, Claude Desktop, Codex, Gemini CLI, Grok Build, OpenCode, OpenClaw & Hermes Agent 🌐 The Only Official Website: ccswitch.io English | 中文 | 日本語 | Deutsch | Changelog ❤️Sponsor Want to appear here? Click to collapse Kimi K3 is Moonshot AI's most capable model and the world's first open 3T-class model. With 2.8 trillion parameters, native vision, and a 1-million-token context window, K3 delivers frontier performance across long-horizon coding, knowledge work, and reasoning. CC Switch makes it easy to configure and switch to Kimi across agentic tools. Click here to start using Kimi New user top-up bonus : register via this link and complete your first top-up to receive 10% of the amount as bonus API credit, up to CNY ¥1,000. Doing mostly coding work? Try the Kimi Code subscription . Thanks to PackyCode for sponsoring this project! PackyCode is a reliable and efficient API relay service provider, offering relay services for Claude Code, Codex, Gemini, and more. PackyCode provides special discounts for our software users: register using this link and enter the "cc-switch" promo code during first recharge to get 10% off. Thanks to ZetaAPI for sponsoring this project! ZetaAPI focuses on real model fidelity, no watered-down responses, no quality degradation, and pricing as low as 35% of official rates. The platform does not mix traffic, secretly replace models with lower-quality alternatives, or use fake model routing. It supports Claude Code, Codex, Gemini, ChatGPT, and other mainstream AI models, helping users significantly reduce API costs while maintaining reliable model quality. At the same time, ZetaAPI provides enterprise-grade SLA-backed stability, standard API compatibility, one API key for multiple models, fast integration, and pay-as-you-go billing, making it suitable for AI products, coding agents, internal business tools, customer service systems, content generation, and automation workflows. If any model is verified to be inconsistent with its stated quality, ZetaAPI backs it with a 10x compensation guarantee, giving users a more stable, transparent, and trustworthy experience. Register via this link and use the promo code CC-SWITCH during your first recharge to enjoy an exclusive 10% discount on your first top-up, just for CC Switch users! Thanks to APINEBULA for sponsoring this project! APINEBULA, an enterprise-grade AI aggregation platform under Galaxy Video Bureau, leverages extensive platform resources to provide developers, teams, and enterprises with stable, cost-effective access to large language model APIs. The platform integrates leading, full-powered models like Claude, GPT, and Gemini, allowing you to connect to the world's top AI models through a single API, with prices starting as low as 10% of the original cost. Designed for AI programming, Agent development, and business system integration, APINEBULA supports enterprise-grade high concurrency, formal contracts, corporate bank transfers, and invoicing services. APINEBULA provides special discounts for our software users: register using this link and enter the "ccswitch" promo code during your first recharge to get 10% off . Thanks to AICodeMirror for sponsoring this project! AICodeMirror provides official high-stability relay services for Claude Code / Codex / Gemini CLI, with enterprise-grade concurrency, fast invoicing, and 24/7 dedicated technical support. Claude Code / Codex / Gemini official channels at 38% / 2% / 9% of original price, with extra discounts on top-ups! AICodeMirror offers special benefits for CC Switch users: register via this link to enjoy 20% off your first top-up, and enterprise customers can get up to 25% off! Thanks to PatewayAI for sponsoring this project! PatewayAI is an API relay service provider built for heavy AI developers, focused on directly relaying official high-quality model APIs. It offers the full Claude lineup and the Codex series, 100% sourced from official channels — no dilution, no fakes, verification welcome. Billing is transparent and every token-level invoice can be audited line by line. It also supports enterprise-grade concurrency and provides a dedicated management platform for enterprise customers — formal contracts and invoicing are available; visit the official website for contact details. Register now via this link to receive $3 in trial credit. Top-ups go as low as 60% of the original price, with a two-way referral bonus of up to $150! Thanks to Fenno.ai for sponsoring this project! Fenno.ai is a stable and efficient API relay service provider, currently focused on Codex relay. It is compatible with the OpenAI and Anthropic protocols and can be flexibly used from Codex, Claude Code, OpenCode, and other mainstream coding tools. It reliably supports enterprise-grade workloads of hundreds of billions of tokens per day, with corporate (B2B) settlement and invoicing for both domestic and overseas entities. Fenno.ai offers an exclusive benefit for CC Switch users: subscribe via this link to the $1.99 Trial Plan worth $50 in credits (valid for 7 days), and earn up to 20% in referral rewards — invite more, earn more! Thanks to RunAPI for sponsoring this project! RunAPI is a high-performance and reliable AI model API gateway — one API key gives you access to 150+ mainstream models including OpenAI, Claude, Gemini, DeepSeek, and Grok, with prices as low as 10% of the official rate and excellent stability. It works seamlessly with Claude Code, OpenClaw, and other tools. Exclusive benefit for CC Switch users: register via this link and enjoy a 10% discount on your first top-up! Thanks to Shengsuanyun for sponsoring this project! Shengsuanyun is a super factory serving AI Native Teams — an industrial-grade AI task parallel execution platform. Its model marketplace aggregates Claude, ChatGPT, Gemini, and other domestic and international LLM and multimedia model capabilities with direct supply. Absolutely no reverse engineering or dilution — platform-wide model SLA availability reaches 99.7%, with monitoring dashboards showing green across the board. It also offers enterprise-grade custom gateways for fine-grained team cost and permission management, smart routing, security protection, and BYOK (Bring Your Own Key) hosting. The platform charges on a pay-per-use and tokens plan (coming soon) basis, with invoicing available. Register via this link as a new user to receive ¥10 in credits plus a 10% bonus on your first top-up. Thanks to AIGoCode for sponsoring this project! AIGoCode is an all-in-one platform that integrates Claude Code, Codex, and the latest Gemini models, providing you with stable, efficient, and highly cost-effective AI coding services. The platform offers flexible subscription plans, zero risk of account suspension, direct access with no VPN required, and lightning-fast responses. AIGoCode has prepared a special benefit for CC Switch users: if you register via this link , you'll receive an extra 10% bonus credit on your first top-up! Thanks to AICoding for sponsoring this project! AICoding — Global AI Model API Relay Service at Unbeatable Prices! Claude Code at 19% of original price, GPT at just 1%! Trusted by hundreds of enterprises for cost-effective AI services. Supports Claude Code, GPT, Gemini and major domestic models, with enterprise-grade high concurrency, fast invoicing, and 24/7 dedicated technical support. CC Switch users who register via this link get 10% off their first top-up! Thanks to SubRouter for sponsoring this project! SubRouter is a marketplace and smart routing platform for AI service operators. Merchants can launch operating sites, publish packages, manage users, models, and pricing, while users discover services and access reliable AI models through one unified API. Register via this link ! Thanks to APIKEY.FUN for sponsoring this project! APIKEY.FUN is a professional enterprise-grade AI relay platform dedicated to providing stable, efficient, and low-cost AI model API access for enterprises and individual developers. The platform supports popular mainstream models such as Claude, OpenAI, and Gemini, with prices as low as 7% of official rates. Register through this project's exclusive link to enjoy an exclusive offer of up to permanent 5% off top-ups . This project is sponsored by Claude API . Direct Claude API access — connect Claude Code and Agent apps in 3 minutes. New users can claim a free trial credit.Powered by official Anthropic API keys + AWS Bedrock official channels. No reverse engineering, no model degradation. Full support for Opus / Sonnet / Haiku model lineup, with official capabilities preserved including Tool Use, 1M context window, and more. Built for Claude Code power users, Agent engineers, and enterprise engineering teams. Invoicing and dedicated team support available. Click here to register! Thanks to code0.ai for sponsoring this project! code0.ai is an AI coding service platform built for developers, supporting Claude Code, Codex, Gemini, and other mainstream AI coding capabilities. It helps individual developers and teams use AI Agents more stably and efficiently for coding, debugging, refactoring, and automation workflows. ccswitch users can contact customer support via the code0.ai website to claim test credits and experience a reliable AI coding service. Thanks to TeamoRouter for sponsoring this project! TeamoRouter is an enterprise-grade Agentic LLM gateway built for developers, AI teams, and businesses. Without requiring any subscriptions, it lets you access Claude Code, Codex, Gemini CLI, OpenAI Codex, and other popular AI agents through a single unified API, while offering API pricing at discounts of up to 90%. Unlike typical API relay services, TeamoRouter aggregates hundreds of official model providers and trusted infrastructure partners, including OpenAI, Anthropic, Vertex, Azure, and AWS bedrock. Every provider is verified for 100% Agent protocol compatibility, cache performance, and request traceability, ensuring stable quality instead of reverse-engineered or diluted endpoints. The platform delivers near-official TTFT, 99.6% SLA, enterprise-scale throughput up to 5,000 QPM, and industry-leading cache hit rates that dramatically reduce token costs for long-running agent workflows. TeamoRouter also offers enterprise features including centralized billing, team management, BYOK, smart routing, usage analytics, dynamic provider optimization, and dedicated support. For an even simpler experience, Teamo Desktop lets you use Claude Code, Codex, Gemini CLI, and other popular AI agents with one-click setup—no API key management or manual gateway configuration required. Register via this link as a new user to receive 10% off your first top-up. Thanks to the open-source AI infrastructure project new-api for its strong support of this project! new-api is an open-source AI infrastructure project from QuantumNous and one of the leading unified LLM access-and-distribution projects by activity and adoption, focused on helping developers, teams, and enterprises build manageable, scalable AI service platforms at lower cost. As a fellow project rooted in the open-source ecosystem, new-api hopes to sponsor and support the continued growth of more outstanding open-source projects. 🌟 Star new-api to show your support: https://github.com/QuantumNous/new-api . Website: https://www.newapi.ai/ . Thanks to ClaudeCN for sponsoring this project! ClaudeCN is an enterprise-grade AI gateway platform operated by a registered company. It delivers high-availability commercial API access to popular models including Claude, GPT, and DeepSeek, and is built around formal enterprise procurement workflows — corporate bank transfers, signed contracts, and full compliance. Register via this link ! Thanks to Dola seed for sponsoring this project! Dola Seed 2.0 is a full‑modal general large model independently developed by ByteDance for the global market. Built on a unified multimodal architecture, it supports joint understanding and generation of text, images, audio, and video. It natively enables agent collaboration, with strong reasoning, long‑task execution, tool integration, and coding capabilities. It is widely applicable to smart cockpits, personal assistants, education, customer support, marketing, retail, and other scenarios. It excels in multimodal perception, end‑to‑end complex task delivery, stable interaction, and data security, and is readily accessible and deployable via the ModelArk platform.Register via this link to get 500,000 tokens of free inference quota per model. >>中国大陆地区的开发者请点击这里 Thanks to SiliconFlow for sponsoring this project! SiliconFlow is a high-performance AI infrastructure and model API platform, providing fast and reliable access to language, speech, image, and video models in one place. With pay-as-you-go billing, broad multimodal model support, high-speed inference, and enterprise-grade stability, SiliconFlow helps developers and teams build and scale AI applications more efficiently. Register via this link and complete real-name verification to receive ¥16 in bonus credit, usable across models on the platform. SiliconFlow is also now compatible with OpenClaw, allowing users to connect a SiliconFlow API key and call major AI models for free. Thanks to A6API for sponsoring this project! A6API is a one-stop AI model API aggregation platform covering Claude, GPT, Gemini, Codex, and other mainstream models. Multiple vendors can list their supply on the platform, so the same model can be quoted competitively by several upstream providers. Smart routing automatically picks the more stable, lower-priced route available and fails over automatically, helping you reduce failed requests, cut costs, and improve stability. Whether you are an individual developer, an AI product team, or a studio, you can integrate quickly through a unified interface — compatible with all formats, with low migration cost. New users who register via this link receive free trial credits: try it first, then use it at a low price. Atlas Cloud is a full-modal AI inference platform that gives developers a single AI API to access video generation, image generation, and LLM APIs. Instead of managing multiple vendor integrations, you connect once and get unified access to 300+ curated models across all modalities. Check out Atlas Cloud's new coding plan promotion for more budget-friendly API access! Thanks to Compshare for sponsoring this project! Compshare is UCloud's AI cloud platform, providing stable and comprehensive domestic and international model APIs with just one key. Featuring cost-effective monthly and per-use domestic-model Coding Plan packages, alongside stable officially-relayed overseas models. Supports Claude Code, Codex, and API access. Enterprise-grade high concurrency, 24/7 technical support, and self-service invoicing. Users who register via this link will receive a free 5 CNY platform trial credit! Thanks to CCSub for sponsoring this project! CCSub is a stable, affordable AI API relay platform — your drop-in replacement for a Claude.ai subscription. One API key gives you access to Claude Opus 4.8, Sonnet, Haiku, GPT-5, Gemini, and DeepSeek at roughly 30% of direct API cost, with no VPN required from anywhere in the world. Compatible with Claude Code, Codex, Cursor, Cline, Continue, Windsurf, and all major AI coding tools. Register via this link and get $5 free credit on sign-up. Thanks to SSSAiCode for sponsoring this project! SSSAiCode is a stable and reliable API relay service, dedicated to providing stable, reliable, and affordable Claude and Codex model services, with same-day fast invoicing. SSSAiCode offers a special deal for CC Switch users: register via this link to enjoy $10 extra credit on every top-up! Thanks to Micu API for sponsoring this project! Micu API is a global LLM relay service provider dedicated to delivering the best cost-performance ratio with high stability. Backed by a registered enterprise for core assurance, eliminating any risk of service discontinuation, with fast official invoicing support! We champion "zero cost to try": top up from as low as ¥1 with no minimum, and get fee-free refunds anytime! Micu API offers an exclusive deal for CC Switch users: register via this link and enter promo code "ccswitch" when topping up to enjoy a 10% discount ! Thank you to Right Code for sponsoring this project! Right Code reliably provides routing services for models such as Claude Code, Codex, and Gemini, with both pay-as-you-go and monthly subscription billing options available. Invoices are available upon top-up, and enterprise and team users can receive dedicated one-on-one support. Right Code also offers an exclusive discount for CC Switch users: register via this link , and with every top-up you will receive pay-as-you-go credit equivalent to 5% of the amount paid. Thanks to ETok.ai for sponsoring this project! ETok.ai is dedicated to building a one-stop AI programming tool service platform. We offer professional Claude Code packages and technical community services, with support for Google Gemini and OpenAI Codex. Through carefully designed plans and a professional tech community, we provide developers with reliable service guarantees and continuous technical support, making AI-assisted programming a true productivity tool. Click here to register! Thanks to Cubence for sponsoring this project! Cubence is a reliable and efficient API relay service provider, offering relay services for Claude Code, Codex, Gemini, and more with flexible billing options including pay-as-you-go and monthly plans. Cubence provides special discounts for CC Switch users: register using this link and enter the "CCSWITCH" promo code during recharge to get 10% off every top-up! Thanks to Crazyrouter for sponsoring this project! Crazyrouter is a high-performance AI API aggregation platform — one API key for 300+ models including Claude Code, Codex, Gemini CLI, and more. All models at 55% of official pricing with auto-failover, smart routing, and unlimited concurrency. Crazyrouter offers an exclusive deal for CC Switch users: register via this link and contact customer support to claim $2 free credit , plus enter promo code `CCSWITCH` on your first top-up for an extra 30% bonus credit ! Thanks to DMXAPI for sponsoring this project! DMXAPI provides global large model API services to 200+ enterprise users. One API key for all global models. Features include: instant invoicing, unlimited concurrency, starting from $0.15, 24/7 technical support. GPT/Claude/Gemini all at 32% off, domestic models 20-50% off, Claude Code exclusive models at 66% off! Register here Why CC Switch? Modern AI-powered coding relies on tools like Claude Code, Claude Desktop, Codex, Gemini CLI, Grok Build, OpenCode, OpenClaw, and Hermes — but each has its own configuration format. Switching API providers means manually editing JSON, TOML, or .env files, and there is no unified way to manage MCP and Skills across multiple tools. CC Switch gives you a single desktop app to manage all supported AI tools. Instead of editing config files by hand, you get a visual interface to import providers with one click, switch between them instantly, with 50+ built-in provider presets, unified MCP and Skills management, and system tray quick switching — all backed by a reliable SQLite database with atomic writes that protect your configs from corruption. One App, Eight Tools — Manage Claude Code, Claude Desktop, Codex, Gemini CLI, Grok Build, OpenCode, OpenClaw, and Hermes from a single interface No More Manual Editing — 50+ provider presets including AWS Bedrock, NVIDIA NIM, and community relays; just pick and switch Unified MCP & Skills Management — One panel to manage MCP servers and Skills across Claude, Codex, Gemini, Grok Build, OpenCode, and Hermes with bidirectional sync System Tray Quick Switch — Switch providers instantly from the tray menu, no need to open the full app Cloud Sync — Sync provider data across devices via Dropbox, OneDrive, iCloud, or WebDAV servers Cross-Platform — Native desktop app for Windows, macOS, and Linux, built with Tauri 2 Built-in Utilities — Includes various utilities for first-launch login confirmation, signature bypass, plugin extension sync, and more Screenshots Main Interface Add Provider Features Full Changelog | Release Notes Provider Management 8 supported tools, 50+ presets — Claude Code, Claude Desktop, Codex, Gemini CLI, Grok Build, OpenCode, OpenClaw, Hermes; copy your key and import with one click Universal providers — One config syncs to Claude Code, Codex, and Gemini CLI One-click switching, system tray quick access, drag-and-drop sorting, import/export Proxy & Failover Local proxy with hot-switching — Format conversion, auto-failover, circuit breaker, provider health monitoring, and request rectifier App-level takeover — Independently proxy Claude, Codex, Gemini, or Grok Build, down to individual providers MCP, Prompts & Skills Unified MCP panel — Manage MCP servers across Claude, Codex, Gemini, Grok Build, OpenCode, and Hermes with bidirectional sync and Deep Link import Prompts — Markdown editor with cross-app sync (CLAUDE.md / AGENTS.md / GEMINI.md) and backfill protection Skills — One-click install from GitHub repos or ZIP files, custom repository management, with symlink and file copy support Usage & Cost Tracking Usage dashboard — Track spending, requests, and tokens with trend charts, detailed request logs, and custom per-model pricing Session Manager & Workspace Browse, search, and restore conversation history across supported session sources Workspace editor (OpenClaw) — Edit agent files (AGENTS.md, SOUL.md, etc.) with Markdown preview System & Platform Cloud sync — Custom config directory (Dropbox, OneDrive, iCloud, NAS) and WebDAV server sync Deep Link ( ccswitch:// ) — Import providers, MCP servers, prompts, and skills via URL Dark / Light / System theme, auto-launch, auto-updater, atomic writes, auto-backups, i18n (zh/zh-TW/en/ja) FAQ Which AI tools does CC Switch support? CC Switch supports eight tools: Claude Code , Claude Desktop , Codex , Gemini CLI , Grok Build , OpenCode , OpenClaw , and Hermes . Each tool has dedicated provider presets and configuration management. Do I need to restart the terminal after switching providers? For most tools, yes — restart your terminal or the CLI tool for changes to take effect. The exception is Claude Code , which currently supports hot-switching of provider data without a restart. My plugin configuration disappeared after switching providers — what happened? CC Switch provides a "Shared Config Snippet" feature to pass common data (beyond API keys and endpoints) between providers. Go to "Edit Provider" → "Shared Config Panel" → click "Extract from Current Provider" to save all common data. When creating a new provider, check "Write Shared Config" (enabled by default) to include plugin data in the new provider. All your configuration items are preserved in the default provider imported when you first launched the app. macOS installation CC Switch for macOS is code-signed and notarized by Apple. You can download and install it directly — no extra steps needed. We recommend using the .dmg installer. Why can't I delete the currently active provider? CC Switch follows a "minimal intrusion" design principle — even if you uninstall the app, your CLI tools will continue to work normally. The system always keeps one active configuration, because deleting all configurations would make the corresponding CLI tool unusable. If you rarely use a specific CLI tool, you can hide it in Settings. To switch back to official login, see the next question. How do I switch back to official login? Add an official provider from the preset list. After switching to it, run the Log out / Log in flow, and then you can freely switch between the official provider and third-party providers. Codex supports switching between different official providers, making it easy to switch between multiple Plus or Team accounts. Where is my data stored? Database : ~/.cc-switch/cc-switch.db (SQLite — providers, MCP, prompts, skills) Local settings : ~/.cc-switch/settings.json (device-level UI preferences) Backups : ~/.cc-switch/backups/ (auto-rotated, keeps 10 most recent) Skills : ~/.cc-switch/skills/ (symlinked to corresponding apps by default) Skill Backups : ~/.cc-switch/skill-backups/ (created automatically before uninstall, keeps 20 most recent) Linux (Wayland + NVIDIA): clicks don't register and the window black-screens on resize The AppImage forces GDK_BACKEND=x11 (XWayland) to avoid a historical native-Wayland crash. On newer Wayland + NVIDIA setups this can leave the web content area unclickable (the title-bar buttons still work) and black-screen on resize. Launch with the opt-in escape hatch to switch back to native Wayland: CC_SWITCH_GDK_BACKEND=wayland ./CC-Switch- * .AppImage If you launch from a desktop icon, add it to the .desktop Exec= line (e.g. env CC_SWITCH_GDK_BACKEND=wayland /path/to/AppImage ) or set it in your session environment. The variable is generic: on tiling Wayland compositors (sway/Hyprland) where clicks don't register, try CC_SWITCH_GDK_BACKEND=x11 instead. Leaving it unset keeps the default behavior. Documentation For detailed guides on every feature, check out the User Manual — covering provider management, MCP/Prompts/Skills, proxy & failover, and more. Quick Start Basic Usage Add Provider : Click "Add Provider" → Choose a preset or create custom configuration Switch Provider : Main UI: Select provider → Click "Enable" System Tray: Click provider name directly (instant effect) Takes Effect : Restart your terminal or the corresponding CLI tool to apply changes (Claude Code does not require a restart) Back to Official : Add an "Official Login" preset, restart the CLI tool, then follow its login/OAuth flow MCP, Prompts, Skills & Sessions MCP : Click the "MCP" button → Add servers via templates or custom config → Toggle per-app sync Prompts : Click "Prompts" → Create presets with Markdown editor → Activate to sync to live files Skills : Click "Skills" → Browse GitHub repos → One-click install to supported apps Sessions : Click "Sessions" → Browse, search, and restore conversation history across supported session sources Note : On first launch, you can manually import existing CLI tool configs as the default provider. Download & Installation System Requirements Windows : Windows 10 and above macOS : macOS 12 (Monterey) and above Linux : Ubuntu 22.04+ / Debian 11+ / Fedora 34+ and other mainstream distributions Windows Users Download the latest CC-Switch-v{version}-Windows.msi installer or CC-Switch-v{version}-Windows-Portable.zip portable version from the Releases page. macOS Users Method 1: Install via Homebrew (Recommended) brew install --cask cc-switch Update: brew upgrade --cask cc-switch Method 2: Manual Download Download CC-Switch-v{version}-macOS.dmg (recommended) or .zip from the Releases page. Note : CC Switch for macOS is code-signed and notarized by Apple. You can install and open it directly. Arch Linux Users Install via paru (Recommended) paru -S cc-switch-bin Linux Users Download the latest Linux build from the Releases page: CC-Switch-v{version}-Linux.deb (Debian/Ubuntu) CC-Switch-v{version}-Linux.rpm (Fedora/RHEL/openSUSE) CC-Switch-v{version}-Linux.AppImage (Universal) Flatpak : Not included in official releases. You can build it yourself from the .deb — see flatpak/README.md for instructions. Architecture Overview Design Principles ┌─────────────────────────────────────────────────────────────┐ │ Frontend (React + TS) │ │ ┌─────────────┐ ┌──────────────┐ ┌──────────────────┐ │ │ │ Components │ │ Hooks │ │ TanStack Query │ │ │ │ (UI) │──│ (Bus. Logic) │──│ (Cache/Sync) │ │ │ └─────────────┘ └──────────────┘ └──────────────────┘ │ └────────────────────────┬────────────────────────────────────┘ │ Tauri IPC ┌────────────────────────▼────────────────────────────────────┐ │ Backend (Tauri + Rust) │ │ ┌─────────────┐ ┌──────────────┐ ┌──────────────────┐ │ │ │ Commands │ │ Services │ │ Models/Config │ │ │ │ (API Layer) │──│ (Bus. Layer) │──│ (Data) │ │ │ └─────────────┘ └──────────────┘ └──────────────────┘ │ └─────────────────────────────────────────────────────────────┘ Core Design Patterns SSOT (Single Source of Truth): All data stored in ~/.cc-switch/cc-switch.db (SQLite) Dual-layer Storage : SQLite for syncable data, JSON for device-level settings Dual-way Sync : Write to live files on switch, backfill from live when editing active provider Atomic Writes : Temp file + rename pattern prevents config corruption Concurrency Safe : Mutex-protected database connection avoids race conditions Layered Architecture : Clear separation (Commands → Services → DAO → Database) Key Components ProviderService : Provider CRUD, switching, backfill, sorting McpService : MCP server management, import/export, live file sync ProxyService : Local proxy mode with hot-switching and format conversion SessionManager : Conversation history browsing across supported session sources ConfigService : Config import/export, backup rotation SpeedtestService : API endpoint latency measurement Development Guide Environment Requirements Node.js 18+ pnpm 8+ Rust 1.85+ Tauri CLI 2.8+ Development Commands # Install dependencies pnpm install # Dev mode (hot reload) pnpm dev # Type check pnpm typecheck # Format code pnpm format # Check code format pnpm format:check # Run frontend unit tests pnpm test:unit # Run tests in watch mode (recommended for development) pnpm test:unit:watch # Build application pnpm build # Build debug version pnpm tauri build --debug Rust Backend Development cd src-tauri # Format Rust code cargo fmt # Run clippy checks cargo clippy # Run backend tests cargo test # Run specific tests cargo test test_name # Run tests with test-hooks feature cargo test --features test-hooks Testing Guide Frontend Testing : Uses vitest as test framework Uses MSW (Mock Service Worker) to mock Tauri API calls Uses @testing-library/react for component testing Running Tests : # Run all tests pnpm test:unit # Watch mode (auto re-run) pnpm test:unit:watch # With coverage report pnpm test:unit --coverage Tech Stack Frontend : React 18 · TypeScript · Vite · TailwindCSS 3.4 · TanStack Query v5 · react-i18next · react-hook-form · zod · shadcn/ui · @dnd-kit Backend : Tauri 2.8 · Rust · serde · tokio · thiserror · tauri-plugin-updater/process/dialog/store/log Testing : vitest · MSW · @testing-library/react Project Structure ├── src/ # Frontend (React + TypeScript) │ ├── components/ │ │ ├── providers/ # Provider management │ │ ├── mcp/ # MCP panel │ │ ├── prompts/ # Prompts management │ │ ├── skills/ # Skills management │ │ ├── sessions/ # Session Manager │ │ ├── proxy/ # Proxy mode panel │ │ ├── openclaw/ # OpenClaw config panels │ │ ├── settings/ # Settings (Terminal/Backup/About) │ │ ├── deeplink/ # Deep Link import │ │ ├── env/ # Environment variable management │ │ ├── universal/ # Cross-app configuration │ │ ├── usage/ # Usage statistics │ │ └── ui/ # shadcn/ui component library │ ├── hooks/ # Custom hooks (business logic) │ ├── lib/ │ │ ├── api/ # Tauri API wrapper (type-safe) │ │ └── query/ # TanStack Query config │ ├── locales/ # Translations (zh/zh-TW/en/ja) │ ├── config/ # Presets (providers/mcp) │ └── types/ # TypeScript definitions ├── src-tauri/ # Backend (Rust) │ └── src/ │ ├── commands/ # Tauri command layer (by domain) │ ├── services/ # Business logic layer │ ├── database/ # SQLite DAO layer │ ├── proxy/ # Proxy module │ ├── session_manager/ # Session management │ ├── deeplink/ # Deep Link handling │ └── mcp/ # MCP sync module ├── tests/ # Frontend tests └── assets/ # Screenshots & partner resources Contributing Issues and suggestions are welcome! Before submitting PRs, please ensure: Pass type check: pnpm typecheck Pass format check: pnpm format:check Pass unit tests: pnpm test:unit For new features, please open an issue for discussion before submitting a PR. PRs for features that are not a good fit for the project may be closed. Star History License MIT © Jason Young
FreeWindowsmacOSLinux
song lyrics review logo
Song Lyrics Review (https://song-lyrics-review.com/) is a sophisticated AI-powered platform designed to help music enthusiasts, songwriters, and critics move beyond surface-level listening to master the art of lyrical analysis. Our product bridges the gap between casual music consumption and professional-grade music criticism by offering a powerful suite of intelligent analytical tools. The core of our platform is the AI Lyrics Analyzer, which performs deep-dive evaluations of any song. It instantly identifies hidden themes, complex emotional arcs, and sophisticated literary devices such as metaphors, irony, and symbolism. By decoding the narrative "why" behind every verse, it provides users with structured insights that mirror the expertise of a seasoned music critic. For writers and creators, our AI Review Checker acts as a professional editor. It evaluates your written critiques for tone, clarity, and structural impact, helping you refine your unique voice and ensure your reviews meet professional standards. Additionally, the platform assesses technical craftsmanship and artistic quality, allowing you to understand the specific elements that make a track successful. Whether you are an aspiring blogger, a student of music theory, or a dedicated fan, our platform provides the systematic guidance and technical insights needed to transform your appreciation into expertise. We believe every word has narrative value, and our tools are built to help you uncover the soul of songwriting. Explore the narrative depth of your favorite tracks and refine your critical skills at song-lyrics-review.com.
FreemiumWindowsmacOSLinuxAndroidiOS
puter logo
puter is a free, open-source alternative to Dropbox . The Open-Source Internet Computer! « LIVE DEMO » Puter.com · App Store · Developers · Discord · Reddit · X Puter Puter is an advanced, open-source, self-hostable internet computer designed to be feature-rich, fast, and highly extensible. For Users Puter's goal is to provide you with every app and feature you need to work, create, and play under one roof. From a simple Notepad and Voice Recorder to Spreadsheet and Camera , Puter wants to be the all-in-one solution for your digital life. For Developers Puter provides everything you need to build and publish web apps and games. From AI to Cloud Storage and Database to Serverless Workers , Puter has you covered. Puter also helps you get users! Once you build your app, you can publish it on our App Store to reach and monetize users. Getting Started 💻 Local Development git clone https://github.com/HeyPuter/puter cd puter npm install npm start → This should launch Puter at http://puter.localhost:4100 🚀 Self-Hosting Linux/macOS curl -fsSL https://puter.com/selfhost | sh Windows irm https: // puter.com / selfhost?os = windows | iex → For more details, see Self-Hosting Puter . ☁️ Puter.com Puter is available as a hosted service at puter.com . Support Connect with the maintainers and community through these channels: Bug report or feature request? Please open an issue . Discord: discord.com/invite/PQcx7Teh8u X (Twitter): x.com/HeyPuter Reddit: reddit.com/r/puter/ Mastodon: mastodon.social/@puter Security issues or abuse reports? [email protected] Email maintainers at [email protected] We are always happy to help you with any questions you may have. Don't hesitate to ask! License This repository, including all its contents, sub-projects, modules, and components, is licensed under AGPL-3.0 unless explicitly stated otherwise. Third-party libraries included in this repository may be subject to their own licenses. Translations Arabic / العربية Armenian / Հայերեն Bengali / বাংলা Chinese / 中文 Danish / Dansk English Farsi / فارسی Finnish / Suomi French / Français German / Deutsch Hebrew/ עברית Hindi / हिंदी Hungarian / Magyar Indonesian / Bahasa Indonesia Italian / Italiano Japanese / 日本語 Korean / 한국어 Malay / Bahasa Malaysia Malayalam / മലയാളം Polish / Polski Portuguese / Português Punjabi / ਪੰਜਾਬੀ Romanian / Română Russian / Русский Spanish / Español Swedish / Svenska Tamil / தமிழ் Telugu / తెలుగు Thai / ไทย Turkish / Türkçe Ukrainian / Українська Urdu / اردو Vietnamese / Tiếng Việt
FreeWindowsmacOSLinux
redis logo
redis is a free, open-source alternative to Redis Enterprise . This document serves as both a quick start guide to Redis and a detailed resource for building it from source. New to Redis? Start with What is Redis and Getting Started Ready to build from source? Jump to Build Redis from Source Want to contribute? See the Code contributions section and CONTRIBUTING.md Looking for detailed documentation? Navigate to redis.io/docs Table of contents What is Redis? Key use cases Why choose Redis? What is Redis Open Source? Getting started Redis starter projects Using Redis with client libraries Using Redis with redis-cli Using Redis with Redis Insight Redis data types, processing engines, and capabilities Cloud hosted Redis Community Build Redis from source Install dependencies and build Building Redis - flags and general notes Fixing build problems with dependencies or cached build options Fixing problems building 32 bit binaries Allocator Monotonic clock Verbose build Running Redis with TLS Code contributions Redis Trademarks What is Redis? For developers, who are building real-time data-driven applications, Redis is the preferred, fastest, and most feature-rich cache, data structure server, and document and vector query engine. Key use cases Redis excels in various applications, including: Caching: Supports multiple eviction policies, key expiration, and hash-field expiration. Distributed Session Store: Offers flexible session data modeling (string, JSON, hash). Data Structure Server: Provides low-level data structures (strings, lists, sets, hashes, sorted sets, JSON, etc.) with high-level semantics (counters, queues, leaderboards, rate limiters) and supports transactions & scripting. NoSQL Data Store: Key-value, document, and time series data storage. Search and Query Engine: Indexing for hash/JSON documents, supporting vector search, full-text search, geospatial queries, ranking, and aggregations via Redis Search. Event Store & Message Broker: Implements queues (lists), priority queues (sorted sets), event deduplication (sets), streams, and pub/sub with probabilistic stream processing capabilities. Vector Store for GenAI: Integrates with AI applications (e.g. LangGraph, mem0) for short-term memory, long-term memory, LLM response caching (semantic caching), and retrieval augmented generation (RAG). Real-Time Analytics: Powers personalization, recommendations, fraud detection, and risk assessment. Why choose Redis? Redis is a popular choice for developers worldwide due to its combination of speed, flexibility, and rich feature set. Here's why people choose Redis for: Performance: Because Redis keeps data primarily in memory and uses efficient data structures, it achieves extremely low latency (often sub-millisecond) for both read and write operations. This makes it ideal for applications demanding real-time responsiveness. Flexibility: Redis isn't just a key-value store, it provides native support for a wide range of data structures and capabilities listed in What is Redis? Extensibility: Redis is not limited to the built-in data structures, it has a modules API that makes it possible to extend Redis functionality and rapidly implement new Redis commands Simplicity: Redis has a simple, text-based protocol and well-documented command set Ubiquity: Redis is battle tested in production workloads at a massive scale. There is a good chance you indirectly interact with Redis several times daily Versatility : Redis is the de facto standard for use cases such as: Caching: quickly access frequently used data without needing to query your primary database Session management: read and write user session data without hurting user experience or slowing down every API call Querying, sorting, and analytics: perform deduplication, full text search, and secondary indexing on in-memory data as fast as possible Messaging and interservice communication: job queues, message brokering, pub/sub, and streams for communicating between services Vector operations: Long-term and short-term LLM memory, RAG content retrieval, semantic caching, semantic routing, and vector similarity search In summary, Redis provides a powerful, fast, and flexible toolkit for solving a wide variety of data management challenges. If you want to know more, here is a list of starting points: Introduction to Redis data types The full list of Redis commands Redis for AI Redis documentation What is Redis Open Source? Redis Community Edition (Redis CE) was renamed Redis Open Source with the v8.0 release. Redis Ltd. also offers Redis Software , a self-managed software with additional compliance, reliability, and resiliency for enterprise scaling, and Redis Cloud , a fully managed service integrated with Google Cloud, Azure, and AWS for production-ready apps. Read more about the differences between Redis Open Source and Redis here . Getting started If you want to get up and running with Redis quickly without needing to build from source, use one of the following methods: Redis Cloud Official Redis Docker images (Alpine/Debian) docker run -d -p 6379:6379 redis:latest Redis binary distributions Snap Homebrew RPM Debian Redis quick start guides If you prefer to build Redis from source - see instructions below. Redis starter projects To get started as quickly as possible in your language of choice, use one of the following starter projects: Python (redis-py) C#/.NET (NRedisStack/StackExchange.Redis) Go (go-redis) JavaScript (node-redis) Java/Spring (Jedis) Using Redis with client libraries To connect your application to Redis, you will need a client library. Redis has documented client libraries in most popular languages, with community-supported client libraries in additional languages. Python (redis-py) Python (RedisVL) C#/.NET (NRedisStack/StackExchange.Redis) JavaScript (node-redis) Java (Jedis) Java (Lettuce) Go (go-redis) PHP (Predis) C (hiredis) Full list of client libraries Using Redis with redis-cli redis-cli is Redis' command line interface. It is available as part of all the binary distributions and when you build Redis from source. You can start a redis-server instance, and then, in another terminal try the following: cd src ./redis-cli redis> ping PONG redis> set foo bar OK redis> get foo "bar" redis> incr mycounter (integer) 1 redis> incr mycounter (integer) 2 redis> Using Redis with Redis Insight For a more visual and user-friendly experience, use Redis Insight - a tool that lets you explore data, design, develop, and optimize your applications while also serving as a platform for Redis education and onboarding. Redis Insight integrates Redis Copilot , a natural language AI assistant that improves the experience when working with data and commands. Redis Insight documentation Redis Insight GitHub repository Redis data types, processing engines, and capabilities Redis provides a variety of data types, processing engines, and capabilities to support a wide range of use cases: String: Sequences of bytes, including text, serialized objects, and binary arrays used for caching, counters, and bitwise operations. JSON: Nested JSON documents that are indexed and searchable using JSONPath expressions and with Redis Search Array: Sparse, index-addressable collection of string values Hash: Field-value maps used to represent basic objects and store groupings of key-value pairs with support for hash field expiration (TTL) Redis Search: Use Redis as a document database, a vector database, a secondary index, and a search engine. Define indexes for hash and JSON documents and then use a rich query language for vector search, full-text search, geospatial queries, and aggregations. List: Linked lists of string values used as stacks, queues, and for queue management. Set: Unordered collection of unique strings used for tracking unique items, relations, and common set operations (intersections, unions, differences). Sorted set: Collection of unique strings ordered by an associated score used for leaderboards and rate limiters. Vector set (beta): Collection of vector embeddings used for semantic similarity search, semantic caching, semantic routing, and Retrieval Augmented Generation (RAG). Geospatial indexes: Coordinates used for finding nearby points within a given radius or bounding box. Bitmap: A set of bit-oriented operations defined on the string type used for efficient set representations and object permissions. Bitfield: Binary-encoded strings that let you set, increment, and get integer values of arbitrary bit length used for limited-range counters, numeric values, and multi-level object permissions such as role-based access control (RBAC) Hyperloglog: A probabilistic data structure for approximating the cardinality of a set used for analytics such as counting unique visits, form fills, etc. * Bloom filter: A probabilistic data structure to check if a given value is present in a set. Used for fraud detection, ad placement, and unique column (i.e. username/email/slug) checks. * Cuckoo filter: A probabilistic data structure for checking if a given value is present in a set while also allowing limited counting and deletions used in targeted advertising and coupon code validation. * t-digest: A probabilistic data structure used for estimating the percentile of a large dataset without having to store and order all the data points. Used for hardware/software monitoring, online gaming, network traffic monitoring, and predictive maintenance. * Top-k: A probabilistic data structure for finding the most frequent values in a data stream used for trend discovery. * Count-min sketch: A probabilistic data structure for estimating how many times a given value appears in a data stream used for sales volume calculations. Time series: Data points indexed in time order used for monitoring sensor data, asset tracking, and predictive analytics Pub/sub : A lightweight messaging capability. Publishers send messages to a channel, and subscribers receive messages from that channel. Stream : An append-only log with random access capabilities and complex consumption strategies such as consumer groups. Used for event sourcing, sensor monitoring, and notifications. Transaction: Allows the execution of a group of commands in a single step. A request sent by another client will never be served in the middle of the execution of a transaction. This guarantees that the commands are executed as a single isolated operation. Programmability: Upload and execute Lua scripts on the server. Scripts can employ programmatic control structures and use most of the commands while executing to access the database. Because scripts are executed on the server, reading and writing data from scripts is very efficient. Cloud hosted Redis Fully-managed Redis with real-time performance at scale. Redis Cloud Community Redis Community Resources Build Redis from source This section refers to building Redis from source. If you want to get up and running with Redis quickly without needing to build from source see the Getting started section . These instructions apply to Redis 8.10 and above. For versions lower than 8.10, see the 8.8 build instructions . Configuration files : the build steps below tell you to run ./src/redis-server redis.conf . Release tarballs bake the bundled modules' loadmodule lines and per-module settings directly into redis.conf during packaging, so an extracted release tarball is ready to run as-is. When building from a git checkout instead, that module config lives in the auto-generated redis-full.conf produced by make modules-update (and regenerated by make sync-redis-conf ) — run ./src/redis-server redis-full.conf there. Edit Redis-core settings in redis.conf . See modules/MODULES.md for the full config flow. Install dependencies and build Building Redis with all data structures (JSON, time series, Bloom / cuckoo / count-min / top-k, t-digest, and the Query Engine) needs a build toolchain plus a few version-sensitive dependencies — GCC/Clang, LLVM 21 , CMake 3.25–3.31.6 , Rust 1.94 , OpenSSL, Python 3, and assorted -dev libraries. Instead of a per-OS package list, the repo installs them for you with make bootstrap , which detects your OS and installs each bundled module's prerequisites. CMake version range matters. The modules require 3.25 ≤ CMake ≤ 3.31.6 — CMake 4.x is not supported and the build will fail with it. On distros that ship CMake 4.x by default (e.g. Ubuntu 26.04), pin a supported version, e.g. pip3 install 'cmake==3.31.6' . Note make bootstrap only installs CMake when it's missing or too old; it won't downgrade a pre-installed 4.x, so remove/pin that yourself. 1. Get the source Either works — the release tarball already bundles the module sources; a git checkout needs one extra step to fetch them: # A) Release tarball (recommended for building/running a release). # Replace <version>, e.g. 8.10.0 — extracts into redis-<version>/: wget -O redis- < version > .tar.gz https://github.com/redis/redis/releases/download/ < version > /redis-full.tar.gz tar xvf redis- < version > .tar.gz && cd redis- < version > # B) git checkout — clone the bundled modules once: git clone https://github.com/redis/redis.git && cd redis make modules-update 2. Install the build dependencies Pick whichever option fits your environment: Build inside the Docker build environment — recommended. The repo ships docker/Dockerfile.noble (Ubuntu 24.04) with every prerequisite baked in, so you build inside the container and never touch your host toolchain: docker build -f docker/Dockerfile.noble -t redis-build:noble . # Multi-arch (requires `docker buildx` configured): docker buildx build --platform linux/amd64,linux/arm64 \ -f docker/Dockerfile.noble -t redis-build:noble . # Build with the working tree mounted: docker run --rm -it -v " $PWD " :/workspace -w /workspace redis-build:noble \ bash -lc ' make -j"$(nproc)" && make run ' Install everything on a fresh machine or container. On a clean environment (for example a throwaway ubuntu:24.04 container), let bootstrap install every prerequisite for Redis core and all cloned modules: make bootstrap ⚠️ make bootstrap installs system packages and may override existing versions of shared tools (compiler, CMake, LLVM, …). Prefer option 1, or run it in a disposable container, if that matters on your machine. See only what's missing. To inspect which prerequisites are absent before installing anything, print one deduped list across Redis core and all modules: make bootstrap list Then install just the reported packages yourself. (Version-gated deps are shown as name (>= X) ; optional test/coverage deps are listed separately and don't fail the check.) Get the exact install commands to copy-paste. To run exactly what make bootstrap would, but only for the missing dependencies, use dry-run — it prints the precise install command for each missing dependency and installs nothing: make bootstrap dry-run The commands are printed per module , so a dependency shared by several modules appears once for each. Work through them iteratively: Copy-paste the commands for a module to install its dependencies. Re-run make bootstrap dry-run — the deps you just installed no longer show, so you now see only what's still missing for the remaining modules. Repeat until make bootstrap dry-run prints no install commands. Manual, per-OS install (no Docker, and you'd rather not let make bootstrap touch your host): follow the per-OS dependency instructions in the 8.8 README, which still lists them explicitly — https://github.com/redis/redis/tree/8.8#readme . 3. Build and run export BUILD_TLS=yes # optional — TLS support (needs OpenSSL dev libs) make -j " $( nproc ) " # Release tarball (module config is baked into redis.conf): ./src/redis-server redis.conf # From a git checkout, use the auto-generated module config instead: ./src/redis-server redis-full.conf make (same as make build / make all ) builds whatever is cloned under modules/*/src alongside Redis core. To build just the core data structures — even with modules cloned — use make build redis . Building Redis - flags and general notes Redis can be compiled and used on Linux, OSX, OpenBSD, NetBSD, FreeBSD. We support big endian and little endian architectures, and both 32 bit and 64-bit systems. It may compile on Solaris derived systems (for instance SmartOS) but our support for this platform is best effort and Redis is not guaranteed to work as well as on Linux, OSX, and *BSD. To build Redis with all the data structures (including JSON, time series, Bloom filter, cuckoo filter, count-min sketch, top-k, and t-digest) and with Redis Query Engine, make sure first that all the prerequisites are installed (see Install dependencies and build above), then clone the bundled modules once and build: make modules-update make make (same as make build / make all ) always builds whatever's cloned under modules/*/src alongside Redis core — there's no separate flag to opt in. If nothing is cloned yet, you get a core-only build. To build Redis with just the core data structures — even if modules are already cloned — use: make build redis To build with TLS support, you need OpenSSL development libraries (e.g. libssl-dev on Debian/Ubuntu) and the following flag in the make command: make BUILD_TLS=yes To build with systemd support, you need systemd development libraries (such as libsystemd-dev on Debian/Ubuntu or systemd-devel on CentOS), and the following flag: make USE_SYSTEMD=yes To append a suffix to Redis program names, add the following flag: make PROG_SUFFIX= " -alt " You can build a 32 bit Redis binary using: make 32bit After building Redis, it is a good idea to test it using: make test If TLS is built, running the tests with TLS enabled (you will need tcl-tls installed): ./utils/gen-test-certs.sh ./runtest --tls Redis supports compression of replication stream via zstd as of 8.10. To build with compression support you have to install zstd development libraries (e.g libzstd-dev on Debian/Ubuntu) and use the following flag when invoking the make command: make BUILD_COMPRESSION=yes Fixing build problems with dependencies or cached build options Redis has some dependencies which are included in the deps directory. make does not automatically rebuild dependencies even if something in the source code of dependencies changes. When you update the source code with git pull or when code inside the dependencies tree is modified in any other way, make sure to use the following command in order to really clean everything and rebuild from scratch: make distclean This will clean: jemalloc, lua, hiredis, linenoise and other dependencies. Also, if you force certain build options like 32bit target, no C compiler optimizations (for debugging purposes), and other similar build time options, those options are cached indefinitely until you issue a make distclean command. Fixing problems building 32 bit binaries If after building Redis with a 32 bit target you need to rebuild it with a 64 bit target, or the other way around, you need to perform a make distclean in the root directory of the Redis distribution. In case of build errors when trying to build a 32 bit binary of Redis, try the following steps: Install the package libc6-dev-i386 (also try g++-multilib). Try using the following command line instead of make 32bit : make CFLAGS="-m32 -march=native" LDFLAGS="-m32" Allocator Selecting a non-default memory allocator when building Redis is done by setting the MALLOC environment variable. Redis is compiled and linked against libc malloc by default, except for jemalloc being the default on Linux systems. This default was picked because jemalloc has proven to have fewer fragmentation problems than libc malloc. To force compiling against libc malloc, use: make MALLOC=libc To compile against jemalloc on Mac OS X systems, use: make MALLOC=jemalloc Monotonic clock By default, Redis will build using the POSIX clock_gettime function as the monotonic clock source. On most modern systems, the internal processor clock can be used to improve performance. Cautions can be found here: http://oliveryang.net/2015/09/pitfalls-of-TSC-usage/ On ARM aarch64 systems, the hardware clock is enabled by default because the ARM Generic Timer is architecturally guaranteed to be available and monotonic on all ARMv8-A processors (see the “The Generic Timer in AArch64 state” section of the Arm Architecture Reference Manual for Armv8-A ). To build with support for the processor's internal instruction clock on other architectures, use: make CFLAGS= " -DUSE_PROCESSOR_CLOCK " Verbose build Redis will build with a user-friendly colorized output by default. If you want to see a more verbose output, use the following: make V=1 Running Redis with TLS Please consult the TLS.md file for more information on how to use Redis with TLS. Running Redis with the Query Engine and optional proprietary Intel SVS-VAMANA optimisations License Disclaimer If you are using Redis Open Source under AGPLv3 or SSPLv1, you cannot use it together with the Intel Optimizations (Leanvec and LVQ binaries). The reason is that the Intel SVS license is not compatible with those licenses. The Leanvec and LVQ techniques are closed source and are only available for use with Redis Open Source when distributed under the RSALv2 license. For more details, please refer to the information provided by Intel here . By default, Redis with the Redis Query Engine supports SVS-VAMANA index with global 8-bit quantisation. To compile Redis with the Intel SVS-VAMANA optimisations, LeanVec and LVQ, use the following: make BUILD_INTEL_SVS_OPT=yes Alternatively, you can export the variable before running the build step for your platform: export BUILD_INTEL_SVS_OPT=yes make Code contributions By contributing code to the Redis project in any form, including sending a pull request via GitHub, a code fragment or patch via private email or public discussion groups, you agree to release your code under the terms of the Redis Software Grant and Contributor License Agreement. Please see the CONTRIBUTING.md file in this source distribution for more information. For security bugs and vulnerabilities, please see SECURITY.md and the description of the ability of users to backport security patches under Redis Open Source 7.4+ under BSDv3. Open Source Redis releases are subject to the following licenses: Version 7.2.x and prior releases are subject to BSDv3. These contributions to the original Redis core project are owned by their contributors and licensed under the 3BSDv3 license as referenced in the REDISCONTRIBUTIONS.txt file. Any copy of that license in this repository applies only to those contributions; Versions 7.4.x to 7.8.x are subject to your choice of RSALv2 or SSPLv1; and Version 8.0.x and subsequent releases are subject to the tri-license RSALv2/SSPLv1/AGPLv3 at your option as referenced in the LICENSE.txt file. Redis Trademarks The purpose of a trademark is to identify the goods and services of a person or company without causing confusion. As the registered owner of its name and logo, Redis accepts certain limited uses of its trademarks, but it has requirements that must be followed as described in its Trademark Guidelines available at: https://redis.io/legal/trademark-policy/ .
FreeWindowsmacOSLinux

Explore more categories: