Slanguage is a web application designed to bridge the language gap across generations and cultures by translating slang, memes, and modern expressions into universally understandable language.
As Gen Z and Gen Alpha continue to shape their own digital dialects through trends and online culture, Slanguage helps users stay connected and communicate clearly — no matter their age or background.
🔗 Demo Video: Watch here
| Category | Technologies |
|---|---|
| Frontend | React, Tailwind CSS, JavaScript |
| Backend | C++, Node.js, Express.js |
| Database | MongoDB, Mongoose |
| AI Integration | Gemini API (GenAI) |
| Authentication | Auth0 |
| Other Tools | Git, CORS |
- Clone the repository
git clone https://github.com/yourusername/Slanguage.git cd Slanguage - Install dependencies
npm install
- Set up environment variables
Create a .env file and add your configuration settings (e.g., API keys, MongoDB credentials). - Run the app
npm run dev
- Open your browser and go to your local host
Hackers: Cris, Irene, Wilson, Natasha
Hackathon: Hack the Valley X — University of Toronto Scarborough
💬 Feedback and contributions are welcome!
Open an issue or submit a pull request to help improve Slanguage.
-
Collect multi-platform contexts
cd backend npm run collect:data -- --collectors reddit,youtube \ --reddit-subs slang,teenagers --reddit-limit 200 --reddit-comments true \ --youtube-query "slang explained" --youtube-comments true
Configure
REDDIT_*,YOUTUBE_API_KEY, and friends inbackend/.envbefore running. -
Run the C++ analyzer for insights
cd backend/src/training/cpp g++ -std=c++17 -O2 slang_trainer.cpp -o slang_trainer ./slang_trainer --input ../../data/generated/slang.contexts.tsv \ --output ../../data/generated/slang_language_model.json \ --top-tokens 20 --related-limit 8 \ --graph-output ../../data/generated/slang_related.tsv \ --state-out ../../data/generated/slang_stats.dat \ --clusters 10 --embedding-features 48 --min-pmi 0.05Next reloads can resume from the saved state with
--state-in. Output now includes PMI-weighted context tokens, per-phrase quality scores, k-means cluster assignments, and a TSV edge list for graph/cluster tooling.
