Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yeungadrian/portfoliobuilder
Investment analytics app (FastAPI, Artifact Registry, Cloud Run)
https://github.com/yeungadrian/portfoliobuilder
fastapi google-cloud python
Last synced: about 2 months ago
JSON representation
Investment analytics app (FastAPI, Artifact Registry, Cloud Run)
- Host: GitHub
- URL: https://github.com/yeungadrian/portfoliobuilder
- Owner: yeungadrian
- Created: 2020-03-22T14:21:06.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-10-23T20:59:31.000Z (3 months ago)
- Last Synced: 2024-10-24T08:55:23.246Z (3 months ago)
- Topics: fastapi, google-cloud, python
- Language: Python
- Homepage: https://portfoliobuilder.streamlit.app
- Size: 16.5 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# PortfolioBuilder
View live API docs @ https://portfoliobuilder-jfv66mvjvq-ew.a.run.app/redoc
Goals:
1. Minimalish but still effective FastAPI + Github Action setup
2. Exploring severless with Google Cloud (Artifact Regsitry, Cloud Run)
3. Refresh knowledge on portfolio optimisation## Quickstart
Run locally with uv
```
uv sync --all-extras --dev
uv run -- uvicorn app.main:app --reload
uv run -- streamlit run streamlit_app.py
```
Run locally with docker
```
docker build -t portfoliobuilder .
docker run --rm -it -p 8000:8000/tcp portfoliobuilder:latest
```
## Architecture```mermaid
architecture-beta
group github(cloud)[Github]
service github_action(cloud)[Github Actions] in githubgroup google_cloud(cloud)[Google Cloud]
service artifact_registry(cloud)[Artifact Registry] in google_cloud
service cloud_run(cloud)[Google Cloud Run] in google_cloudgroup StreamlitCloud(cloud)[Streamlit Cloud]
service Streamlit(cloud)[Streamlit] in StreamlitCloudgithub_action:R --> L:artifact_registry
github_action:R --> L:cloud_run
artifact_registry:T --> B:cloud_runcloud_run:R --> L:Streamlit
```
Note: Mermaid supported icons is very limited for now.