Files
docs/features/csv-upload.mdx
Peter Wood c6eb26037b feat: Add CI/CD setup guide with Gitea Actions for trading analysis application
feat: Implement multi-user support with separate brokerage accounts and user authentication

feat: Configure SSO authentication setup using Google OAuth 2.0 for secure access

refactor: Update index page to reflect new Trading Analysis Dashboard features and descriptions

docs: Enhance quickstart guide for deploying Trading Analysis Dashboard with detailed steps

chore: Add runner configuration for Gitea Actions with logging and container settings
2025-11-14 12:43:09 -05:00

110 lines
3.0 KiB
Plaintext

---
title: 'CSV Upload'
description: 'Import trading data via CSV files with drag-and-drop support'
---
## Overview
The CSV Upload feature allows you to import trading transaction data through an intuitive web interface with drag-and-drop support and real-time processing feedback.
## Features
<CardGroup cols={2}>
<Card title="Drag & Drop" icon="hand-pointer">
Drag CSV files directly onto the upload area
</Card>
<Card title="Progress Tracking" icon="spinner">
Real-time progress bar during processing
</Card>
<Card title="Upload History" icon="clock-rotate-left">
View recent uploads and statistics
</Card>
<Card title="Validation" icon="check">
Automatic CSV format and size validation
</Card>
</CardGroup>
## CSV Format Requirements
Your CSV file must include these columns:
| Column | Format | Description |
|--------|--------|-------------|
| **Date** | MM/DD/YYYY | Transaction date |
| **Action** | Text | Buy, Sell, Cash Dividend, etc. |
| **Symbol** | Text | Stock ticker |
| **Description** | Text | Transaction description |
| **Quantity** | Number | Number of shares (can be empty for dividends) |
| **Price** | Number | Price per share (can be empty for dividends) |
| **Fees & Comm** | Number | Trading fees |
| **Amount** | Number | Total transaction amount |
## Example CSV
```csv
Date,Action,Symbol,Description,Quantity,Price,Fees & Comm,Amount
01/15/2024,Buy,AAPL,Apple Inc,100,150.50,6.95,-15056.95
01/30/2024,Sell,AAPL,Apple Inc,100,155.75,6.95,15568.05
02/15/2024,Cash Dividend,MSFT,Microsoft Corp,,,0.00,75.50
```
## Upload Process
<Steps>
<Step title="Navigate to Upload Page">
Go to `/upload` in your application
</Step>
<Step title="Select File">
Either drag and drop your CSV file or click to browse
</Step>
<Step title="Validation">
The system validates file type (CSV only) and size (50MB max)
</Step>
<Step title="Processing">
Watch real-time progress updates as the file is processed
</Step>
<Step title="Completion">
View the upload in your history and navigate to the dashboard
</Step>
</Steps>
## Processing Flow
1. File uploaded to Flask backend
2. Server validation (file type, size)
3. Trading analysis script processes CSV
4. Database synchronization
5. History updated and temp files cleaned up
## Security
<CardGroup cols={2}>
<Card title="Authentication" icon="lock">
Login required for all uploads
</Card>
<Card title="Validation" icon="shield-check">
File type and size validation
</Card>
<Card title="Sanitization" icon="broom">
Secure filename handling
</Card>
<Card title="Cleanup" icon="trash">
Automatic temp file removal
</Card>
</CardGroup>
## Next Steps
<CardGroup cols={2}>
<Card title="Trading Analysis" icon="chart-line" href="/features/trading-analysis">
Analyze your uploaded data
</Card>
<Card title="Portfolio Management" icon="briefcase" href="/features/portfolio-management">
Track your current holdings
</Card>
</CardGroup>