-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 183bc78
Showing
28 changed files
with
2,629 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
/resources/public/js/** | ||
/resources/main.js | ||
figwheel_server.log | ||
pom.xml | ||
*jar | ||
/lib/ | ||
/classes/ | ||
/out/ | ||
/target/ | ||
.lein-deps-sum | ||
.lein-repl-history | ||
.lein-plugins/ | ||
.repl | ||
.nrepl-port | ||
*~ | ||
\#*\# | ||
.\#* | ||
/node_modules | ||
.DS_Store | ||
/out/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
.DEFAULT_GOAL := build | ||
|
||
install: | ||
npm install | ||
npm install -g electron-packager | ||
|
||
compile: | ||
lein build | ||
|
||
build: install compile | ||
electron-packager . Tomaat --out=out --ignore='\b(src\/tomaat|out|target|dev|Procfile~?)\b' --ignore='[.](clj|log)' --ignore='~$$' --overwrite --icon="tomato.icns" | ||
|
||
.PHONY: install |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
# Tomaat | ||
|
||
An electron app written in ClojureScript. Integrates with Slack to let people know you | ||
are doing great things! Uses [reagent](http://reagent-project.github.io/) for the UI. | ||
|
||
<p align="center"> | ||
<img src="tomaat-example.gif?raw=true" alt="Tomaat example" /> | ||
</p> | ||
|
||
## Features | ||
|
||
* 25 minute pomodoro timer | ||
* Update Slack profile with tomato while pom is in progress | ||
* Send a Slack notification when pomodoro is complete | ||
|
||
Slack usage is optional, but if configured - your profile will be updated like so: | ||
|
||
<p align="center"> | ||
<img src="slack-screenshot.png?raw=true" alt="Slack with updated profile" /> | ||
</p> | ||
|
||
## Development | ||
Tomaat uses [lein-figwheel](https://github.com/bhauman/lein-figwheel) for hot reloading of *all* | ||
source files. Since Tomaat leverages electron apis across the board - all builds target `:nodejs`. | ||
|
||
To start development process: | ||
|
||
``` | ||
$ lein start | ||
$ lein electron | ||
``` | ||
|
||
### Project structure | ||
All source files are under `src/tomaat`, and several build targets are laid out in `project.clj`. Tomaat follows | ||
a structure that allows for the main electron process, a renderer process, and a worker process. | ||
|
||
The worker process runs as an invisible window for the purpose of running the timer, persisting config, and interacting | ||
with slack. | ||
|
||
## Building | ||
Tomaat is packaged using [electron-packager](https://github.com/electron-userland/electron-packager). It has currently | ||
only been built and tested on macOS. | ||
|
||
Just use `make` to build Tomaat. | ||
|
||
``` | ||
$ make | ||
``` | ||
|
||
## Todo | ||
- [ ] webview for fetching slack token | ||
- [ ] add timer to tray | ||
- [ ] maybe play a sound on complete (useful if slack not configured) | ||
- [ ] test and build for other operating systems |
Oops, something went wrong.