{"id":43047847,"url":"https://github.com/sotashimozono/lattice2d.jl","last_synced_at":"2026-04-30T04:02:02.215Z","repository":{"id":327698547,"uuid":"1109250533","full_name":"sotashimozono/Lattice2D.jl","owner":"sotashimozono","description":"A Julia package for generating and manipulating 2D lattice structures for quantum many-body physics simulations.","archived":false,"fork":false,"pushed_at":"2026-04-29T08:26:08.000Z","size":897,"stargazers_count":2,"open_issues_count":13,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-29T08:29:50.818Z","etag":null,"topics":["grid","julia","simulation","two-dimension"],"latest_commit_sha":null,"homepage":"http://codes.sota-shimozono.com/Lattice2D.jl/","language":"Julia","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sotashimozono.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-12-03T14:45:19.000Z","updated_at":"2026-04-29T07:14:34.000Z","dependencies_parsed_at":"2025-12-08T14:12:43.816Z","dependency_job_id":null,"html_url":"https://github.com/sotashimozono/Lattice2D.jl","commit_stats":null,"previous_names":["sotashimozono/lattices.jl"],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/sotashimozono/Lattice2D.jl","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sotashimozono%2FLattice2D.jl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sotashimozono%2FLattice2D.jl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sotashimozono%2FLattice2D.jl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sotashimozono%2FLattice2D.jl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sotashimozono","download_url":"https://codeload.github.com/sotashimozono/Lattice2D.jl/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sotashimozono%2FLattice2D.jl/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32454170,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T22:27:22.272Z","status":"online","status_checked_at":"2026-04-30T02:00:05.929Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["grid","julia","simulation","two-dimension"],"created_at":"2026-01-31T10:05:08.381Z","updated_at":"2026-04-30T04:02:02.210Z","avatar_url":"https://github.com/sotashimozono.png","language":"Julia","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Lattice2D.jl\n\n[![docs: dev](https://img.shields.io/badge/docs-dev-blue.svg)](https://sotashimozono.github.io/Lattice2D.jl/dev/)\n[![Julia](https://img.shields.io/badge/julia-v1.10+-9558b2.svg)](https://julialang.org)\n[![Code Style: Blue](https://img.shields.io/badge/Code%20Style-Blue-4495d1.svg)](https://github.com/invenia/BlueStyle)\n[![codecov](https://codecov.io/gh/sotashimozono/Lattice2D.jl/graph/badge.svg?token=6E7VZ9MJMK)](https://codecov.io/gh/sotashimozono/Lattice2D.jl)\n[![Build Status](https://github.com/sotashimozono/Lattice2D.jl/actions/workflows/CI.yml/badge.svg?branch=main)](https://github.com/sotashimozono/Lattice2D.jl/actions/workflows/CI.yml?query=branch%3Amain)\n[![Aqua QA](https://raw.githubusercontent.com/JuliaTesting/Aqua.jl/master/badge.svg)](https://github.com/JuliaTesting/Aqua.jl)\n[![License](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n## Features\n\nThis package provides two dimensional lattices. If you know unit cell information (basic vectors, connection), you can construct arbitrary lattices.\n\nAvailable lattices by defaults are ...\n\n- Square lattice\n- Triangular lattice\n- Honeycomb lattice\n- Kagome lattice\n- Lieb lattice\n- Shastry-Sutherland lattice\n\n## Installation\n\n```julia\nusing Pkg\nPkg.add(\"Lattice2D\")\n```\n\n## Example\n\nHere we show Honeycomb lattice as an example. The Module enables us to have unit cell informations and connection infos, reciprocal vectors etc. And more, we can know the graph is bipartite or not, we can set periodic boundary and open boundary.\n\n```julia\nusing Lattice2D\n\n# Create a 4x4 Honeycomb lattice with Periodic Boundary Conditions (PBC)\nlat = build_lattice(Honeycomb, 4, 4; boundary=PBC())\n\n# Check basic properties\nprintln(\"Total sites: \", lat.N)\nprintln(\"Is bipartite? \", lat.is_bipartite)\n```\n\n![Honeycomb Lattice](docs/src/assets/figures/lattice/honeycomb_lattice.png)\n\n## Plots dependency\n\n`Lattice2D` re-exports `materialize` and `require_finite` from\n`LatticeCore`. Plotting helpers (e.g. via `Plots.plot(lat)`) are\nprovided through `LatticeCore`'s `LatticeCorePlotsExt` package\nextension, which activates only when both `LatticeCore` and `Plots`\nare loaded. As a result:\n\n- A user that only computes neighbours / bonds / plaquettes / momenta\n  does **not** need `Plots` and pays no precompilation cost for it.\n- A user that wants visualisation should `using Plots` alongside\n  `using Lattice2D`; the recipe / plot method is then picked up\n  automatically.\n\nThe `docs/` build environment loads `Plots` explicitly so the gallery\nfigures are rendered; see `docs/src/Gallery.md` for visualisation\nexamples.\n\n\u003e Note: `Project.toml` currently lists `Plots` as a regular dependency\n\u003e for backward compatibility with downstream code that imports it\n\u003e transitively. Migrating it to a `[weakdeps]` extension is tracked\n\u003e separately and will be a breaking release.\n\n## Quality assurance\n\nThe test suite runs [Aqua.jl](https://github.com/JuliaTesting/Aqua.jl)\nchecks (ambiguities / unbound args / undefined exports / stale deps /\npiracy / persistent tasks) on every CI build, with `Plots` excluded from\n`stale_deps` while its migration to `[weakdeps]` is pending.\n\n## Contributing\n\nContributions are welcome! Please feel free to open an Issue or submit a pull requests.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsotashimozono%2Flattice2d.jl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsotashimozono%2Flattice2d.jl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsotashimozono%2Flattice2d.jl/lists"}