GitHub Link
Demo for only one poem:
https://math-eight.blogspot.com/2025/03/twinkle-twinkle-little-star-word-by.html
On three clicks of "Next":
On one click of "Previous":
When it switches from word to word: it speaks that word out (No magic, just Text to speech in browser).
Ques: WHERE WE ARE COMING FROM?
This was the first app of translation:
We received feedback on this from various students from various backgrounds.
The situation was like this:
There could be three types of users/students of this app:
1. Those are not able to do even single sentence (due to no capacity for reading even simple English words). These students would want something easier, or lighter on them, such as a "Reading App" - like the one we are designing right now.
2. Those who are able to take on these translation questions albeit with some difficulty -- Those are actually learning from this app.
3. Those who already excel in this type of translation questions and who may want to pursue something tougher like the grammar, story creation.
2. A feature that would be supported by only online engaged users will be ASR: Automatic Speech Recognition for live reading and correction.
3. Free and open for all.
4. Database: SQLite in mobile for offline users and MySQL via PythonAnywhere for online users.
==========================================================================
Homework given on 2025-Jul-18:
Subhashish:
1. How would you design this app's front end?
2. How would you design the backend?
Akash:
1. How would you design the processes and programs that would enable the backend for this app?
1:
$ npx react-native start
...
...
Warning: SDK processing. This version only understands SDK XML versions up to 3 but an SDK XML file of version 4 was encountered. This can happen if you use versions of Android Studio and the command-line tools that were released at different times.
/home/jain/Desktop/vaakya_sentence_translation/node_modules/react-native-device-info/android/src/main/java/com/learnium/RNDeviceInfo/RNDeviceModule.java:192: warning: [removal] onCatalystInstanceDestroy() in NativeModule has been deprecated and marked for removal
public void onCatalystInstanceDestroy() {
^
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
1 warning
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:validateSigningDebug'.
> Keystore file '/home/jain/Desktop/vaakya_sentence_translation/android/app/debug.keystore' not found for signing config 'debug'.
I have lost keystore file. Now getting below error: Keystore file '/home/jain/Desktop/vaakya_sentence_translation/android/app/debug.keystore' not found for signing config 'debug'.
Losing the debug.keystore
file is not a serious issue — it’s auto-generated by Android Studio or the React Native CLI when needed. You can recreate it manually in a few simple steps.
debug.keystore
Navigate to your Android app folder:
bashcd /home/jain/Desktop/vaakya_sentence_translation/android/app
Run this command to generate a new debug keystore:
bashkeytool -genkeypair -v -keystore debug.keystore -storepass android -keypass android \
-alias androiddebugkey -keyalg RSA -keysize 2048 -validity 10000
If
keytool
is not found, it's part of your Java JDK. Try:
bashwhich keytool
It’s usually in:
bash/usr/lib/jvm/java-<version>/bin/keytool
You’ll be prompted for a few details. You can just press Enter for all of them or enter dummy values.
bashnpx react-native run-android
Your debug build should now work again.
By default, debug.keystore
is usually created at:
bash~/.android/debug.keystore
React Native just copies it to your project path if needed.
Let me know if you'd prefer to point your project back to the system-wide debug keystore instead of creating a new one.
1.
Android Studio is already installed
The NDK (Native Development Kit) is a toolset provided by Google that allows you to write parts of your Android app using native languages like C or C++, instead of JavaScript, Java, or Kotlin.
3:
$ npx react-native info
warn Package react-native-sqlite-storage contains invalid configuration: "dependency.platforms.ios.project" is not allowed. Please verify it's properly linked using "npx react-native config" command and contact the package maintainers about this.
info Fetching system and libraries information...
System:
OS: Linux 6.11 Ubuntu 24.04.2 LTS 24.04.2 LTS (Noble Numbat)
CPU: (4) x64 Intel(R) Core(TM) i5-4300U CPU @ 1.90GHz
Memory: 1.89 GB / 7.45 GB
Shell:
version: 5.2.21
path: /bin/bash
Binaries:
Node:
version: 18.19.1
path: /usr/bin/node
Yarn: Not Found
npm:
version: 9.2.0
path: /usr/bin/npm
Watchman: Not Found
SDKs:
Android SDK:
API Levels:
- "31"
- "36"
Build Tools:
- 35.0.0
- 36.0.0
Android NDK: Not Found
IDEs:
Android Studio: Not Found
Languages:
Java:
version: 17.0.15
path: /home/jain/Desktop/cupboard/program_files/OpenJDK17U-jdk_x64_linux_hotspot_17.0.15_6/jdk-17.0.15+6/bin/javac
Ruby: Not Found
npmPackages:
"@react-native-community/cli": Not Found
react:
installed: 18.2.0
wanted: 18.2.0
react-native:
installed: 0.74.5
wanted: ^0.74.5
npmGlobalPackages:
"*react-native*": Not Found
Android:
hermesEnabled: true
newArchEnabled: false
iOS:
hermesEnabled: Not found
newArchEnabled: false
info React Native v0.80.1 is now available (your project is running on v0.74.5).
info Changelog: https://github.com/facebook/react-native/releases/tag/v0.80.1
info Diff: https://react-native-community.github.io/upgrade-helper/?from=0.74.5
info For more info, check out "https://reactnative.dev/docs/upgrading?os=linux".
4:
Logs from "npx react-native doctor"
✖ Android SDK - Required for building and installing your app on Android
- Versions found: 35.0.0, 36.0.0
- Version supported: 34.0.0
Open Android Studio
Go to More Actions → SDK Manager
(Or: File > Settings > Appearance & Behavior > System Settings > Android SDK)
Go to the SDK Tools tab.
Check "Show Package Details" (bottom right corner).
Under Android SDK Build-Tools, look for 34.0.0.
Check the box next to 34.0.0
.
Click Apply to install it.
1.
Clone "https://github.com/ashishjain1547/vaakya_sentence_translation"
2.
Check NPM is installed or not.
$ sudo apt install npm
3.
Once installed:
$ npm --version
9.2.0
What is this app teaching?
This app is teaching you fry-sight words, which are covered in Chapters.