# Swahili Semantic Diary (SSD)
Swahili Semantic Diary is an application which is intended to help learners of Kiswahili to improve their vocabulary. Vocabulary building is one of the most dificult aspects of language learning, expecially in a target language where most lexemes have no shared roots with the learner's mother tongue. Swahili is a language with a very regular morphology with few exceptions as it is an agglutinative language. Despite that regularity, it is also challenging to a learner whose L1 language is not Bantu based since it has a much higher number of classes of declensions for nouns which impact both verb conjugation and adjective declinsion. This app helps acts as a person journal/diary for the language learner while allowing for a vocabulary gloss with grammatical information to ensure that new words are effectively learned. Furthermore, there are few applications which assist L2 Swahili learners. With this application, I hope to reduce this void.
The underlying database which has been chosen for this project is PostgreSQL. This `README` should provide basic information on how to get this application up and running so that one can focus on modifying it according to ones needs.
## Dependencies
The installation of PostgreSQL is highly dependent on the OS one chooses as is RVM. Once these dependencies are met, please skip to the set up section for detail on how correctly set up and configure PostgreSQL and RVM.
- PostgreSQL 11
- PostgreSQL 11 Installation
- RVM
- Ruby 2.7.0
- Rails 6.0.3
## Set up
### Use RVM to install Ruby 2.7.0.
```bash
rvm install 2.7.0
# if you wish to use Ruby 2.7.0 by default, run:
rvm --default use 2.7.0
```
### Install necessary Ruby gems (including Rails)
```bash
# update your gems:
gem update --system
# if you want to save disk space, run:
echo "gem: --no-ri --no-rdoc" >> $HOME/.gemrc
gem install rails -v 6.0.3
gem install bundler pg pry rspec
# command used to set up files for Rails to use PostgreSQL (don't …