The cross-platform personal assistant that just works. Built with the wonderful Electron, as well as many useful libraries.
For the Xcode (Swift) build of the same name, see Nimble-Swift.
Electron and gulp required to be installed on your machine (npm install -g electron-prebuilt gulp
). You'll also need a Wolfram Alpha API Key.
Clone the repository, install dependencies, then run gulp.
git clone https://github.com/madebybright/Nimble.git
# cd into the directory and install dependencies
cd Nimble && npm install
Create src/js/key.json
for your key.
{
"api": "KEY"
}
Run electron in the project directory to get it up and running.
# Compiles Sass and starts (gulp && electron .)
npm start
If you'd like to package Nimble as an app, or bundle it as a DMG, you can use our gulp tasks.
gulp package # nimble -> .app
gulp bundle # nimble -> .app -> .dmg
If you're bundling it, make sure to package it beforehand so that the .app
exists for the disk image.
- Fix overflow problem
- Add Random Placeholder Query Suggestions
- Make it fade between placeholders every few seconds or so (no animation, impossible)
- Add search button
- Clean up request
- Add content-dynamic window support 🎈 In Progress
- Improve with possible animation
- Improve file structure/skeleton
- Right click icon to exit
- Provide mini menu for Preferences and Exit
- Change initial position of where Nimble loads (the x and y values) [Maybe?]
- Add math.js support
- Allow option for query to be processed with W|A if it's first processed with math.js
- Add error messages
- Style error messages (@gthn)
- Graphing?
- Indeterminate Loading indicator
- Always offer a link to the Wolfram|Alpha page at the bottom
- Un-round the top border
- Add auto-updating (Electron provides a module built on Squirrel)
Some ideas we've been kicking around that we think might have a spot in future versions of Nimble once we've actually gotten it working.
- Quick timezone conversions (possibly with Moment.js)
Want to make a contribution? Fork the repo, add your changes, and submit a pull request. Any type of contributions (ideas, bug fixes, fixing typos, etc.) will be appreciated!
- Stephen Wolfram, for creating the wonderfully frustrating Wolfram|Alpha®
- All of the wonderful open source software we use with Nimble, viewable in package.json
- Specifically, we'd like to thank the packages math.js, menubar, and wolfram-alpha for making the bulk of this project possible.
- Lastly, we'd like to thank everyone who's supported us from day one.
- Ethan would like to thank Lucas Steuber of LanguageCraft, Willow Bumby of Cosmic Labs, as well as the rest of the Bright team, Trevor, Logan, Aaron, and /r/webdev on Reddit.