{"id":28708319,"url":"https://github.com/ray8118/crypto-portfolio","last_synced_at":"2025-10-10T07:19:38.672Z","repository":{"id":297045442,"uuid":"994828161","full_name":"RaY8118/Crypto-Portfolio","owner":"RaY8118","description":"Crypto Portfolio Tracker is a full-stack web application that helps users efficiently track and manage their cryptocurrency portfolios in real time. It features a secure backend API built with FastAPI and a modern, responsive frontend built with React and Tailwind CSS.","archived":false,"fork":false,"pushed_at":"2025-07-08T07:23:01.000Z","size":230,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-07-08T08:34:52.181Z","etag":null,"topics":["fastapi","python","react","sqlalchemy","sqlite","tailwindcss","typescript","uv"],"latest_commit_sha":null,"homepage":"https://crypto-portfolio-69v.pages.dev/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RaY8118.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-02T14:41:54.000Z","updated_at":"2025-07-08T07:23:04.000Z","dependencies_parsed_at":"2025-06-04T01:06:07.124Z","dependency_job_id":"80f94d9c-292c-42f6-9be4-c13d0461fd28","html_url":"https://github.com/RaY8118/Crypto-Portfolio","commit_stats":null,"previous_names":["ray8118/crypto-portfolio"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/RaY8118/Crypto-Portfolio","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RaY8118%2FCrypto-Portfolio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RaY8118%2FCrypto-Portfolio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RaY8118%2FCrypto-Portfolio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RaY8118%2FCrypto-Portfolio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RaY8118","download_url":"https://codeload.github.com/RaY8118/Crypto-Portfolio/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RaY8118%2FCrypto-Portfolio/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279003172,"owners_count":26083533,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-10T02:00:06.843Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["fastapi","python","react","sqlalchemy","sqlite","tailwindcss","typescript","uv"],"created_at":"2025-06-14T18:10:36.326Z","updated_at":"2025-10-10T07:19:38.667Z","avatar_url":"https://github.com/RaY8118.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Crypto Portfolio Tracker\n\nThis is a full-stack application designed to help users track their cryptocurrency portfolios. It features a secure backend API built with FastAPI and a responsive frontend built with React.\n\n## Features\n\n### Backend\n- **User Authentication:** Secure user registration and login using JWT (JSON Web Tokens).\n- **Portfolio Management:** API endpoints to manage user portfolios, including adding, updating, and deleting crypto assets.\n- **Trade Tracking:** Functionality to record and track cryptocurrency trades.\n    - **Real-time Price Data:** Integration to fetch real-time cryptocurrency prices using the Binance API.\n- **Database:** Uses SQLite for data storage (indicated by `crypto_portfolio.db`).\n\n### Frontend\n- **User Interface:** A modern and responsive user interface built with React.\n- **Authentication Flows:** User registration, login, and protected routes.\n- **Dashboard:** A dashboard to display portfolio overview.\n- **Routing:** Client-side routing using React Router DOM.\n- **Styling:** Styled with Tailwind CSS.\n\n## Technologies Used\n\n### Backend\n- **Framework:** FastAPI\n- **Database:** SQLite (via SQLAlchemy ORM)\n- **Authentication:** PyJWT\n- **Dependency Management:** uv (or pip/Poetry)\n\n### Frontend\n- **Framework:** React\n- **Build Tool:** Vite\n- **Styling:** Tailwind CSS\n- **Routing:** React Router DOM\n- **API Client:** Axios\n- **State Management:** React Context API (for authentication)\n\n## Setup Instructions\n\n### Prerequisites\n- Python 3.10+\n- Node.js (LTS recommended)\n- bun (or npm/yarn)\n\n### Backend Setup\n\n1.  **Navigate to the backend directory:**\n    ```bash\n    cd backend\n    ```\n\n2.  **Install dependencies:**\n    ```bash\n    uv sync\n    # or if using pip:\n    # pip install -r requirements.txt\n    # (you might need to generate requirements.txt from pyproject.toml first)\n    ```\n\n3.  **Start the backend server:**\n    ```bash\n    uvicorn main:app --reload\n    ```\n    The backend API will typically run on `http://localhost:8000`.\n\n### Frontend Setup\n\n1.  **Navigate to the frontend directory:**\n    ```bash\n    cd frontend\n    ```\n\n2.  **Install dependencies:**\n    ```bash\n    bun install\n    # or if using npm:\n    # npm install\n    # or if using yarn:\n    # yarn install\n    ```\n\n3.  **Start the frontend development server:**\n    ```bash\n    bun dev\n    # or if using npm:\n    # npm run dev\n    ```\n    The frontend application will typically run on `http://localhost:5173` (or another port as configured by Vite).\n\n## Usage\n\n1.  **Register a new user** or **Log in** with existing credentials on the frontend.\n2.  Once logged in, you will be redirected to the **Dashboard**.\n3.  From the dashboard, you can manage your cryptocurrency portfolio and track trades.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fray8118%2Fcrypto-portfolio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fray8118%2Fcrypto-portfolio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fray8118%2Fcrypto-portfolio/lists"}