Skip to content

Commit e73f122

Browse files
committed
Merge branch 'main' into lara
2 parents ae16c35 + dbbbec1 commit e73f122

9 files changed

Lines changed: 200 additions & 12 deletions

File tree

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
name: Create Release
2+
on:
3+
push:
4+
branches: master
5+
tags:
6+
- v*
7+
8+
permissions:
9+
contents: write
10+
11+
jobs:
12+
release_build:
13+
runs-on: ubuntu-latest
14+
if: startsWith(github.ref, 'refs/tags/')
15+
steps:
16+
- name: Checkout
17+
uses: actions/checkout@v4.1.1
18+
19+
- name: Setup JDK
20+
uses: actions/setup-java@v3.13.0
21+
with:
22+
java-version: '11'
23+
distribution: 'temurin'
24+
cache: gradle
25+
26+
- name: Create local gradle properties files
27+
run: touch local.properties
28+
29+
- name: Add Google Maps API Key
30+
run: echo "MAPS_API_KEY=${{secrets.MAPS_API_KEY}}" >> local.properties
31+
32+
# Here we need to decode keystore.jks from base64 string and place it
33+
# in the folder specified in the release signing configuration
34+
- name: Decode Keystore
35+
id: decode_keystore
36+
uses: timheuer/base64-to-file@v1.2.3
37+
with:
38+
fileName: 'android_keystore.jks'
39+
fileDir: '/home/runner/work/<<project name>>/<<project name>>/app/keystore/'
40+
encodedString: ${{ secrets.SIGNING_KEYSTORE }}
41+
42+
- name: Build Release APK
43+
env:
44+
SIGNING_KEY_ALIAS: ${{ secrets.SIGNING_KEY_ALIAS }}
45+
SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }}
46+
SIGNING_STORE_PASSWORD: ${{ secrets.SIGNING_STORE_PASSWORD }}
47+
run: ./gradlew build -x lint -x lintVitalRelease
48+
49+
- name: Build Release Bundle
50+
run: ./gradlew bundleRelease
51+
env:
52+
SIGNING_KEY_ALIAS: ${{ secrets.SIGNING_KEY_ALIAS }}
53+
SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }}
54+
SIGNING_STORE_PASSWORD: ${{ secrets.SIGNING_STORE_PASSWORD }}
55+
56+
- name: Upload Build to artifacts
57+
uses: actions/upload-artifact@v3.1.3
58+
with:
59+
name: release-artifacts
60+
path: |
61+
app/build/outputs/debug/app-debug.apk
62+
app/build/outputs/bundle/release/
63+
64+
- name: Create Github Release
65+
uses: softprops/action-gh-release@v1
66+
with:
67+
generate_release_notes: true
68+
prerelease: true
69+
files: |
70+
app/build/outputs/apk/debug/app-debug.apk
71+
app/build/outputs/bundle/release/app-release.aab
Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,25 @@ jobs:
2323
run: touch local.properties
2424
- name: Add Google Maps API Key
2525
run: echo "MAPS_API_KEY=${{secrets.MAPS_API_KEY}}" >> local.properties
26+
# Here we need to decode keystore.jks from base64 string and place it
27+
# in the folder specified in the release signing configuration
28+
- name: Decode Keystore
29+
id: decode_keystore
30+
uses: timheuer/base64-to-file@v1.2.3
31+
with:
32+
fileName: 'android_keystore.jks'
33+
fileDir: '/home/runner/work/<<project name>>/<<project name>>/app/keystore/'
34+
encodedString: ${{ secrets.SIGNING_KEYSTORE }}
2635
- name: Build debug APK
2736
run: ./gradlew build -x lint -x lintVitalRelease
37+
env:
38+
SIGNING_KEY_ALIAS: ${{ secrets.SIGNING_KEY_ALIAS }}
39+
SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }}
40+
SIGNING_STORE_PASSWORD: ${{ secrets.SIGNING_STORE_PASSWORD }}
41+
2842
- name: Upload APK
2943
uses: actions/upload-artifact@v3.1.3
3044
with:
31-
name: app
45+
name: app-debug-build
3246
path: app/build/outputs/apk/debug/app-debug.apk
3347

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,5 @@ google-services.json
3131

3232
# Android Profiling
3333
*.hprof
34+
35+
site

README.md

Lines changed: 29 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,35 @@
22

33
This is the code repository for the Android app developed in the studyproject Sensory augmentation and grasping movements.
44

5-
![Debug APK Builds](https://github.com/StudyProject-NLI/NLInterface/actions/workflows/main.yml/badge.svg)
5+
[![Testing APK](https://github.com/StudyProject-NLI/NLInterface/actions/workflows/debug_build.yml/badge.svg)](https://github.com/StudyProject-NLI/NLInterface/actions/workflows/debug_build.yml)
6+
7+
# Roadmap
8+
9+
```mermaid
10+
gitGraph LR:
11+
commit id: "Current state"
12+
commit id: "Workgroup Release" tag: "v0.0.1"
13+
commit id: "Run example tensorflow model"
14+
commit id: "Feedback round with experimental group"
15+
commit id: "Integrate feedback" tag: "v0.0.2"
16+
commit id: "Christmas break"
17+
commit id: "Object detection via any image input"
18+
commit id: "Polishing"
19+
commit id: "Optivist Presentation" tag: "v0.0.3"
20+
commit id: "Prepare for codebase transfer"
21+
```
22+
23+
# Documentation
24+
25+
## Running locally
26+
- Install Python
27+
- `pip install -r docs/requirements.txt`
28+
29+
Run the documentation server via
30+
```bash
31+
$ mkdocs serve
32+
```
33+
634

735
# Building the app locally
836
Requirements:
@@ -28,13 +56,3 @@ The resulting installable application can be found under
2856
`app/build/outputs/apk/debug/app-debug.apk`
2957

3058
which you can copy and install on your device.
31-
32-
33-
# Local Development Setup
34-
35-
We are using [Android Studio](https://developer.android.com/studio/) for development.
36-
37-
38-
# Architecture Overview
39-
40-
t.b.d

docs/architecture/overview.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# How is our app structured?
2+
3+
```mermaid
4+
flowchart
5+
subgraph activities
6+
m[MainActivity]
7+
m --> GroceryListActivity
8+
m --> PlaceActivity
9+
m --> SettingsActivity
10+
11+
end
12+
subgraph utilities
13+
TextToSpeechUtility
14+
SpeechToTextButton
15+
SpeechToTextUtility
16+
17+
end
18+
```

docs/images/favicon.png

36.7 KB
Loading

docs/index.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Overview
2+
3+
Welcome to the documentation of NLInterface Project!

docs/requirements.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
mkdocs
2+
mkdocs-material

mkdocs.yml

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
site_name: NLInterface
2+
site_url: ""
3+
use_directory_urls: false
4+
5+
repo_name: NLInterface
6+
repo_url: https://github.com/StudyProject-NLI/NLInterface
7+
8+
9+
theme:
10+
name: "material"
11+
highlightjs: true
12+
hljs_languages:
13+
- bash
14+
- kotlin
15+
favicon: images/favicon.png
16+
logo: images/favicon.png
17+
icon:
18+
repo: fontawesome/brands/github
19+
20+
palette:
21+
# Palette toggle for automatic mode
22+
- media: "(prefers-color-scheme)"
23+
toggle:
24+
icon: material/brightness-auto
25+
name: Switch to light mode
26+
27+
# Palette toggle for light mode
28+
- media: "(prefers-color-scheme: light)"
29+
scheme: default
30+
toggle:
31+
icon: material/brightness-7
32+
name: Switch to dark mode
33+
34+
# Palette toggle for dark mode
35+
- media: "(prefers-color-scheme: dark)"
36+
scheme: slate
37+
toggle:
38+
icon: material/brightness-4
39+
name: Switch to system preference
40+
41+
features:
42+
- search.suggest
43+
44+
45+
markdown_extensions:
46+
- attr_list
47+
- md_in_html
48+
- admonition
49+
- pymdownx.inlinehilite
50+
- pymdownx.details
51+
- pymdownx.snippets
52+
- pymdownx.superfences:
53+
custom_fences:
54+
- name: mermaid
55+
class: mermaid
56+
format: !!python/name:pymdownx.superfences.fence_code_format
57+
58+
plugins:
59+
- offline
60+
- search

0 commit comments

Comments
 (0)