# rotki Documentation > All you need to start using rotki, or contributing to it. ## Table of Contents ### Installation - [Installation](/requirement-and-installation.md): Install rotki from pre-built binaries, run it in Docker, or build from source. - [Download & Install](/requirement-and-installation/download.md): Download and install rotki on Linux, macOS, or Windows using the official pre-built binaries. - [Docker & Self-Hosting](/requirement-and-installation/docker.md): Run rotki in a Docker container, with configuration, Docker Compose templates, updating, and migrating data from the desktop app. - [Verify Your Download](/requirement-and-installation/verify.md): Verify the integrity and authenticity of rotki binaries using SHA512 checksums and GitHub Artifact Attestations. - [Build from Source](/requirement-and-installation/build-from-source.md): Build rotki from source for development or to run unreleased code, with backend, frontend, and packaging instructions. ### Usage Guides - [Quick Start Guide](/usage-guides/quick-start.md): Step-by-step walkthrough to get started with rotki, from installation to generating your first PnL report. - [Accounts & Sync](/usage-guides.md): Reference for rotki account setup, sign-in, premium sync, data restoration, and upgrading between versions. #### Portfolio - [Dashboard](/usage-guides/portfolio/dashboard.md): Overview of the rotki dashboard showing total balance, net value graph, balance breakdowns, and asset holdings. - [Tracking Accounts](/usage-guides/portfolio/accounts.md): Adding and managing blockchain accounts (EVM, Bitcoin, Substrate, Solana) and exchange connections. - [Balances](/usage-guides/portfolio/balances.md): Viewing exchange balances, adding manual balances, tracking NFTs, airdrops, and managing snapshots. #### History & Events - [History events](/usage-guides/history/events.md): Browsing, filtering, decoding, and editing historical events from exchanges and blockchains. - [Onchain Transactions](/usage-guides/history/onchain.md): Sending on-chain transactions from rotki via WalletConnect or browser wallet on supported EVM chains. - [Import CSV](/usage-guides/history/import-data.md): Importing trade and transaction data from CSV files exported by exchanges into rotki. #### Tax & Accounting - [Using rotki for Tax Accounting](/usage-guides/tax-accounting/guide.md): Step-by-step walkthrough for calculating crypto taxes with rotki, from data setup to PnL report generation. - [Creating a profit/loss report](/usage-guides/history/pnl.md): Generating profit/loss reports with FIFO, LIFO, HIFO, or ACB methods and exporting results. - [Event Types and Subtypes Reference](/usage-guides/tax-accounting/event-types.md): Complete reference of all event types and subtypes in rotki with examples and default tax treatments. - [Accounting Rule Options Explained](/usage-guides/tax-accounting/accounting-rules.md): Detailed explanation of every accounting setting in rotki including cost basis methods and tax-free periods. #### Tracking - [Staking](/usage-guides/staking.md): How to track ETH2 validator staking, Liquity staking, Kraken staking, and Lido CSM node operation in rotki. - [Statistics](/usage-guides/statistics.md): Viewing net value graphs, asset amount/value charts, and balance snapshots with rotki premium. #### Integrations - [Exchange API Keys](/usage-guides/integrations/exchange-keys.md): Connecting centralized exchanges to rotki via API keys, with per-exchange setup instructions. - [External Services](/usage-guides/integrations/external-services.md): Configuring external service API keys such as Etherscan, CryptoCompare, and other data providers. - [Calendar](/usage-guides/integrations/calendar.md): Using the calendar to track events, set reminders, and receive automatic alerts like ENS expiration. #### Utilities - [Utilities](/usage-guides/utilities.md): Quick-access utilities in rotki including global search, in-app notes, and background task management. - [Help & Support](/usage-guides/utilities/help.md): Accessing help resources, reporting bugs, and submitting feature requests through the in-app support menu. #### Data Management - [Assets Management](/usage-guides/data-management/assets.md): Managing supported assets, adding custom tokens, merging duplicates, and whitelisting spam tokens. - [Adding missing prices](/usage-guides/data-management/prices.md): Adding custom latest and historical prices for assets that rotki cannot retrieve automatically. - [Address Book](/usage-guides/data-management/address-book.md): Managing global and private address book entries to replace blockchain addresses with human-readable names. - [Tag Management](/usage-guides/data-management/tags.md): Creating and editing tags with custom labels, descriptions, and colors for organizing accounts and balances. #### Settings - [General Settings](/usage-guides/settings/general.md): Configuring general app settings including profit currency, analytics, CSV export, and NFT display options. - [Interface Settings](/usage-guides/settings/interface.md): Customizing the rotki interface including language, theme, animations, balance refresh, and explorer links. - [Accounting Settings](/usage-guides/settings/accounting.md): Configuring accounting rules, cost basis methods, trade settings, and custom event rules for PnL reports. - [Blockchain & EVM Settings](/usage-guides/settings/blockchain.md): Configuring EVM chain settings, RPC nodes, transaction indexers, price oracles, and DeFi modules. - [Account & Database Settings](/usage-guides/settings/account.md): Managing account passwords, database backups, data purging, and user settings import/export. #### Advanced - [Troubleshooting](/usage-guides/advanced/troubleshooting.md): Fixing common rotki issues such as login errors, frontend settings corruption, and data problems. - [Set the backend's arguments](/usage-guides/advanced/backend-config.md): Customizing rotki backend arguments via rotki_config.json for log levels, data directories, and more. - [rotki data directory](/usage-guides/advanced/data-directory.md): Default rotki data directory locations on Linux, macOS, and Windows, plus backup recommendations. - [Accessing the database manually](/usage-guides/advanced/database-access.md): How to open and query the encrypted rotki SQLite database using DB Browser for SQLite or sqlcipher CLI. - [Using rotki from mobile](/usage-guides/advanced/mobile.md): Accessing rotki from a mobile device using DAppNode VPN or Docker with an authenticated proxy. ### Premium - [Premium Overview](/premium.md): Overview of rotki premium subscription tiers, features, and how to get started with premium. - [Plans & Pricing](/premium/plans-and-pricing.md): Comparing rotki premium subscription tiers, billing cycles, and choosing the right plan. - [Payment Process](/premium/payment.md): Step-by-step guide to purchasing a rotki premium subscription including plan selection and payment. - [Subscription Management](/premium/subscription.md): Managing your rotki premium subscription, viewing payment history, canceling, and renewing plans. - [API Credentials](/premium/api-keys.md): Creating, managing, and securing rotki premium API key and secret credentials for app activation. - [Payment Methods](/premium/payment-methods.md): Managing saved credit/debit cards and setting default payment methods for rotki premium renewals. - [Device Management](/premium/devices.md): Managing devices connected to your rotki premium subscription and understanding per-tier device limits. - [Referral Program](/premium/referrals.md): Creating and using rotki premium referral codes for discounts on first subscriptions. ### Contribution Guides - [rotki Contribution Guide](/contribution-guides.md): How to contribute to rotki including bug reporting, debug mode, feature requests, and development setup. - [Feature Requests](/contribution-guides/feature-requests.md): How to submit feature requests for rotki using the GitHub issue template. - [Contributing as a Developer](/contribution-guides/contribute-as-developer.md): Developer contribution guide covering commit rules, linting, PR process, CLA, and development environment setup. - [Working on issues](/contribution-guides/working-on-issues.md): Workflow for picking up issues, opening PRs, and coordinating between backend and frontend teams. - [Python Code Testing](/contribution-guides/python-testing.md): Running the Python test suite, linting with ruff/mypy/pylint, and mocking network calls in tests. - [Vue/TypeScript](/contribution-guides/vue-typescript.md): Running Vue/TypeScript unit tests with vitest and end-to-end tests with Playwright for the rotki frontend. - [Manual Testing](/contribution-guides/manual-testing.md): Manual testing checklist for rotki release binaries covering startup, trades, imports, and exchanges. - [Code Profiling](/contribution-guides/code-profiling.md): Profiling rotki Python code using flamegraphs and viztracer to identify performance bottlenecks. - [rotki Database](/contribution-guides/rotki-database.md): Architecture of rotki's SQLite databases, schema upgrades, data migrations, and cache management. - [Docker Publishing (Manual)](/contribution-guides/docker-publishing.md): Manual steps for building and publishing multi-architecture rotki Docker images to Docker Hub. - [Working with the Frontend](/contribution-guides/working-with-frontend.md): Frontend development setup including editor integration, environment variables, and development proxy config. ### Other - [Frequently Asked Questions](/faq.md): Frequently asked questions about rotki, premium subscriptions, supported exchanges, and common issues. - [What is rotki?](/index.md): Documentation for rotki, an open-source crypto portfolio tracker and tax reporting tool.