The Griffin App API is an open source API specially designed to work with the Griffin App mobile project. The goal of this App and API is to help you and your team transition back into the workplace as safely as possible. At Axway, we've used this app to help our own teams return safely — now, let us help you!
Open-source API for managing the safe return of team members to the office. It is built using AMPLIFY API Builder
and several open-source products.
Clone this GitHub repo
git clone [email protected]:axway-developer-relations/griffin-app-opensource.git
Install npm dependencies
pushd api
npm install
popd
Save Google Service Account JSON file
Save your
google-service-account.json
file in the/lib/keys
directory so that your API can read/write to Google Sheets API. For more information about creating the file, please reference Google's documentation here.
Specify API Builder url and keys info in the .env
file
The API key you specify here will be used to secure your API
API_BUILDER_APIKEY=EnSQVDkhe6X9SKYr5tWlAOKFZhGVpyqFfSanFHOpRPk
Specify Axway AMPLIFY MBS (Arrow DB) url and API keys
You can retrieve your API Keys and info after logging into https://platform.axway.com
ARROWDB1_SERVER_URL=https://api.cloud.appcelerator.com/v1/objects/
ARROWDB1_APIKEY=abcdefghijklmnopqrstuvwxyz1234567890
ARROWDB1_SESSION_ID=abcdefghijklmnopqrstuvwxyz1234567890
Specify logz.io key info in the .env
file
If you use logz.io or a similar distribution logging solution, you can specify the config settings here
LOGZIO_APIKEY=abcdefghijklmnopqrstuvwxyz1234567890
Session Encryption Keys
If you wish to change the Session encryption keys used by API Builder, you can specify them in your
.env
file.
SESSION_ENCRYPTION_KEY=njMgwXv3rZmnJ3liLFY9yNfJd5hod5RhLr6ZuXsIsIw=
SESSION_SIGNATURE_KEY=Y79U/UsYvDSXRS1q/JOlavZraExuXIAnMvcDOZ8cdZSMwiuAQrZjoXFyqGmJ1eTL7p2oHJwhPrYi4g97l3Rzkw==
SESSION_SECRET=PkK6LErMwTZcGzfSBKR39lDrfLpu3nmj
If you want to set these using Node.js, you can do so like this:
{
encryptionKey: crypto.randomBytes(32).toString('base64'),
signatureKey: crypto.randomBytes(64).toString('base64'),
secret: crypto.randomBytes(24).toString('base64'),
}
Compile and run API locally.
Please see API Builder readme for more information about using API Builder
npm start
Publish to AMPLIFY ARS when you are ready to go live
npm install acs
acs login
acs publish
- Administrators can edit Office capacities
- Administrators can require users to answer questions upon launch of app
- Employees can select/change office locations
- Employees can hide/share their name and schedule with peers
- Employees can see office capacities for upcoming days at selected office
- Employees can see names of peers (that have enabled sharing) scheduled at office
- Employees can select which days they will be at office
⭐ Axway Developer Blog
⭐ Axway AMPLIFY API Builder
⭐ Axway Corporate Blog
⭐ Axway Developer YouTube Channel
⭐ Axway Developer Portal
⭐ AMPLIFY API Builder CLI - Installer for the AMPLIFY API Builder CLI tool
⭐ AMPLIFY Runtime CLI - Installer for the AMPLIFY Runtime CLI tool
⭐ Titanium Mobile - Open-source tool for building powerful, cross-platform native apps with JavaScript.
⭐ Titanium Alloy - MVC framework built on top of Titanium Mobile.
⭐ Appcelerator CLI - Installer for the Appcelerator Platform tool
project | description | npm |
---|---|---|
@geek/cache | Caching module for Node.js and Axway Titanium | |
@geek/jsonc | JSONC and JSON utilities for JavaScript with Node.js and Axway Titanium. | |
@geek/jwt | JWT parser for JavaScript Node.js and Titanium native mobile | |
@geek/logger | Logging module for Node.js and Axway Titanium | |
@geek/mobile | Toolkit for creating, building, and managing mobile app projects. | |
@geek/retry | Retry JavaScript functions and promises in Node.js and Axway Titanium |
Have an idea or a comment? Join in the conversation here!
App Code is licensed under MIT by Axway, Inc. All Rights Reserved.
Alloy is developed by Appcelerator and the community and is Copyright (c) 2012-present by Axway, Inc. All Rights Reserved.
Alloy is made available under the Apache Public License, version 2. See their license file for more information.
Titanium is Copyright (c) 2008-present by Axway, Inc. All Rights Reserved.
Titanium is licensed under the Apache Public License (Version 2). Please see the the Titanium license file for the full license.
Appcelerator is a registered trademark of Axway, Inc. Titanium is a registered trademark of Axway, Inc. Please see the LEGAL information about using trademarks, privacy policy, terms of usage and other legal information at http://www.appcelerator.com/legal.