Giter Club home page Giter Club logo

secretaresse's People

Contributors

jqno avatar

Watchers

 avatar  avatar  avatar

secretaresse's Issues

Write unit tests

When #1 is done, some unit tests should really be added.

I like to create wrapper classes such as these so you don't need a mocking framework to write the tests.

If #2 is also done, we can use ScalaTest's Futures trait to test futures with whenReady.

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

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 photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.