Skip to content
publik.
Browse appsAppsPricing
+Publish a repoPublish
Browse appsHow it worksPublish a repoGet helpPricingDevelopersGitHubPrivacy
© 2026 Publik
← All apps

art.kubus

Discover and map public and street art, follow artists, and join the community.

not yet reviewed by publik. It is live now; the founder has not reviewed this version yet.

by @kubus

art.kubus interface

On your phone?

You install art.kubus from a computer. Send yourself the link and open it there.

Vote on art.kubus
0
Open in GitHub↗

Having trouble? Tell us

README

Open in GitHub ↗

art.kubus logo

art.kubus

An open-source map for discovering, documenting and connecting public art.
A cross-platform Flutter app built on MapLibre, with community tools, optional AR and optional decentralized infrastructure.

Flutter 3.44 MapLibre Client license: MPL-2.0 Status: alpha

Try it live · Documentation · Contribute · Discussions · Project site

art.kubus map in Ljubljana: public art markers along the river, with an artwork card open showing a photo, its CC BY 3.0 credit and Wikidata source

The map on web, guest session, real public data. The photo credit and source shown in the card come from the artwork record.

What is art.kubus?

art.kubus puts public and street art on a map. You can find works near you or anywhere else, see who made them and where the record came from, save and share them, and follow the artists and institutions behind them. Artists and institutions publish their own work, exhibitions and events. The community adds, corrects and discusses what is out there.

The same Flutter codebase runs on Android, iOS, web, Windows, macOS and Linux. The map uses MapLibre with the project's own vector styles over OpenStreetMap-based tiles. AR, wallets and the kubus Node spatial archive are optional layers on top of that. You do not need them to browse the map or join the community.

If art.kubus is useful or interesting to you, consider starring the repository. It helps more contributors find the project.

Capabilities

AreaWhat works today
Map discoveryMapLibre map with search across artworks, artists and institutions, discovery filters, nearby lists, marker cards with source and photo attribution, a discovery path, and light and dark map styles
CommunityFeed, groups, posts, comments, following, messaging and reporting
ArtistsArtist Studio for publishing artworks, collections and exhibitions, and for managing map markers and AR markers
InstitutionsInstitution Hub for exhibitions and events, available after verification
AR (optional)Marker-based AR on Android (ARCore) and iOS (ARKit); web and desktop link to the mobile app instead
Spatial archive (optional)Spatial captures of artworks, processed on a paired kubus Node or an eligible network GPU, and published only when the author chooses
Wallet and governance (optional)Solana wallet via Reown AppKit, plus experimental marketplace and DAO features
LanguagesEnglish and Slovenian, with complete key parity

Most optional features are gated by build-time feature flags in lib/config/config.dart and depend on the hosted API. See docs/FEATURES.md for detail.

Interface

art.kubus on a phone: the map with an artwork card for a mural photographed in Ljubljana, credited CC BY 2.0 via Wikimedia Commons art.kubus home on desktop: navigation rail, a discover section, artwork cards and community activity
Mobile map with an artwork opened from the nearby sheet. Desktop home: discovery entry points, artworks and community activity.

More surfaces, including community, Artist Studio, profiles and Institution Hub, are described in docs/SCREENS.md. docs/SCREENSHOTS.md explains how these images are captured.

Architecture

art.kubus is not a purely decentralized system today. The hosted API is the primary source of truth. Decentralized parts are optional and additive, and the project is moving toward more of them over time.

 art.kubus Flutter client (this repository, MPL-2.0)
   Android · iOS · web · Windows · macOS · Linux
   MapLibre map · Provider state · en/sl localization
        │
        │ REST + WebSocket
        ▼
 art.kubus API  (api.kubus.site, standby bapi.kubus.site)
   implemented in art.kubus-backend: separate repository,
   separate licensing, included here as the backend/ submodule
        │
        └─ database, media and moderation run on hosted infrastructure

 Optional, additive layers
   Solana wallet (Reown AppKit)       wallet, marketplace, DAO features
   kubus Node (AGPL-3.0-only)         spatial processing and public archive participation
   IPFS / IPNS public snapshot        read-only fallback when both API endpoints are unreachable
   ARCore / ARKit                     on-device AR on mobile

Inside the client, screens and widgets sit on ChangeNotifier providers, which call services for API, map, AR and wallet work. docs/ARCHITECTURE.md covers the boot sequence and module layout, and docs/OPEN_PLATFORM.md covers what is open and what is hosted.

Repository layout
PathContents
lib/Flutter client: screens/, widgets/, providers/, services/, models/, config/, l10n/
assets/Images, fonts, map styles (assets/map_styles/) and marker art
android/, ios/, web/, windows/, macos/, linux/Platform runners
test/Unit and widget tests, plus opt-in visual QA matrices under test/qa/
packages/kubus_lints/Project-specific lint rules (theme tokens, raw colors, backdrop filters)
scripts/CI guards, verification and Playwright web QA (scripts/qa/)
docs/Developer documentation, starting at docs/README.md
backend/Git submodule for art.kubus-backend. Private, not needed to run the client

Status

art.kubus is in alpha and under active development. Expect frequent changes, including occasional breaking ones.

  • The integration branch is dev. Production releases are promoted from dev to master.
  • The client version on dev is 0.8.1 (release notes; previous: 0.8.0).
  • The latest published release is on the releases page.
  • Hosted builds: app.kubus.site (production).

Contributing

Contributions are welcome, including code, documentation, translations, accessibility fixes and bug reports.

  1. Read CONTRIBUTING.md for setup, conventions and the PR flow.
  2. Pick a good first issue or a help wanted issue.
  3. Ask questions in Discussions (Q&A for help, Ideas for proposals).

Project policies: Code of Conduct · Governance · Support · Security (report vulnerabilities privately, not in issues).

Background

art.kubus is also a research and development project. It looks at how digital cultural infrastructure, spatial interfaces, participation, AR and decentralization can support public art and the people and institutions around it. The project site at art.kubus.site has more on that side of the work.

License

The code in this repository is licensed in parts:

PartTerms
The Flutter client and everything else in this repository not listed belowMPL-2.0, see also NOTICE
Files explicitly marked as public platform API artifactsApache-2.0, where marked
Vendored third-party code (for example third_party/, web/local/maplibre-gl)Upstream licenses, see THIRD_PARTY_NOTICES.md
backend/ submoduleSeparate repository with its own terms. Not MPL-2.0
Names, logos and brandingNot licensed by the above, see TRADEMARK.md
Images, media and user or institutional contentSee LICENSE_ASSETS.md

docs/licensing.md gives a plain-language overview of the whole ecosystem, including kubus Node (AGPL-3.0-only).