A web application to manage digital assets, with a big emphasis on tagging.
We wanted a system to manage our digital assets where we didn't had to know the name of what we were looking for nor it's location. Such a system should make it easy to discover new content and to find related content. Also, we wanted it to be as simple as possible so anyone could quickly get to use it.
You have a bunch of files, say Mozilla Firefox 44 - EN.zip
, Google Chrome 17 - ES.exe
, etc. and tags describing them, say browser
, firefox
, chrome
, mozilla
, google
, linux
, windows
, 64bit
and so on.
When you want to find something you enter the tags that better describes it. As you enter the tags, and based on the files they have in common, Thunderbit recommends you existing tags related to the ones you entered. For example, if you have a GNU/Linux's distributions installation disk images collection (which may become pretty large, by the way :) and you enter ubuntu
and 64bit
, system could recommend you gnome
, desktop
and server
tags. Later on and having selected desktop
tag, you can drop ubuntu
and watch the list of 64-bit disk images for desktop.
Find more at the project's website
We keep a running instance of Thunderbit at Heroku. You can test it with following credentials:
To prevent service abuses this instance uses a mock storage module, which will accept uploads but will serve a static mock file. This instance is also cleaned and restarted from time to time.
We build Thunderbit with Play! Framework 2.4. There are several ways to get Play!, see the installation instructions for details. Also, you are gona need the Java Development Kit 1.8.x.
As database server we use PostgreSQL 9.3.
Edit the file conf/application.conf
and change the database connection settings to match your database server ones.
db.default.url="jdbc:postgresql://[server]/[database]"
db.default.username="[user]"
db.default.password="[password]"
By default, Thunderbit uses a mock storage module which will accept uploads, but will serve a static mock file. You can change this on storage.*
configuration keys, for example:
storage.type = "local"
# Make sure you have write access to storedFiles
storage.local.path = "path/to/stored/files"
# If the storage directory does not exist, create it
storage.local.createPath = true
Or use your favorite bucket at Amazon S3:
storage.type = "s3"
storage.s3.accesskey = "myAccessKey"
storage.s3.secretkey = "mySecretKey"
storage.s3.bucket = "bucketForThunderbit"
storage.s3.createBucket = true
If you installed Activator on step 1, execute activator run
inside the project's root. If you installed SBT, execute sbt run
instead.
Thunderbit plays well with Heroku. The easiest way to deploy a new instance is through this button. All you need is a free Heroku account.
If for some reason the above button doesn't work then fork the repo and follow Heroku and GitHub integration instructions.
Found a bug or have a feature request? Great! Please first read the issue guidelines and search for existing and closed issues at Taiga.io. If your problem or idea is not addressed yet, please open a new issue.
Please read our contributing guidelines.
After trying NetBeans, Eclipse, ScalaIDE and IntelliJ IDEA, we found the latest has the best support for Play! projects (through the Scala plugin). The open Community Edition of IntelliJ IDEA is by far enough.
Stay connected:
Code is released under the GNU Affero General Public License v3.