Skip to content

Contributing Guide

Thank you for your interest in contributing to @daniel-murnane/core! This document outlines how to collaborate, co-author, and integrate with the library.

Ways to Contribute

Research Collaboration

typescript
const collaboration = await daniel.propose({
  type: 'research',
  topic: 'your-idea-here',
  format: 'paper' | 'project' | 'grant',
  timeline: '6-12 months'
});

Open to collaborations involving:

  • Graph neural networks for scientific applications
  • ML for particle physics (especially tracking/reconstruction)

How to propose:

Student Projects

typescript
const project = await daniel.supervise({
  level: 'masters' | 'phd' | 'bachelor',
  topic: 'negotiable',
  prerequisites: ['python', 'basic-ml', 'curiosity'],
  location: 'Copenhagen'
});

Available project areas:

Speaking & Workshops

typescript
const talk = await daniel.book({
  type: 'seminar' | 'workshop' | 'keynote' | 'tutorial',
  topics: [
    'GNNs for particle tracking',
    'ML in ATLAS',
    'physics-informed ML',
    // add your talk topics
  ],
  format: 'in-person' | 'remote' | 'hybrid'
});

Code Contributions

Contributions to open-source projects are always welcome:

RepositoryDescriptionContribution Guide

Contact Protocols

PurposeChannelExpected Response
Research collaboration
Speaking invitation
Student inquiry
Quick question

Pull Request Process

  1. Check existing issues — Someone may already be working on it
  2. Open an issue first — Let's discuss before you code
  3. Follow the style guide — Match the existing patterns
  4. Write tests — If it's not tested, it doesn't work
  5. Be patient — Review cycles in academia can be... measured in geological time

License

By contributing, you agree that your contributions will be acknowledged via co-authorship, citation, or acknowledgment as appropriate to the contribution level and academic norms.

Released under the MIT License.