website
website copied to clipboard
A sign language dictionary
SignDict.org
A crowdsourced sign language dictionary.
Here we will work on SignDict. A sign language dictionary where registered users can add new signs using their webcam. With the crowdsourcing approach we can create the most accurate and largest German sign language dictionary together.
You want to help? Awesome. Scroll through the issues, open a new one, join our Gitter Community or just send a short notice using the contact form. We are happy about every person who wants to help.
We also offer an API.
Development setup
SignDict uses Elixir and Phoenix. Information on how to install Elixir can be found here.
For the video transcoding it uses redis. On
mac, install it via brew install --cask redis, or sudo apt install redis-server for Linux and start it.
As database it uses PostgreSQL.
After you installed everything, the setup is as follows:
Mac instructions:
mix ua_inspector.download
mix deps.get
mix ecto.setup
cd assets/ && yarn install && cd ..
mix phx.server
Linux instructions:
Note: If you run into postgres password authentication errors, check out this blogpost for help.
mix deps.get
mix ecto.setup
sudo apt install npm
sudo npm install -g yarn
cd assets/ && yarn install && cd ..
mix phx.server
Docker instructions:
First, make the PostgreSQL and redis servers point to the docker services. Change hostname: "localhost" to hostname: "db" in config/dev.exs, and add host: "redis" to the :exq section in config/config.exs.
Then run
docker-compose up
to install all dependencies and start the PostgreSQL, redis and web server services (including code reloading). The website is available at http://localhost:4000.
With that you have a running system and a default admin user called
[email protected] with the password thepasswordisalie.
Before you contribute code, please make sure to read the CONTRIBUTING.md
In development mode Bamboo will not sent emails. Instead you can see what
would have been sent out here: http://localhost:4000/sent_emails
This project is using yarn for javascript dependency management.
You can also use the included Procfile to start redis and the phoenix server at
the same time. Install foreman with gem install foreman and execute foreman start
to have both started automatically.
How to run the suite
mix test
Deployment
The server is configured using ansible with this playbook and can be updated with:
ansible-playbook ansible/playbook.yml -i ansible/hosts --extra-vars '{"username": "******"}'
The system is currently using bootleg to
deploy the app. Simply call bootleg_user=USERNAME mix bootleg.update to
deploy it to the production environment.
Importing files manually
You can import a file using a json file with mix importer file.json. The json should have this format.
Funding
This project is government funded by the German Federal Ministry of Education and Research and is part of the 1st batch of the prototype fund.
