Independent, community-built learning portal for Snowflake certification prep.
This repository is configured for:
- Local static web preview (
index.html+app.js+styles.css) - Streamlit publishing (
streamlit_app.py) - GitHub upload/deployment from the
mainbranch
- Certification path cards and study plan timeline
- Exam and difficulty filters
- Quiz flow with explanations and score feedback
- XP/level gamification using browser local storage
- Resource links for hands-on practice
my-snowflake-labs/
├─ .streamlit/
│ └─ config.toml
├─ data/
│ └─ content-v3.json
├─ app.js
├─ index.html
├─ LICENSE
├─ README.md
├─ requirements.txt
├─ streamlit_app.py
└─ styles.css
- Create and activate a virtual environment.
- Install dependencies.
- Run Streamlit.
cd /Users/<your-username>/VSCode/snowflake-labs/my-snowflake-labs
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
streamlit run streamlit_app.pyOpen http://localhost:8501.
cd /Users/<your-username>/VSCode/snowflake-labs/my-snowflake-labs
python3 -m http.server 5173Open http://localhost:5173.
- Push this repo to GitHub.
- In Streamlit Community Cloud, create a new app from this repo.
- Set:
- Branch:
main - Main file path:
streamlit_app.py
- Deploy.
This repository is configured with .github/workflows/pages.yml to deploy the static app from main.
Expected URL:
https://oceanicpatterns.github.io/snowflake-labs/
Notes:
- GitHub Pages serves the static web app (
index.html,styles.css,app.js,data/content-v3.json). streamlit_app.pyis for Streamlit hosting, not GitHub Pages runtime.
cd /Users/<your-username>/VSCode/snowflake-labs/my-snowflake-labs
git init
git checkout -B main
git add .
git commit -m "Prepare repo for Streamlit publishing"
git remote add origin <YOUR_GITHUB_REPO_URL>
git push -u origin mainIf the repo already exists locally, skip git init and only run the missing steps.
Study content is maintained in:
data/content-v3.json
When updating content:
- Keep IDs stable.
- Keep quiz
questionIdsaligned withquizQuestionsIDs. - Validate JSON formatting before committing.
- Secrets are not required for this app.
.streamlit/secrets.tomlis ignored by git.- Vulnerability reporting process is documented in
SECURITY.md. - Keep
mainprotected in GitHub settings (recommended): - Require pull request before merge.
- Require status checks before merge.
This project is independent and not official, sponsored, or affiliated with Snowflake. It is for education and practice only.