secretaresse's People
secretaresse's Issues
Write unit tests
Use Google Calendar's create field
Using Google Calendar's create field, we can filter out only the events that were created by the app. That way it doesn't have to remove manually added calendar events. That would significantly reduce the number of warnings on the README page ;).
Add proper logging
Running Secretaresse from Hammerspoon, there's no way to see if there were errors. (E.g.: at some point, I'll have to change my password in Exchange, and if I forget to change it here as well, it will stop working.) Also, I want to be able to diagnose problems if they arise.
There should be a place where I can see a log. It can be a file on the filesystem, or once we have a GUI, maybe it could be shown in there somewhere. Or both.
Add proper error handling
If Exchange or Google Calendar can't be reached for whatever reason, or if the uses adds incorrect information in the application.conf
file, it would be nice to have proper error handling instead of stack traces in your face.
Make a GUI for Windows
I would like to have a nice icon in the system tray, and maybe a nice popup window to enter my username and password and stuff, and that the app takes care of running itself every x minutes.
I think the app should get its own API key in that case, that will be bundled in the jar instead of referred to from the application.conf
. However, that API key should never be committed to GitHub.
Also, ScalaFX seems like a nice way to make a GUI, maybe?
See also #7
Make code asynchronous
All calls to Exchange and Google Calendar are now synchronous, so you have to wait for one to finish before you can start the next.
Using futures we can make things asynchronous and hopefully speed things up a bit.
Make a GUI for OS X
I would like to have a nice icon in the task bar, and maybe a nice popup window to enter my username and password and stuff, and that the app takes care of running itself every x minutes.
I think the app should get its own API key in that case, that will be bundled in the jar instead of referred to from the application.conf
. However, that API key should never be committed to GitHub.
Also, ScalaFX seems like a nice way to make a GUI, maybe?
See also #8
Use Java 8's time API internally instead of java.util.Date
Because nobody likes java.util.Date.
I guess either ZonedDateTime or Instant will be suitable replacements.
Decouple the code
All the code now lives inside a single class. It should be decoupled, to make it easier to write unit tests and/or add a proper GUI.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.