capell-app / address
Reusable countries and structured postal addresses for Capell: one shared address record, site-scoped, that any package can reference instead of re-modelling location fields.
Requires
- php: ^8.4
- capell-app/admin: ^1.0
- stijnvanouplines/blade-country-flags: ^1.0
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
- 4.x-dev
- dev-main / 1.x-dev
- v1.1.0-beta.37
- v1.1.0-beta.36
- v1.1.0-beta.35
- v1.1.0-beta.34
- v1.1.0-beta.33
- v1.1.0-beta.32
- v1.1.0-beta.31
- v1.1.0-beta.30
- v1.1.0-beta.29
- v1.1.0-beta.28
- v1.1.0-beta.27
- v1.1.0-beta.26
- v1.1.0-beta.25
- v1.1.0-beta.24
- v1.1.0-beta.23
- v1.1.0-beta.22
- v1.1.0-beta.21
- v1.1.0-beta.20
- v1.1.0-beta.19
- v1.1.0-beta.18
- v1.1.0-beta.17
- v1.1.0-beta.16
- v1.1.0-beta.15
- v1.1.0-beta.14
- v1.1.0-beta.12
- v1.1.0-beta.10
- v1.1.0-beta.9
- v1.1.0-beta.8
- v1.1.0-beta.7
- v1.1.0-beta.6
- v1.1.0-beta.5
- v1.1.0-beta.4
- v1.1.0-beta.3
- v1.1.0-beta.2
- v1.1.0-beta.1
- v1.0.0-beta.2
- dev-release-backup/v0.0.9-main
- dev-release-backup/v0.0.8-main
This package is auto-updated.
Last update: 2026-09-17 07:52:09 UTC
README
What This Extension Adds
Address is an Available, Schema-owning Capell package in the Capell Foundation product group. It ships as capell-app/address and extends these surfaces: admin.
Reusable countries and structured postal addresses for Capell: one shared address record, site-scoped, that any package can reference instead of re-modelling location fields.
After install, admins get package-owned management or reporting surfaces inside Capell.
Status details:
- Status: Available
- Tier: free
- Bundle: foundation
- Composer package:
capell-app/address - Namespace:
Capell\Address - Theme key: not applicable
Why It Matters
For developers: The package gives developers package-owned service providers, Actions, Data objects, models, Filament classes, and Blade views instead of pushing this behaviour into core or application code.
For teams: Reusable countries and structured postal addresses for Capell: one shared address record, site-scoped, that any package can reference instead of re-modelling location fields.
Screens And Workflow
Screenshot contract: docs/screenshots.json.
- Countries admin index (admin, required).
- Addresses admin index (admin, required).
- Create/edit country form (admin, required).
- Create/edit address form (admin, required).
- Site settings fields where address data is injected (admin, required).
Technical Shape
- Service providers:
Capell\Address\Providers\AddressServiceProvider. - Migrations:
packages/address/database/migrations/2026_05_10_190839_01_create_countries_table.php,packages/address/database/migrations/2026_05_10_190839_02_create_addresses_table.php. - Models:
Address,Country. - Filament classes:
AddressSelect,CountrySelect,FlagSelect,DefaultAddressConfigurator,DefaultCountryConfigurator,DefaultLanguageConfigurator,AddressResource,ManageAddresses,AddressForm,AddressesTable,CountryResource,ManageCountries,and 3 more. - Policies:
AbstractAddressResourcePolicy,AddressPolicy,CountryPolicy. - Actions:
BuildAddressQualityHealthReportAction,FindDuplicateAddressGroupsAction,ImportCountriesAction,InstallAddressPackageAction,NormalizeAddressGeocodingAction. - Data objects:
AddressGeocodingResultData,AddressMetaData,AddressQualityHealthReportData,AddressValidationResultData,DuplicateAddressGroupData,ImportCountriesResultData,NormalizeAddressGeocodingResultData. - Command signatures:
capell:address-countries-import,capell:address-demo,capell:address-faker,capell:address-geocode-normalize,capell:address-install. - Console command classes:
DemoCommand,FakerCommand,ImportCountriesCommand,InstallCommand,NormalizeAddressGeocodingCommand. - Manifest contributions:
admin-resource: Capell\Address\Manifest\AddressResourceContribution,admin-resource: Capell\Address\Manifest\CountryResourceContribution,asset: Capell\Address\Manifest\AddressAdminAssetsContribution,configurator: Capell\Address\Manifest\AddressConfiguratorsContribution,console-command: Capell\Address\Manifest\AddressConsoleCommandsContribution,health-check: Capell\Address\Health\AddressHealthCheck,migration: Capell\Address\Manifest\AddressMigrationsContribution,model: Capell\Address\Manifest\AddressModelsContribution,schema-extender: Capell\Address\Manifest\AddressSiteSchemaExtenderContribution. - Health checks:
Capell\Address\Health\AddressHealthCheck. - Blade views:
packages/address/resources/views/components/flag-icon.blade.php.
Data Model
- Required tables:
countries,addresses. - Models:
Address,Country. - Migration files:
2026_05_10_190839_01_create_countries_table.php,2026_05_10_190839_02_create_addresses_table.php. - Migration impact: run host migrations through the package install flow before opening package surfaces.
- Deletion/retention behaviour: Docs gap unless the package has an explicit pruning command, retention setting, or tested cascade path.
Install Impact
- Admin navigation: adds package-owned Filament classes when registered.
- Permissions: none declared in
capell.json. - Public routes: none detected in package route files.
- Database changes: package migrations are declared.
- Settings: no package settings declared.
- Queues or schedules: none detected in standard package paths.
- Cache tags: none declared.
- Commands:
capell:address-countries-import,capell:address-demo,capell:address-faker,capell:address-geocode-normalize,capell:address-install.
Common Pitfalls
- Run migrations before opening package resources or public routes.
- Keep
composer.json,composer.local.json,capell.json, docs, screenshots, and tests aligned when the package surface changes.
Troubleshooting
| Symptom | Likely cause | Check | Fix |
|---|---|---|---|
| Package surface is missing after install | Provider or manifest is not loaded | Confirm capell.json, package composer.json, and provider registration |
Reinstall the package, refresh Composer autoload, and clear host caches |
| Admin screen or command fails on missing table | Package migrations have not run | Check the tables listed in Data Model |
Run host migrations and rerun the focused package test |
| Background work does not run | Queue worker or scheduled command is not active | Check package jobs, commands, and host scheduler configuration | Start the queue or scheduler, then run the focused command or package test |
Quick Start
- Install the package:
composer require capell-app/address. - Run the required setup:
php artisan capell:address-install. - Open the related Capell admin surface and verify Address appears.
Next Steps
- Package docs
- Overview
- Screenshot contract
- Marketplace assets
- Capell content language plan
- Capell documentation design system
- Capell and package ERD notes
- Focused tests:
vendor/bin/pest packages/address/tests --configuration=phpunit.xml.