Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.3%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: amiruzzaman
  • License: agpl-3.0
  • Language: Python
  • Default Branch: main
  • Size: 31.5 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created about 1 year ago · Last pushed 8 months ago
Metadata Files
Readme License Citation

README.md

ASL Research

Repository for ASL 2 English and English 2 ASL research.

Development

We use just to run commands. It isn't required but will contain shortcuts for the commands outlined in this readme.

Installing NPM Deps

NPM Deps are still managed imperatively, so you need to install them manually.

To do so use the npm just recipe

sh just npm i

...or cd manually and run install. You will need npm installed on your host system for this to work.

sh cd web-frontend npm i cd ..

With Nix/Lix

The easiest way to get set up is to install Lix.

Lix is a declarative, functional package manager and build tool geared towards reporoducible builds.

On Windows, I'd recommend getting it installed in a WSL container.

After installing both Lix and just, you can start a development environment by simply running the dev recipe.

sh just dev

If you don't have just, you can run the command directly.

sh nix develop --command "mprocs --names 'Backend,Frontend' 'python src/web_backend/__init__.py' 'cd web-frontend; npm run dev'"

Imperative

Another way to get set up is to imperatively install all dependencies.

You will need the following system dependencies:

We use the uv tool to manage python dependencies, to create a virtualenv with everything simply run uv sync.

We use npm for Node dependencies, cd into web-frontend and run npm install to get everything installed.

Now, you will need to run both the backend and frontend separately. First run the backend.

sh uv run dev

And on another terminal start the frontend.

sh npm run dev

Accessing The Dev Server

The frontend terminal should give a link to http://localhost:4321, if you ran the just dev recipe use the arrow keys to select the frontend output within mprocs.

This is where you'll access the frontend site, it will communicate with the backend (running on port 5000) via AJAX. In production these two webservers are expected to be unified by a reverse proxy.

Both the frontend and backend are set up to reload on file change, double check any errors that may be appearing in the mprocs UI.

Managing Dependencies

For python, run the uv recipe justfile recipe to add a package.

sh just uv add NAME

Or run it without Nix/Just.

sh uv add NAME


For nodejs, do the same with npm.

sh just npm add NAME

Or cd and run without Nix/Just.

sh cd web-frontend npm add NAME

For both npm and uv change add to remove etc. as needed. Run uv --help or npm --help for more info.

Staging Environment

To get started with staging you can run the vm just recipe.

sh just vm

Or without just, set WORD_DIR to the path that words should be stored in and run the vm directly. (run mkdir words; export WORD_DIR=$PWD/words if you're unsure).

sh nix run .#nixosConfigurations.aslVM.config.system.build.vm

This will spin up a "stateless" (except for the words directory) VM that hosts the web interface on port 8080. You can forward this port as needed for public access.

The WORD_DIR environment variable (set to $PWD/words by default in the just recipe) will hold the word files.

Additional Just Recipes

For Nix specifically, you can run just shell to get into a dev shell with all dependencies loaded (nix develop).

You can also run just run COMMAND to run a command within the dev shell (nix develop --command).

Finally, run just without any arguments for a list of recipes available.

Owner

  • Name: Amir
  • Login: amiruzzaman
  • Kind: user
  • Location: Ohio, USA

I love coding.

Citation (CITATION.cff)

# This file is not complete, we still need to put our references, ORCIDs, etc.
# Reference file: https://github.com/citation-file-format/citation-file-format/blob/main/CITATION.cff

$schema: https://citation-file-format.github.io/1.2.0/schema.json
message: "If you use this code in your research, please cite it using these metadata."
abstract: "Translation of ASL to English and vice versa using ASL Gloss as an intermediate step."
authors:
  - family-names: Amiruzzaman
    given-names: Amir
  - family-names: Amiruzzaman
    given-names: Stefanie
  - family-names: Dracup
    given-names: James
  - family-names: May
    given-names: James
  - family-names: Crocker
    given-names: Benjamin
    orcid: https://orcid.org/0009-0005-7112-5809
  - family-names: Pham
    given-names: Alex
  - family-names: Avina
    given-names: Vijayendra
title: ASL 2 English
license: AGPL-3.0-only
version: 0.0.1
keywords:
  - ASL
  - transformer
  - python
  - mediapipe
  - lstm
  - pytorch
  - torch
  - flask

GitHub Events

Total
  • Delete event: 1
  • Push event: 44
  • Public event: 1
  • Pull request event: 5
  • Create event: 3
Last Year
  • Delete event: 1
  • Push event: 44
  • Public event: 1
  • Pull request event: 5
  • Create event: 3