Interfaces (Emacs, Jupyter, VS Code, Codespaces, etc.)
Improve how users interact with Macaulay2 in modern editors and environments. Projects might include enhancing editor integration, improving syntax highlighting and completions, streamlining Jupyter workflows, or making Macaulay2 easier to use in cloud-based setups like Codespaces.
Profiling & Benchmarking
Help us better understand where Macaulay2 spends its time. This track focuses on developing or improving tools for profiling performance, creating reproducible benchmarks, and identifying bottlenecks to guide future optimization work.
Documentation Revision
Make Macaulay2 easier to learn and use by improving its documentation. Possible projects include revising existing manuals, filling gaps, modernizing examples, improving cross-references, or restructuring content to better match how users actually work.
Parsing & Language Internals
Work on the Macaulay2 language itself. Projects could involve improving or extending the parser, clarifying or formalizing language behavior, tightening syntax rules, or improving error reporting related to parsing and evaluation.
Debugging Tools & Developer Experience
Improve the tools used to diagnose problems in Macaulay2. This may include better runtime error messages, stack traces, logging, interactive debugging support, or developer-facing tooling that makes it easier to understand and fix bugs.
C++ Code Refactoring
Clean up and modernize parts of the C++ codebase. This may include refactoring for readability, reducing technical debt, improving abstractions, unit testing, or making the code easier to maintain and extend—without changing user-visible behavior.
Public Relations & Communications
Help improve how the Macaulay2 project presents itself and communicates. Projects might include improving the website or wiki, organizing community resources, refining contributor workflows, strengthening Zulip onboarding, or visual/branding updates like logos or diagrams.
Consolidating Packages
Reduce duplication and confusion in the package ecosystem. This track focuses on identifying overlapping packages, exploring mergers or shared infrastructure, and proposing clearer organization or dependency structures to make packages easier to discover and maintain.
Testing & Test Coverage
Strengthen the reliability of Macaulay2 by improving and expanding its test suite. Projects may include identifying untested or under-tested code paths, adding new tests, improving test organization, or developing tools and workflows that make testing easier and more effective for contributors.
Propose Your Own Project
Have an idea that doesn’t fit neatly into the categories above? Participants are encouraged to propose their own Macaulay2-related project ideas, whether they focus on research workflows, tooling, performance, pedagogy, or long-term infrastructure. This is a chance to explore something you care about while contributing to the broader ecosystem.