Leading a Team Made Simple.
View DaySlayer™ Live *(See testing profiles below in the "To Use" section to sign in with.)
View DaySlayer™ Website *(Project information, including data schema, user-flow and wireframe.)
View DaySlayer™ Walkthrough Video *(Walkthrough of DaySlayer App.)
What is DaySlayer?
DaySlayer™ is a team lead app designed to make leading a team simple.
It allows a user to:
- collect items from the Team Calendar
- collect items from the Mentor Calendar
- create Pairing Groups
- select the Meditation Exercise for the day
- create Discussion Threads
- autogenerate the Inspirational Quote for the day
which the user can then copy and paste into the user's preferred messaging mechanism.
It also provides the user with guides to lead the team meetings required for the day.
Since the app utilizes Single Sign On authentication, you can use your own Google email, if you wish. This would require an additional step for a first-time authorization from Google.
Alternatively, I have created a test account to avoid first-time authentication steps:
Username: testingdayslayer@gmail.com
Password: Leadthed@y
- You will need to install and run Docker.
- Fork and clone this repo
- Follow the first 15 minutes of this video to set up an API key and Client ID in order to use the Google API.
- Create a
.env
file in theapp/
directory - Add two lines...
REACT_APP_API_KEY=<copy/paste your api key here>
REACT_APP_CLIENT_ID=<copy/paste your client id here>
- In your CLI, from the root directory, run the command
npm run db:init
to set up the database - Also from your root directory, run the command
npm start
- DaySlayer™ will be running on
localhost:3000
Users should be able to...
- Log in with their Google account or Test User Account
- collect items from the Team Calendar
- collect items from the Mentor Calendar
- create Pairing Groups
- select the Meditation Exercise for the day
- create Discussion Threads
- autogenerate the Inspirational Quote for the day
- copy and paste the consolidated info into preferred messaging app
- utilize the guides for the various team lead functions
- Make the Step Function Non-Linear to allow a user to enter a multi-step flow at any point.
- Management Panel to Control Automated Features.
- Re-Factoring of Information for Mobile Layout.
- Technologies
- Postgresql Database
- Express
- React.js
- Node.js
- ES Lint
- JEST
- React Testing Libraries
- Docker
- Auth0 API
- Quotes REST API
-
One API is okay, but three might be too complicated to implement in time
This indeed ended up becoming the case — with Auth0 using Google's SSO integration, the combination proved to be too complex when layering in the Goole Calendar API. Google calendar was working and then stopped working a week before launch. Six seasoned engineers stumped by the case (which made me feel a bit better about it because there was no apparent reason for the break), and I now have an open ticket with Auth0 to investigate the cause.
In order to present a working prototype by project deadline, I had to create mock data in order demonstrate the core features of the app.
All of the structure is in place so that once the data starts flowing again from the calendar API, just a few lines of code change is required to make it work with all real data again. >