dwyl / calendar Goto Github PK
View Code? Open in Web Editor NEWπ effortlessly know when everyone in your team is available / busy with a single glance.
Home Page: https://gcal.fly.dev/
License: GNU General Public License v2.0
π effortlessly know when everyone in your team is available / busy with a single glance.
Home Page: https://gcal.fly.dev/
License: GNU General Public License v2.0
On my localhost
when I run mix s
I see the following warning:
warning: Phoenix.Controller.get_flash/2 is deprecated. get_flash/2 is deprecated. Use Phoenix.Flash.get(@flash, key) instead
lib/cal_web/live/app_live.ex:178: CalWeb.AppLive.get_token/1
@LuchoTurtle can you please tidy this up. π
Should be a quick fix. Just remove the code that calls it.
We shouldn't be using get_flash/2
we don't have a usecase (interface) for it.
Thanks.
At present our Google App is in "Testing" mode.
In order to make it available to more people we need to follow the steps outlined below:
https://console.cloud.google.com/apis/credentials/consent?authuser=1&project=calendar-385619
As a person
wanting to maximise their personal effectiveness,
I want to import Google Calendar
data and display it on a single page with other info
so that I don't have to look at multiple places to see what is next in my day.
This SPIKE
is scope-limited to displaying my next calendar event on a page.
It should be time-boxed to T1d
(or T8h
split over several sessions). β³
this
repo, Create a barebones Phoenix
+ LiveView
App #22Sign-in with Google
button
Google Calendar
Google Calendar
and display it in the Phoenix
App.If we can achieve this proof-of-concept we can move forward with more interesting features. π€
Postgres
DB, document everything you learn! πUsing the Goolge Node.js API: https://github.com/google/google-api-nodejs-client
Create a calendar event and save it to Google Calendar.
We have simplified Google OAuth in a Hapi app: https://github.com/dwyl/hapi-auth-google
which will give you the oauth access_token
which you can then use to access the API ...
but you are free to use any module you feel is tested / maintained.
@LuchoTurtle as discussed on Standup
, our goal with the SPIKE
#21 is to do the bare minimum to show that we can get data in and out of Google Calendar
. If you decide to go the "extra mile" when displaying the events
, please try and "borrow" some interface from the interwebs to save time, e.g:
https://tailwindui.com/components/application-ui/data-display/calendars
Are we ready to pay for TailwindUI? π°
https://freefrontend.com/tailwind-calendars/
I'm sure there are many others, including using more recent versions of TailwindCSS.
Sadly, there's nothing in https://daisyui.com/components/ ...
How many people are using outlook for their main calendar?
Outlook Calendar has a rest API: https://msdn.microsoft.com/en-us/office/office365/api/calendar-rest-operations so we could add support for it.
If you want Outlook please post a comment in this thread. @thegsi ?
https://github.com/dwyl/calendar/actions/runs/4990338971
Unable to process file command 'output' successfully.
Seems to be an error of the Github Action https://github.com/sobolevn/misspell-fixer-action.
Is it worth it to have this workflow if it doesn't work? We can't deploy this otherwise
What is the most flexible way of storing calendar/event entries to ensure they are easy to query/search for and display in our intuitive UI #1
Note: our "solution" should persist
new
calendarevents
back into the person's
However to make them searchable and viewable by everyone we need to store them in our own database which
is kept in Sync with GCal.
When attempting to authenticate on https://gcal.fly.dev we get the following error:
@LuchoTurtle suggested inspecting the Network -> Preview
tab in Dev Tools to investigate:
redirect_uri: http://gcal.fly.dev/auth/google/callback
For some reason the redirect URL generated by:
Is generating an http
link and it needs to be https
...
http
and fix it!The GitHub action after merging the new calendar branch #25 seems to be failing.
http=>https
Letting People know when their work colleagues (and friends?) are available so events
can be booked or projects/meetings can be planned is an essential part of keeping any organisation/company/team organised. Having to verbally ask people if they are "free" is time-consuming, error prone and increases complexity/time as the number of people increases.
Our mission is to solve this problem with a simple interface that does not require people to manually enter their availability but rather syncs their existing personal/work calendar to display their availability effortlessly.
Who else is trying to solve this problem?
At present the app is deployed to: https://dwyl-calendar.fly.dev
The working App
has not yet been deployed.
And it does not yet have any of the necessary Google Auth API
keys:
https://fly.io/apps/dwyl-calendar/secrets
So I want to use this opportunity to:
Create a New
Fly.io App
with the name cal
under the dwyl-calendar
org so that we can reuse the existing DB. Currently: https://cal.fly.dev/
Deploy the gcal
App and comment in this issue with progress. π¬
@nelsonic to setup Google API Keys
(for maintenance reasons...)
Finally DELETE
the existing "placeholder" App named dwyl-calendar
once we confirm cal.fly.dev
is working.
Note: I'd much rather just rename it but it's not supported see: https://community.fly.io/t/how-to-rename-my-apps/3098
We are going to be using this calendar App
internally so we need to make it good.
And we will be abstracting some of the code into a library very soon to tidy up.
Watch this space: https://github.com/dwyl/gcal
@LuchoTurtle I just tried to add payment method to the Fly,io dwyl-calendar
App.
https://fly.io/dashboard/dwyl-calendar
Please:
user
https://fly.io/dashboard/dwyl-calendar/team to admin
πThanks.
After researching the project please post your views here, by 2pm.
@thegsi had a good question regarding how we should decide who should see who's calendar details...
Will we need to have "groups" so it's clear exactly who can see your calendar once you have authorised "the app" to access your calendar?
for this MVP all we just want to be able to display the calendar for anyone who has authorised the app.
at the moment, the idea is to have an app people can deploy to Heroku just for their team.
In the future we could make a "hosted version" (where a service provider would handle the deployment of the app) and a team organiser would invite people to join and everyone would be able to see who has access to their calendar...
Calendars are typically not designed for children. π§
In general, they are made by adults for other adults and then imposed on children.
Many schools use Google
Calendar or Microsoft
Exchange/Outlook and suffer the horrible interface/experience silently because they are powerless to improve it. π
There are many other calendar apps besides
Microsoft
andApple
:
https://en.m.wikipedia.org/wiki/Category:Calendaring_software
The top 3 are just the most used by far.
There are a handful of Open Source options but none has achieved critical mass adoption. This is clear from the fact that you - learned reader - are not using one of the available open source calendars β¦
https://en.m.wikipedia.org/wiki/Category:Free_calendaring_software
We need to find or build a child-friendly interface to view calendar events. π
This needs to be a combination of simplified layout, color coordination/contrasting and icons (emojis) π
that children who donβt yet read can easily understand. π‘
The advantage of this approach to interface/experience design
is that what a child can interpret/understand anyone else can too.
Research the available child-friendly calendar/schedule interface design online.
Once we have researched what is available we can be informed if there is anything we can already use
If there is nothing ready-made we will need to design something ourselves.
@Stephanymtr I expect the research
part of this task to take around T4h
. π©βπ» β³
Please capture your findings directly as comments in this issue. πΌοΈ
Thanks! π
P.S: this will be used for BMH so it will be immediately practical. π
https://davebakker.io/onepagecalendar
I like this idea because it represents a lot of information in a compact form similar to a perpetual calendar
(but ... I'm not used to seeing the calendar in this format so it's not immediately useful to me...)
HN: https://news.ycombinator.com/item?id=21921165 a few useful/interesting links.
Through discussion with FAC6 we concluded that the Google Calendar UI goes most of the way to solving the issue of viewing other people's calendars.
So... for now we are not going to re-build the calendar UI.
Instead we are going to create a Guide for how to use Google Calendar and require that everyone working with dwyl shares their google calendar.
_OR_ we have a Team Calendar which anyone can create events on.
Please discuss.
There are quite a few ways of sharing calendars among teams however there is no "standard" way
(Which is why http://doodle.com/ is still so popular... )
We need to spend some time researching the available options and taking screenshots so we have a UI mood-board
At present the /lib
directory has some stale JS
code.
e.g: /lib/google_oauth_handler.js
and server.js
and package.json
I wrote it so have no issues retiring it so that we can revive this project and make it useful. π
DELETE
(git rm
) the /lib
and test
directoriesDELETE
server.js
and package.json
new
Phoenix
project using the latest phx.new
GitHub Actions
(CI/CD) so that we know the build is passing
.ics
file/record?Please write up your research findings to convey the information to a complete beginner.
These instructions will let you share a link to your calendar publicly: https://support.google.com/calendar/answer/37083?hl=en
For example: https://calendar.google.com/calendar/embed?src=nelson%40dwyl.io
You succeeded in cheating me. Nothing to do with the title or propaganda as team-calendar
. suggest to change the project name to something like hapi-google-oauth-demo
A declarative, efficient, and flexible JavaScript library for building user interfaces.
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. πππ
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google β€οΈ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.