Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

plan for splitting the package #450

Closed
9 of 10 tasks
CarloLucibello opened this issue Jul 22, 2024 · 0 comments
Closed
9 of 10 tasks

plan for splitting the package #450

CarloLucibello opened this issue Jul 22, 2024 · 0 comments

Comments

@CarloLucibello
Copy link
Member

CarloLucibello commented Jul 22, 2024

The codebase is currently undergoing a factorization whose final outcome is to have several packages hosted in the same monorepo (for developing convenience, see #433):

  • GNNGraphs.jl: graph types and graph operations. Depends on Graphs.jl and on NNlib.jl.
  • GNNlib.jl: functional implementation of graph convolutional layers. Depends on GNNGraphs.jl.
  • GraphNeuralNetworks.jl or FluxGNN.jl: Stateful graph convolutional layers based on Flux.jl. This will be the fronted package for Flux users. Depends on GNNlib.jl, GNNGraphs.jl, and Flux.jl.
  • LuxGNN.jl: Stateless graph convolutional layers satisfying Lux's interface. Depends on GNNlib.jl, GNNGraphs.jl, and Lux.jl.

This way we will introduce Lux support (#372) and the Flux and Lux frontends will be only tiny wrappers around a shared codebase given by GNNlib.jl and GNNGraphs.jl.

I will keep track here of the transition status:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant