Nurturing a community of care, compassion, and growth.
The same heart of PyCon APAC, now as PythonAsia.
PythonAsia 2026 is the official website for the PythonAsia conference, built with Django and featuring integration with Pretalx for event management.
- Modern Django Application: Built with Django 5.2+ and Python 3.13+
- Responsive Design: Tailwind CSS with DaisyUI components for beautiful, mobile-first design
- Pretalx Integration: Full integration with Pretalx for conference management
- Production Ready: Configured for deployment on Render with PostgreSQL
- Monitoring: Sentry integration for error tracking and performance monitoring
- Static File Optimization: WhiteNoise for efficient static file serving
pythonasia/
├── app/ # Django applications
│ ├── home/ # Home page and landing
│ ├── presentations/ # Presentation management
│ ├── speakers/ # Speaker profiles
│ └── sponsors/ # Sponsor information
├── config/ # Django configuration
├── services/ # External service integrations
│ └── pretalx_service.py # Pretalx API integration
├── static/ # Static assets (CSS, images)
├── templates/ # Django templates
├── src/ # Source CSS files
└── deploy/ # Deployment scripts
- Backend: Django 5.2+
- Frontend: Tailwind CSS with DaisyUI
- Database: PostgreSQL (production) / SQLite (development)
- Deployment: Render
- Monitoring: Sentry
- Package Management: uv
- Python 3.13+
- uv (recommended) or pip
-
Clone the repository
git clone <repository-url> cd pythonasia
-
Install dependencies
# Using uv (recommended) uv sync # Or using pip pip install -e .
-
Set up the database
make setup-db
-
Set up Tailwind CSS
make run-tailwind-setup
-
Run the development server
# With Tailwind watching for changes make run-server-tailwind # Or just Django make run
The application will be available at http://localhost:8000
Create a .env
file in the project root:
# Required for production
SECRET_KEY=your-secret-key-here
DEBUG=False
APP_ENV=production
DATABASE_URL=postgresql://user:password@host:port/database
# Optional
SENTRY_DSN=your-sentry-dsn
PRETALX__BASE_URL=https://your-pretalx-instance.com
PRETALX__API_TOKEN=your-pretalx-api-token
This project uses Tailwind CSS with DaisyUI for styling:
# Watch for CSS changes
make run-tailwind-watch
# Build CSS for production
make run-tailwind-build
# Configure Tailwind
make run-tailwind-config
The application is configured for deployment on Render:
- Database: PostgreSQL (free tier)
- Web Service: Python runtime with automatic builds
- Static Files: Served via WhiteNoise
# Build static files
make run-tailwind-build
# Collect static files
python manage.py collectstatic
# Run migrations
python manage.py migrate
# Development
make run # Start Django development server
make run-server-tailwind # Start server with Tailwind watching
make setup-db # Create and run migrations
# Code Quality
make run-ruff # Run Ruff linting and formatting
make run-pre-commit # Run pre-commit hooks
# Tailwind CSS
make run-tailwind-setup # Initial Tailwind setup
make run-tailwind-watch # Watch for CSS changes
make run-tailwind-build # Build CSS for production
make run-tailwind-config # Configure Tailwind
The application integrates with Pretalx for conference management:
- Event Information: Fetch event details
- Submissions: Manage talk submissions
- Speakers: Speaker profiles and information
- Talks: Confirmed talks and schedules
- Feedback: Submission feedback system
- Fork the repository
- Create a feature branch
- Make your changes
- Run code quality checks:
make run-ruff
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
PythonAsia 2026 is co-organized by Python Philippines and the Python community across Asia.
For more information about PythonAsia 2026, visit pythonasia.python.ph