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
This commit is contained in:
Peter Wood
2025-11-14 12:43:09 -05:00
parent 2f5e59b40f
commit c6eb26037b
24 changed files with 3594 additions and 169 deletions

View File

@@ -1,80 +1,205 @@
---
title: "Quickstart"
description: "Start building awesome documentation in minutes"
description: "Get your Trading Analysis Dashboard up and running in minutes"
---
## Get started in three steps
## Get Started in Four Steps
Get your documentation site running locally and make your first customization.
Deploy your trading analysis dashboard and start tracking your portfolio performance.
### Step 1: Set up your local environment
### Step 1: Prerequisites
<AccordionGroup>
<Accordion icon="copy" title="Clone your docs locally">
During the onboarding process, you created a GitHub repository with your docs content if you didn't already have one. You can find a link to this repository in your [dashboard](https://dashboard.mintlify.com).
To clone the repository locally so that you can make and preview changes to your docs, follow the [Cloning a repository](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository) guide in the GitHub docs.
<Accordion icon="docker" title="Install Docker">
Install [Docker Desktop](https://www.docker.com/products/docker-desktop/) which includes Docker Compose. This is required for running the application containers.
</Accordion>
<Accordion icon="rectangle-terminal" title="Start the preview server">
1. Install the Mintlify CLI: `npm i -g mint`
2. Navigate to your docs directory and run: `mint dev`
3. Open `http://localhost:3000` to see your docs live!
<Accordion icon="key" title="Get Finnhub API Key">
1. Register for a free account at [Finnhub.io](https://finnhub.io/register)
2. Navigate to your dashboard
3. Copy your API key - you'll need this for real-time price updates
<Tip>Your preview updates automatically as you edit files.</Tip>
<Tip>The free tier includes 60 API calls per minute and real-time US stock quotes</Tip>
</Accordion>
<Accordion icon="google" title="Set up Google OAuth (Optional)">
For secure authentication, create OAuth credentials:
1. Visit [Google Cloud Console](https://console.cloud.google.com/)
2. Create a new project
3. Enable Google+ API
4. Create OAuth 2.0 credentials
5. Copy Client ID and Client Secret
See the [SSO Setup Guide](/guides/setup/sso) for detailed instructions.
</Accordion>
</AccordionGroup>
### Step 2: Deploy your changes
### Step 2: Configure Environment
<AccordionGroup>
<Accordion icon="github" title="Install our GitHub app">
Install the Mintlify GitHub app from your [dashboard](https://dashboard.mintlify.com/settings/organization/github-app).
<Steps>
<Step title="Clone the repository">
```bash
git clone https://your-repo-url/trading-analysis-dashboard.git
cd trading-analysis-dashboard
```
</Step>
<Step title="Copy environment file">
```bash
cp .env.docker .env
```
</Step>
<Step title="Edit .env file">
Update the following values:
Our GitHub app automatically deploys your changes to your docs site, so you don't need to manage deployments yourself.
</Accordion>
<Accordion icon="palette" title="Update your site name and colors">
For a first change, let's update the name and colors of your docs site.
```env .env
# Finnhub Configuration
FINNHUB_API_KEY=your_finnhub_api_key_here
# Database Configuration
POSTGRES_PASSWORD=choose_secure_password
# Flask Configuration
FLASK_SECRET_KEY=generate_random_secret_key
# OAuth Configuration (Optional)
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
AUTHORIZED_USERS=your-email@example.com
```
<Warning>Never commit the `.env` file to version control!</Warning>
</Step>
</Steps>
1. Open `docs.json` in your editor.
2. Change the `"name"` field to your project name.
3. Update the `"colors"` to match your brand.
4. Save and see your changes instantly at `http://localhost:3000`.
### Step 3: Deploy
<Tip>Try changing the primary color to see an immediate difference!</Tip>
</Accordion>
</AccordionGroup>
<Tabs>
<Tab title="Windows">
```batch
deploy.bat
```
</Tab>
<Tab title="Linux/macOS">
```bash
chmod +x deploy.sh
./deploy.sh
```
</Tab>
<Tab title="Manual">
```bash
docker compose up -d
docker compose ps
```
</Tab>
</Tabs>
### Step 3: Go live
<Check>
Wait for all containers to start. This may take a minute for first-time setup.
</Check>
<Accordion icon="rocket" title="Publish your docs">
1. Commit and push your changes.
2. Your docs will update and be live in moments!
</Accordion>
### Step 4: Access and Configure
## Next steps
<Steps>
<Step title="Open the application">
Navigate to `http://localhost:8080` in your browser
</Step>
<Step title="Login (if OAuth enabled)">
Click "Sign in with Google" and authorize the application
</Step>
<Step title="Set up your profile">
Add your brokerage account number in the profile page
</Step>
<Step title="Upload trading data">
Go to the Upload page and import your CSV transaction history
</Step>
</Steps>
Now that you have your docs running, explore these key features:
## Next Steps
Now that your dashboard is running, explore these features:
<CardGroup cols={2}>
<Card title="Write Content" icon="pen-to-square" href="/essentials/markdown">
Learn MDX syntax and start writing your documentation.
<Card title="Portfolio Management" icon="chart-line" href="/features/portfolio-management">
Add your holdings and track real-time performance
</Card>
<Card title="Customize style" icon="palette" href="/essentials/settings">
Make your docs match your brand perfectly.
<Card title="CSV Upload" icon="file-csv" href="/features/csv-upload">
Import your trading history from your broker
</Card>
<Card title="Add code examples" icon="square-code" href="/essentials/code">
Include syntax-highlighted code blocks.
<Card title="Trading Analysis" icon="magnifying-glass-chart" href="/features/trading-analysis">
Analyze monthly trading performance and P&L
</Card>
<Card title="API documentation" icon="code" href="/api-reference/introduction">
Auto-generate API docs from OpenAPI specs.
<Card title="API Reference" icon="code" href="/api-reference/introduction">
Integrate with the REST API
</Card>
</CardGroup>
## Common Tasks
### View Logs
```bash
# All services
docker compose logs -f
# Specific service
docker compose logs -f trading_app
```
### Restart Services
```bash
docker compose restart
```
### Update Application
```bash
docker compose pull
docker compose up -d
```
### Backup Database
```bash
docker compose exec postgres pg_dump -U trading_user mining_wood > backup.sql
```
## Troubleshooting
<AccordionGroup>
<Accordion title="Application won't start">
Check the logs for errors:
```bash
docker compose logs trading_app
```
Common issues:
- Missing environment variables
- Database connection failure
- Port 8080 already in use
</Accordion>
<Accordion title="Can't login">
- Verify OAuth credentials are correct in `.env`
- Check that your email is in `AUTHORIZED_USERS`
- Clear browser cookies and try again
</Accordion>
<Accordion title="Prices not updating">
- Verify `FINNHUB_API_KEY` is set correctly
- Check API quota hasn't been exceeded
- Review application logs for API errors
</Accordion>
</AccordionGroup>
<Note>
**Need help?** See our [full documentation](https://mintlify.com/docs) or join our [community](https://mintlify.com/community).
**Need help?** Check our [deployment guide](/guides/deployment/docker) or [setup guides](/guides/setup/cicd) for more detailed instructions.
</Note>