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:
| Repository | Description | Contribution Guide |
|---|---|---|
Contact Protocols
| Purpose | Channel | Expected Response |
|---|---|---|
| Research collaboration | ||
| Speaking invitation | ||
| Student inquiry | ||
| Quick question |
Pull Request Process
- Check existing issues — Someone may already be working on it
- Open an issue first — Let's discuss before you code
- Follow the style guide — Match the existing patterns
- Write tests — If it's not tested, it doesn't work
- 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.
