# Project Overview

## Encord - Secure, Decentralized Communication

Encord represents a paradigm shift in digital messaging, architected as a secure, privacy-focused application that leverages cutting-edge cryptographic techniques and decentralized ledger technology (DLT). Its core mission is to provide a communication channel where user identity is verifiable without reliance on centralized secrets, thereby maximizing security and personal data sovereignty.

### Foundational Security via Zero-Knowledge Proof (ZKP)

The most defining feature of Encord is its implementation of **Zero-Knowledge Proof authentication**. Unlike traditional systems that require users to submit passwords (or hashes thereof) to a server for verification, Encord's ZKP mechanism allows a user to cryptographically *prove* they possess their private key (the 'knowledge') without ever revealing the key itself to the server (the 'zero-knowledge' principle). This fundamentally eliminates the risk of server-side data breaches compromising user credentials, as the server never stores plain passwords or secret proofs. This approach enhances the overall security posture and significantly reduces the attack surface associated with credential management.

### Integration of EVM Wallet Technology

The platform combines this advanced cryptography with the robust security framework of the Ethereum Virtual Machine (EVM) standard. Every user, upon registration, is assigned a unique, non-custodial EVM-compatible wallet. This wallet's public address acts as the user's immutable, verifiable network identity. This strategic choice not only simplifies the authentication process but also lays the groundwork for future interoperability with decentralized finance (DeFi) and potential on-chain governance or rewards systems (Points System). The use of familiar `ethers.js` standards ensures that key generation and cryptographic signing are executed using battle-tested libraries.

### A Comprehensive Technical Blueprint

This documentation serves as a comprehensive technical blueprint detailing the construction and operation of the Encord platform. It systematically guides the developer through critical architectural layers:

1. **System Architecture**: Defining the relationship between the client (React/Vite), the backend (Supabase/PostgreSQL), and the integration of ZKP libraries.
2. **Core Features Implementation**: Detailing the technical mechanics of real-time messaging, conversation management, and the proprietary points system logic.
3. **Database Architecture**: Providing an in-depth look at the PostgreSQL schema, Row Level Security (RLS) policies, and performance optimization techniques necessary to support real-time traffic.

The overall goal of this documentation is to enable seamless development, maintenance, and secure deployment of the Encord messaging ecosystem.
