Release | v2.0.0-beta (August 28, 2025) |
---|---|
Last Commit | 84d4876 (August 28, 2025 12:00 am) |
Repository | https://github.com/magicoli/pickup |
License | AGPL-3.0 |
A wonderful digital sign for airport pick-ups and meeting people.
Overview
Pick-Up is a progressive web application (PWA) designed to create digital signs for airport pick-ups, ride-sharing, and any situation where you need to display someone’s name prominently. The app automatically adjusts text size to make names as large as possible on the screen, ensuring maximum visibility from a distance.
The basic usage is straightforward. You can use Pickup, free of charge, and/or install it on your device from:
Or read more below to install it on your own servers.
Features
- Auto-scaling text: Names automatically resize to fill the available screen space
- Editable display: Click on any text to edit it directly
- URL parameters: Pre-fill information using URL query parameters
- Customizable appearance:
- Choose from preset logos
- Custom background colors and images
- Configurable title and branding
- Progressive Web App: Can be installed on mobile devices and used offline
- Full-screen mode: Toggle fullscreen for maximum visibility
- Responsive design: Works on all screen sizes and orientations
- Service Worker: Offline functionality with caching
Quick Start
Using the Web App
- Basic usage: Open
index.html
in a web browser - Edit names: Click on the displayed name to edit it
- Customize: Click the logo to access settings for colors, background, and branding
- Install: Use the install button to add to your home screen on mobile devices
URL Parameters
You can pre-fill the display using URL parameters:
https://pickup.contact/?f=John&l=Doe&c=Welcome!
Available parameters:
f
: First namel
: Last namen
: Full name (overrides first/last name)c
: Comment/message
Examples:
/?f=John&l=Smith
/?n=Jane Doe&c=Flight AA123
/?f=Maria&c=Taxi to downtown
Installation
As a PWA
- Open the app in a mobile browser
- Click the "Install" button when it appears
- The app will be added to your home screen and can run offline
Self-hosted
- Clone or download this repository
- Serve the files from a web server (required for service worker functionality)
- Open in a web browser
File Structure
├── index.html # Main application
├── form.html # Form component (embedded)
├── manifest.json # PWA manifest
├── css/
│ └── style.css # Main stylesheet
├── js/
│ ├── pickup.js # Main application logic
│ └── service-workers.js # PWA service worker
├── images/ # Logo assets
│ ├── pickup-logo-*.png
│ └── [preset logos]
└── fonts/ # Gotham font family
Customization
Logos
The app can includes several preset logos: add your own logos to the images/
directory and update the logo selector in the settings.
Styling
The main styles are in css/style.css
. Key customizable elements:
- Font family and sizing
- Colors and backgrounds
- Layout and spacing
- Responsive breakpoints
Configuration
Settings are stored in browser localStorage:
title
: Custom page titlelogo
: Selected logo imagebgColor
: Background colorbgImage
: Background image
Browser Support
- Modern browsers with ES6 support
- Service Worker support for offline functionality
- Canvas API for text measurement
- CSS Grid for layout
Development
Local Development
- Serve files from a local web server:
# Python 3 python -m http.server 8000
Python 2
python -m SimpleHTTPServer 8000
Node.js
npx http-server
- Open
http://localhost:8000
in your browser
Version Management
The app uses version strings throughout for cache busting:
- Update version in
index.html
,js/service-workers.js
, andmanifest.json
- Use the
dev/bump-version
script to automate version updates
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Test across different devices and browsers
- Submit a pull request
License
This project is licensed under the GNU Affero General Public License v3.0 (AGPLv3). See the LICENSE file for details.
Changelog
See CHANGELOG.md for version history and updates.
Support
For issues and feature requests, please use the project’s issue tracker.
Perfect for:
- Airport pickups
- Ride-sharing meetups
- Event registration
- Hotel shuttles
- Conference attendee pickup
- Any situation where you need a clear, visible name display
Leave a Reply