Simple web app for creating packing lists for alpine adventures
|
|
4 viikkoa sitten | |
|---|---|---|
| admin | 1 kuukausi sitten | |
| img | 1 kuukausi sitten | |
| screenshots | 4 viikkoa sitten | |
| .gitignore | 1 kuukausi sitten | |
| .htaccess | 1 kuukausi sitten | |
| README.md | 4 viikkoa sitten | |
| config.php | 1 kuukausi sitten | |
| db.php | 1 kuukausi sitten | |
| favicon.ico | 1 kuukausi sitten | |
| index.php | 1 kuukausi sitten | |
| list.php | 1 kuukausi sitten | |
| manifest.webmanifest | 1 kuukausi sitten | |
| packing.php | 1 kuukausi sitten | |
| schema.sql | 1 kuukausi sitten |
PackIt is a smart packing list generator for outdoor activities. Select the activities you're planning — camping, skiing, kayaking, and more — and PackIt produces a deduplicated, grouped checklist of everything you need to bring.
| Activity selection | Packing list |
|---|---|
![]() |
![]() |
/admin/ lets you manage all content:
schema.sql)manifest.webmanifest plus icons in img/Create the database by running schema.sql:
mysql -u <user> -p < schema.sql
Copy config.php and set your database credentials.
Serve the project with any PHP-capable web server (Apache, Nginx, PHP built-in server). The included .htaccess ensures the .webmanifest MIME type is served correctly and denies HTTP access to config.php.
Open the site in a browser and start selecting activities. On mobile, use the browser's "Add to Home Screen" option to install PackIt as an app.
Admin credentials live in the admin_users table, not in config.php. The password_hash column stores a bcrypt hash produced by PHP's password_hash(); admin/login.php verifies the submitted password against it with password_verify().
schema.sql seeds a default account:
| Username | Password |
|---|---|
admin |
packit-admin |
Change it after first login. There is no UI for this yet, so update the row directly — generate a new hash and replace it in the database:
php -r "echo password_hash('your-new-password', PASSWORD_BCRYPT), PHP_EOL;"
UPDATE admin_users
SET password_hash = '<paste-hash-here>'
WHERE username = 'admin';
index.php Activity selection page
list.php Processes selection, stores hash, redirects
packing.php Displays the shareable packing list
db.php PDO connection helper
config.php Database credentials
schema.sql Database schema and sample data
manifest.webmanifest PWA manifest (installable web app)
.htaccess MIME type for manifest, blocks config.php over HTTP
img/ App icons (192/512, plus maskable variants)
admin/
index.php Dashboard
activities.php Manage activities
activity_groups.php Manage activity groups
items.php Manage items
item_groups.php Manage item groups
mappings.php Manage activity-to-item mappings (with quantities)
layout.php Shared admin layout
login.php / auth.php Authentication