Countdown timers to keep track of a bunch of Python conference deadlines.
Contributions are very welcome!
To add or update a deadline:
- Fork the repository
- Update
_data/conferences.yml
- Make sure it has the
conference
,year
,link
,cfp
,place
,sub
attributes- This online web app makes it easy to find timezones – just click! (Based on timezonefinder library)
- Alternatively, see available timezone strings here.
- Optionally add a
note
- Send a pull request
- conference: BestConf # Title of conference
year: 2022 # Year
link: link-to-website.com # URL to conference
cfp: 'YYYY-MM-DD HH:mm:ss' # Deadline for Call for Participation / Proposals
place: Incheon, South Korea # City, Country# Nicely written dates of conference
start: YYYY-MM-DD # Start date of conference for calendar
end: YYYY-MM-DD # End date of conference for calendar
sub: PY # Type of conference (see or add _data/types.yml)
- conference: BestConf # Title of conference
alt_name: Bestest Conf # Names change, keep track of Alternate names here
year: 2022 # Year
link: link-to-website.com # URL to conference
cfp_link: link-to-cfp.com # URL to call for proposals (Optional)
cfp: 'YYYY-MM-DD HH:mm:ss' # Deadline for Call for Participation / Proposals
cfp_ext: 'YYYY-MM-DD HH:mm:ss' # Extension of Deadline for Call for Participation / Proposals
workshop_deadline: 'YYYY-MM-DD HH:mm:ss' # Workshop deadline if different from cfp (Optional)
tutorial_deadline: 'YYYY-MM-DD HH:mm:ss' # Tutorial deadline if different from cfp (Optional)
timezone: Asia/Seoul # Standard IANA Timezones (Omit for AoE)
place: Incheon, South Korea # City, Country# Nicely written dates of conference
start: YYYY-MM-DD # Start date of conference for calendar
end: YYYY-MM-DD # End date of conference for calendar
sponsor: link-to-sponsor.page # URL to Sponsorship page (Optional)
finaid: link-to-finaid.page # URL to Financial Aid page (Optional)
twitter: BestConfEver # Twitter handle of conference (Optional)
mastodon: https://mastodon.social/@bconf # Mastodon handle of conference (Optional)
sub: PY # Type of conference (see or add _data/types.yml)
note: Important # In case there are extra notes about the conference (Optional)
location: # Geolocation for inclusion in map
latitude: 0.00
longitude: 0.00
sub |
Description | Type | Required |
---|---|---|---|
conference |
Title of the conference | str |
✔ |
alt_name |
Alternative Name of conference | str |
|
year |
Year of this conference | int |
✔ |
link |
URL to conference | str |
✔ |
cfp_link |
URL to call for proposals | str |
|
cfp |
Deadline for Call for Participation / Proposals | str |
✔ |
cfp_ext |
Extension for Call for Participation / Proposals | str |
|
workshop_deadline |
Workshop deadline if different from cfp | str |
|
tutorial_deadline |
Tutorial deadline if different from cfp | str |
|
timezone |
Standard IANA Timezones (Omit for AoE) | str |
|
place |
City, Country | str |
✔ |
start |
Start date of conference for calendar | date |
✔ |
end |
End date of conference for calendar | date |
✔ |
finaid |
URL to financial aid information | str |
|
sponsor |
URL to sponsorship opportunities | str |
|
twitter |
Twitter handle of conference | str |
|
mastodon |
Mastodon handle of conference | str |
|
sub |
Type of conference | str |
✔ |
note |
Extra notes about the conference | str |
|
location |
Geolocation for inclusion in map | str |
|
latitude |
Latitude of venue | float |
|
longitude |
Longitude of venue | float |
sub |
Category name |
---|---|
PY |
General Python |
SCIPY |
Scientific Python |
DATA |
Python for Data |
WEB |
Python for Web |
BIZ |
Python for Business |
GEO |
Python for Earth |
I have created extensive scripts to import data from other sources and tidy up entries.
Check out the utils folder for those.
I mainly run the main.py
and sort_yaml.py
to get new entries and move old entries into the archive.
- aideadlines the original
- geodeadlin.es by @LukasMosser
- neuro-deadlines by @tbryn
- ai-challenge-deadlines by @dieg0as
- CV-oriented ai-deadlines (with an emphasis on medical images) by @duducheng
- es-deadlines (Embedded Systems, Computer Architecture, and Cyber-physical Systems) by @AlexVonB and @k0nze
- 2019-2020 International Conferences in AI, CV, DM, NLP and Robotics by @JackieTseng
- ccf-deadlines by @ccfddl
- networking-deadlines (Computer Networking, Measurement) by @andrewcchu
- ad-deadlines.com by @daniel-bogdoll
- sec-deadlines.github.io/ (Security and Privacy) by @clementfung
- pythondeadlin.es by @jesperdramsch
- deadlines.openlifescience.ai (Healthcare domain conferences and workshops) by @monk1337
- hci-deadlines.github.io (Human-Computer Interaction conferences) by @makinteract
- ds-deadlines.github.io (Distributed Systems, Event-based Systems, Performance, and Software Engineering conferences) by @ds-deadlines
- https://deadlines.cpusec.org/ (Computer Architecture-Security conferences) by @hoseinyavarzadeh
- se-deadlines.github.io (Software engineering conferences) by @sivanahamer and @imranur-rahman
- awesome-mlss (Machine Learning Summer Schools) by @sshkhr and @gmberton
# Run all frontend tests
npm test
# Run with coverage report
npm run test:coverage
# Run tests in watch mode (for development)
npm run test:watch
# Debug tests
npm run test:debug
# Install Playwright browsers (first time only)
npm run playwright:install-all
# Run E2E tests
npm run e2e
# Run E2E tests with UI (for debugging)
npm run e2e:ui
# Run E2E tests for specific browser
npm run e2e:fast # Chromium only
npm run e2e:all # All browsers
npm run e2e:mobile # Mobile viewports
# Generate E2E test code
npm run e2e:codegen
# Using pixi (recommended)
pixi run test
pixi run test-cov # With coverage
pixi run test-fast # Stop on first failure
# Or using pytest directly
python -m pytest tests/
python -m pytest tests/ --cov=utils --cov-report=html
# Test Jekyll build
bundle exec jekyll build
# Serve for local testing
pixi run serve
# Or with test configuration
npm run serve:test
The project uses GitHub Actions for automated testing:
- Smart Test Runner: Intelligently skips tests for data-only changes
- Frontend Tests: Run on JavaScript changes
- E2E Tests: Run on frontend/template changes
- Python Tests: Run on utility changes
- Data Validation: Always runs to ensure conference data integrity
See CI Optimization Documentation for details on how we save CI costs.
Python Deadlines is available in multiple languages to make Python conference information accessible to a global audience. We use Crowdin to manage our translations.
- English (en)
- Spanish (es)
- German (de)
- French (fr)
- Portuguese (Brazilian) (pt-br)
- Chinese (Simplified) (zh-cn)
- Russian (ru)
- Indonesian (id)
- Hindi (hi)
We welcome contributions to translate Python Deadlines into more languages! You don't need to be a developer or understand Git to help with translations.
For detailed instructions on how to contribute translations, please see our Translation Guide (TRANSLATION.md).
If you'd like to add support for a new language, please open an issue.
This project is licensed under MIT.
It uses: