Skip to content

feat!: v0.3.0 #212

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 50 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
9aee35f
split structure
cofin Apr 26, 2025
a80a9d1
feat: all of it
cofin Apr 27, 2025
a79062c
fix: ui updates
cofin Apr 27, 2025
dcac8ce
fix: js build
cofin Apr 27, 2025
070406c
feat: ignore
cofin Apr 27, 2025
7617975
fix: build issues
cofin Apr 27, 2025
b3ce6dd
feaet: updated build
cofin Apr 27, 2025
9b91a3b
feat: integration update
cofin Apr 27, 2025
932149e
feat: support upsert
cofin May 1, 2025
3fbdb86
fix: bump deps
cofin May 2, 2025
0b75f79
feat: lots 'o stuff
cofin May 2, 2025
79cb495
chore: updated deps
cofin May 2, 2025
d5a9986
feat: linting
cofin May 2, 2025
1f2f698
fix: formatting
cofin May 2, 2025
f069ebe
feat: implement `minio` object storage
cofin May 3, 2025
07faa8c
feat: updated tests
cofin May 3, 2025
c4b568c
fix: implement landing update
cofin May 4, 2025
1111512
fix: updated route
cofin May 4, 2025
9f7266d
fix: updated configs
cofin May 4, 2025
fa3d1a0
fix: name correction
cofin May 4, 2025
dad6fd8
fix: linting
cofin May 4, 2025
480bcdf
fix: dockerfile update
cofin May 4, 2025
2678268
fix: linting
cofin May 4, 2025
4c14009
feat: exclude saq tables in alembic
cofin May 4, 2025
52661b9
feat: add a `TeamFiles` relationship
cofin May 4, 2025
2abb346
chore: v3 fe overhaul (#209)
Harshal6927 May 4, 2025
bdfacc3
feat: dict support for env parsing
cofin May 4, 2025
ef99019
feat: schema and services for team files
cofin May 4, 2025
75a172b
fix: linting
cofin May 4, 2025
13d8f32
feat: wip k8s templater
cofin May 4, 2025
6071a6c
fix: help cleanup
cofin May 4, 2025
c58db11
chore: ui cleanup (#211)
Harshal6927 May 5, 2025
8077eed
feat: move engine creation to util
cofin May 5, 2025
73239f7
fix: logout
Harshal6927 May 5, 2025
ed55295
feat: team invitations
cofin May 5, 2025
fe83976
fix: backend storage
cofin May 5, 2025
5830e17
feat: disable stack traces
cofin May 5, 2025
caebf02
fix: suppress tracebacks for 404s
cofin May 5, 2025
aac6b45
fix: let's try this again...
cofin May 5, 2025
c71e4b1
feat: silence audit warnings
cofin May 5, 2025
202b6f3
feat: further flatten structure
cofin May 13, 2025
b703e9a
feat: cursor rules
cofin Jun 3, 2025
0a1eea7
feat: rules
cofin Jun 4, 2025
91a6b1d
wip
cofin Jun 6, 2025
1d9264e
wip
cofin Jun 6, 2025
62a7f23
feat: email, invites, and oauth
cofin Jun 8, 2025
9231768
V3 login UI (#215)
Harshal6927 Jun 20, 2025
e66aa3b
feat: ready for debugging
cofin Jun 10, 2025
bca6dde
fix: updated fixtures
cofin Jun 10, 2025
e25d84f
feat: update deps
cofin Jun 25, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
108 changes: 93 additions & 15 deletions .env.local.example
Original file line number Diff line number Diff line change
@@ -1,29 +1,107 @@
# App
SECRET_KEY='secret-key'
# App Configuration
SECRET_KEY='your-secret-key-here'
LITESTAR_DEBUG=true
LITESTAR_HOST=0.0.0.0
LITESTAR_PORT=8089
APP_URL=http://localhost:${LITESTAR_PORT}
LITESTAR_PORT=8000
APP_URL=http://localhost:8000
LOG_LEVEL=20

LOG_LEVEL=10
# Database
DATABASE_ECHO=true
DATABASE_ECHO_POOL=true
# Database Configuration
DATABASE_ECHO=false
DATABASE_ECHO_POOL=false
DATABASE_POOL_DISABLE=false
DATABASE_POOL_MAX_OVERFLOW=5
DATABASE_POOL_MAX_OVERFLOW=10
DATABASE_POOL_SIZE=5
DATABASE_POOL_TIMEOUT=30
DATABASE_URL=postgresql+asyncpg://app:app@localhost:15432/app
DATABASE_USER=app
DATABASE_PASSWORD=app
DATABASE_HOST=localhost
DATABASE_PORT=5432
DATABASE_DB=app
DATABASE_URL=postgresql://${DATABASE_USER}:${DATABASE_PASSWORD}@${DATABASE_HOST}:${DATABASE_PORT}/${DATABASE_DB}

REDIS_URL=redis://localhost:16379/0
# Redis Configuration
REDIS_URL=redis://localhost:6379/0

# Worker
SAQ_USE_SERVER_LIFESPAN=True
# Worker Configuration
SAQ_USE_SERVER_LIFESPAN=False
SAQ_WEB_ENABLED=True
SAQ_BACKGROUND_WORKERS=1
SAQ_CONCURRENCY=1

VITE_HOST=localhost
VITE_PORT=5174
# Frontend Configuration
VITE_USE_SERVER_LIFESPAN=True
VITE_HOT_RELOAD=True
VITE_DEV_MODE=True
VITE_HOST=localhost
VITE_PORT=3006
ALLOWED_CORS_ORIGINS=["localhost:3006","localhost:8080","localhost:8000"]

# Storage Configuration
APP_SCRATCH_PATH=/tmp/app

# Email Configuration (SMTP)
EMAIL_ENABLED=true # Set to true to enable email sending
EMAIL_SMTP_HOST=localhost # For MailHog: localhost, for production: your SMTP host
EMAIL_SMTP_PORT=11025 # For MailHog: 11025, for production: 587 (TLS) or 465 (SSL)
EMAIL_SMTP_USER= # MailHog doesn't require auth, leave empty for dev
EMAIL_SMTP_PASSWORD= # MailHog doesn't require auth, leave empty for dev
EMAIL_USE_TLS=false # MailHog doesn't use TLS, set true for production
EMAIL_USE_SSL=false # MailHog doesn't use SSL, set true for production
EMAIL_FROM_ADDRESS=noreply@localhost # Default from email
EMAIL_FROM_NAME="Litestar Dev App" # Default from name
EMAIL_TIMEOUT=30 # SMTP connection timeout in seconds

# OAuth Configuration

# Keycloak (Local Development OAuth Server)
# ==========================================
# Access Keycloak admin at: http://localhost:18080 (admin/admin)
# Create a client with these settings for development OAuth testing
OAUTH_ENABLED=true
GOOGLE_CLIENT_ID=litestar-app # Your Keycloak client ID
GOOGLE_CLIENT_SECRET=your-client-secret # Generated in Keycloak client settings
GOOGLE_REDIRECT_URI=http://localhost:3000/auth/google/callback

# Production Google OAuth (replace Keycloak values above when deploying)
# GOOGLE_CLIENT_ID=your-production-google-client-id
# GOOGLE_CLIENT_SECRET=your-production-google-client-secret
# GOOGLE_REDIRECT_URI=https://yourdomain.com/auth/google/callback

# MailHog (Development Email Testing)
# ====================================
# Access MailHog web UI at: http://localhost:8025
# MailHog SMTP server runs on: localhost:1025
# MailHog catches all emails sent to it during development

# Example Production Email Provider Configurations:
# =================================================

# Gmail (requires app password):
# EMAIL_SMTP_HOST=smtp.gmail.com
# EMAIL_SMTP_PORT=587
# [email protected]
# EMAIL_SMTP_PASSWORD=your-app-password
# EMAIL_USE_TLS=true
# EMAIL_USE_SSL=false

# SendGrid:
# EMAIL_SMTP_HOST=smtp.sendgrid.net
# EMAIL_SMTP_PORT=587
# EMAIL_SMTP_USER=apikey
# EMAIL_SMTP_PASSWORD=your-sendgrid-api-key
# EMAIL_USE_TLS=true

# AWS SES:
# EMAIL_SMTP_HOST=email-smtp.us-east-1.amazonaws.com
# EMAIL_SMTP_PORT=587
# EMAIL_SMTP_USER=your-ses-smtp-username
# EMAIL_SMTP_PASSWORD=your-ses-smtp-password
# EMAIL_USE_TLS=true

# Mailgun:
# EMAIL_SMTP_HOST=smtp.mailgun.org
# EMAIL_SMTP_PORT=587
# [email protected]
# EMAIL_SMTP_PASSWORD=your-mailgun-password
# EMAIL_USE_TLS=true
54 changes: 0 additions & 54 deletions .eslintrc.cjs

This file was deleted.

16 changes: 10 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,7 @@ celerybeat.pid
.env*
!.env.*.example
!.env.testing
!tools/deploy/docker/.env.docker
.venv
env/
venv/
Expand Down Expand Up @@ -131,11 +132,12 @@ dmypy.json

# Pyre type checker
.pyre/

.claude/
.cursor/
# vscode
# .vscode
.venv

TODO.md
# Logs
logs
*.log
Expand Down Expand Up @@ -167,15 +169,17 @@ tmp/
temp/

# built files from the web UI
src/app/domain/web/public
src/app/domain/web/public/hot
src/py/app/server/web/public/*
src/py/app/server/web/static/*
src/py/app/server/public/*
.vite
src/app/domain/web/static
public/hot
public/bundle
pdm-pythn

pdm-python
db.duckdb
local.duckdb

requirements.txt
dist-ssr
*.local
23 changes: 15 additions & 8 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,17 @@ default_language_version:
python: "3"
repos:
- repo: https://github.com/compilerla/conventional-pre-commit
rev: v4.0.0
rev: v4.2.0
hooks:
- id: conventional-pre-commit
stages: [commit-msg]
- repo: local
hooks:
- id: local-biome-check
name: biome check
entry: npx @biomejs/biome check --write --files-ignore-unknown=true --no-errors-on-unmatched --config-path src/js/biome.json
language: system
types: [text]
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
Expand All @@ -17,15 +24,15 @@ repos:
- id: mixed-line-ending
- id: trailing-whitespace
- repo: https://github.com/charliermarsh/ruff-pre-commit
rev: "v0.9.10"
rev: "v0.12.0"
hooks:
# Run the linter.
- id: ruff
types_or: [ python, pyi ]
args: [ --fix ]
# Run the formatter.
- id: ruff-format
types_or: [ python, pyi ]
- id: ruff
types_or: [python, pyi]
args: [--fix]
# Run the formatter.
- id: ruff-format
types_or: [python, pyi]
- repo: https://github.com/codespell-project/codespell
rev: v2.4.1
hooks:
Expand Down
14 changes: 0 additions & 14 deletions .prettierignore

This file was deleted.

7 changes: 0 additions & 7 deletions .prettierrc.json

This file was deleted.

9 changes: 1 addition & 8 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,3 @@
{
"recommendations": [
"mikestead.dotenv",
"christian-kohler.path-intellisense",
"ms-python.vscode-pylance",
"ms-python.python",
"charliermarsh.ruff",
"ms-python.mypy-type-checker"
]
"recommendations": ["mikestead.dotenv", "christian-kohler.path-intellisense", "ms-python.vscode-pylance", "ms-python.python", "charliermarsh.ruff", "ms-python.mypy-type-checker"]
}
Loading
Loading