This is a mobile web application used for StartupBus participants to have quickly and easily access to their itenerary and other relevant information durring their trip. StatupBus participants can go to kevinmirc.github.io/startupbus-guide/#/buses and slect their bus for a full itinerary of their trip.
-
Bus conductors update the airtable with their bus's Sponsors, Personnel, Locations, Schedule, and more on the Airtable. Changes are automatically reflected on the application, there is not publication process.
-
Have your riders save the website to the homescreen of their phone.
-
Use the link as a reference for your schedule, to get addresses of locations, and links to sponsors websites and social media handles (to show them love).
You'll see that some fields on the Airtable have the option to add an icon. You can see a list of icons here. Just place the id
of the icon in the field in Airtable.
This uses Airtable as the database. Airtable offers an REST API to access the data in the tables. Because Airtable requires a user permissioned Bearer token consume the API, I've set up a proxy server on an AWS API Gateway that will set the Authorization header on requrest. The proxy server only accepts GET, and OPTIONS requests and will pass the path and query params directly to Airtable's api endpoint.
-
Proxy Server Endpoint: https://3a7gh9p22h.execute-api.us-east-1.amazonaws.com/prod
-
Proxy Destination: https://api.airtable.com/v0/appGnLYiWlUtxCQG2/{proxy}
- Vue.js, Vue Router, Vuex.
- Using Materialize CSS for styling (imported via CDN in
index.html
)
- Build via
npm run deploy-build
- Commit and push to master on GitHub (docs director must be commited to git).
- Hosted on github pages.
TODO
- Minify.
- Import (minified) css and js dependencies. Insead of importing via CDN.
- API Cache on proxy server (maybe like 1 min cache)
- Use hash in entry point file name (docs/build-[hash].js.map) to prevent browser caching on new deploymets
- Duplicate the Airtable instance.
- Create a new AWS API Gateway with the same configuration.
- Insert the new Airtable Proxy Destination
api.airtable.com/v0/{table_id}/{proxy}
- Add your Airtable Bearer token to the enviornment.