A lightweight web/android client to forvo.com.
A precompiled apk: http://gromnitsky.users.sourceforge.net/android/apk/
A live example (see Usage section below): http://gromnitsky.users.sourceforge.net/js/forvo-light/
- Node 6.x
npm i -g browserify babel babel-preset-es2015
- GNU Make
An out of tree build:
$ git clone ...
$ mkdir _out && cd _out
$ make -f ../forvo-light/main.mk
Then copy src/
dir where your webserver expects static files.
Because I have a silly requirement of using the app on ancient devices w/ Android 2.3, you can build the app only if you
- point
ANDROID_HOME
env var to the Android SDK Tools not newer than 25.2.5; using that version of SDK Tools, install SDK Platform 21. npm i -g cordova@4.3.0
- use a Node version manager, like nodever, for old versions of Cordova don't work w/ modern versions of Node;
- edit
../forvo-light/main.mk
to make sure that Cordova is being run under Node 4.8.
After this preliminaries, type:
make -f ../forvo-light/main.mk cordova
It'll take a while, for Cordova will download a bunch of staff in
~/.cordova
at its 1st run. The resulting apks should be in
cordova/platforms/android/ant-build/
.
You'll need to obtain an API key from Forvo. After the 1st run of the
app, click on the 'gear' icon & enter the api key. The app will
remember it in the localStorage
.
No web frameworks were used in the making of this app. You won't believe this, but it's still possible in 2017 to write simple programs w/o React or Angular.
(Not that anybody cares)
- no HTTPS support for
Audio()
history.replaceState()
doesn't modifylocation.hash
error
event inAudio()
doesn't get fired in cases of 404, invalid format, etc.
MIT.
The icon: https://openclipart.org/detail/227474/pirate-parrot