Skip to content

dynaroars/csconfs

Repository files navigation

📅 CS Conference Deadlines

CSConfs is open-source app for tracking Computer Science conference deadlines, notifications, locations, and more! CSConfs uses conferences defined by CSRankings and CORE (A*). Enjoy tracking your favorite CS conferences!


🌐 Live Site

Visit here 👉 https://roars.dev/csconfs/


📂 Project Structure

  • Open: This project is open-source on GitHub.
  • Tech stuff: This website is built using Vite and React. It is a static site that fetches data from a YAML file and is hosted through Github Pages.
  • Data: Main database is stored in the file public/data/conferences.yaml.

🤝 Contributions

We welcome contributions!

How to contribute:

You can help check, add, or fix inconsistencies about the conferences in the public/data/conferences.yaml file. Use the existing entries in that file as examples to maintain formatting and consistency.

  1. Fork the repository.
  2. Clone your forked repository to your local machine.
  3. Make your changes in the public/data/conferences.yaml file.
  4. Save and Test your changes locally (see below).
  5. Commit and Push your changes with a clear message.
  6. Create a pull request to the original repository.
  7. If you have questions or comments, feel free to open a Github issue.

🧪 To Test Locally

  1. Install dependencies:
# Check versions:
node -v  # v23.11.0 (on my Mac OS)
npm -v   # 11.3.0 (on my Mac OS)

# In the project root, e.g., ~/git/csconfs/ 
npm install
  1. Run the local server:
npm run dev
  1. View in browser:
http://localhost:5173/
  • If there are any errors, check and fix your edits in the public/data/conferences.yaml file.
  1. Stop the server:
# Press Ctrl + C in the terminal

🚀 Deploy to GitHub Pages

Deploy to roars.dev/csconfs (only for maintainers):

# In the project root, e.g., ~/git/csconfs/ and in the `main``
npm run build
  • The script handles deployment to the gh-pages branch. It will automatically build the project and push the changes to the gh-pages branch. So you don't need to push to the gh-pages branch manually.

Created by Roars Lab


🤖 Automated Conference Crawler

We use an LLM-powered script to automatically find and extract the next year's conference details.

Prerequisites

  1. Python 3.10+
  2. Install dependencies:
    pip install requests beautifulsoup4 fake-useragent google-generativeai python-dotenv pyyaml
  3. Get a Gemini API Key:
    • Get a free key from Google AI Studio.
    • Create a .env file in the root directory:
      GEMINI_API_KEY=your_api_key_here

How to Run

python3 scripts/update_confs_llm.py

Output

  • The script looks for series_link in public/data/conferences.yaml.
  • It saves new suggestions to suggested_updates_llm.yaml.
  • Manual Step: Review the suggested_updates_llm.yaml file and manually copy-paste the correct entries into public/data/conferences.yaml.

Limitations

Not every conference is covered by this script. Some conferences use inconsistent URL patterns or complex hosting structures that are difficult to crawl automatically.

Releases

No releases published

Packages

 
 
 

Contributors