CommunityDict is a software tool developed by the SCoRE Lab that facilitates community-driven vocabulary development. It allows users to collaborate and contribute to the creation of shared dictionaries, which can be used to support natural language processing tasks such as machine translation, sentiment analysis, and information retrieval.
With CommunityDict, users can easily add new terms, definitions, and translations to the dictionary, as well as vote and comment on existing entries. The tool also provides a range of features to help users manage and organize the dictionary, including search functionality, automatic term extraction, and customizable filters.
Overall, CommunityDict is a powerful and flexible tool that enables communities to develop and maintain their own specialized vocabularies, improving the accuracy and effectiveness of natural language processing applications in a variety of domains.
https://community-dictionary-dev.web.app/
Join and communicate with other members on our community. We communicate on gitter
Clone the repository.
For cloning this repo: Run git clone https://github.com/scorelab/com-dictionary.git
.
Run the above command in the folder in which you want to make a clone.
Run npm install
in com-dict-client
folder.
cd com-dict-client/
npm install
NOTE: If
npm install
is not executing successfully, then use node v14 andnpm install --legacy-peer-deps
and try again.
First you need to create a .env
file in com-dict-client
folder following the template provided in the file .env.sample
.
.env
file.You should fill in these values in their relevent fields in the .env
file.
To run the project:
$ npm start
If you failed to run the project do the following steps :
npm install
If error still exists add SKIP_PREFLIGHT_CHECK=true
in your .env fileNOTE: Before starting the server create a file named
.env
same as.env.sample
and add your Firebase Configurations in the file.
Visit localhost:3000 to browse.
NOTE:To Deploy firebase cloud functions you have to satisfy following requirements
Run npm install
in com-dict-client/functions
folder.
cd com-dict-client/functions
npm install
Then you have to generate a private key file for your service account.To get the key file go to this link and follow the instructions https://firebase.google.com/docs/admin/setup#initialize-sdk.
Once you have obtained the key, create a folder named as 'private' in the directory 'com-dict-client/functions'. Then copy and paste the key file in private folder. Rename the key file as 'cl-dev-pk.json'
After that change the database url to your project database url in 'com-dict-client/functions/auth.js'
Move to the root directory and open a command prompt and type following commands
npm run-script build
firebase login
firebase projects:list
Find the project ID from the project list that you want to deploy the cloud functions
firebase use <project_id>
firebase deploy
To run storybook :
npm run storybook
It will redirect to 6006 port. Find detailed information here
To run cypress tests:
npx cypress run
It will open a prompt displaying all the tests. You can find detailed information here
flowchart TB
sougatarmail("Email Pass Login \n \n sougatariju13@gmail.com \n\n Pass : 123456 ")
com-dict-clientusermail("Google Login \n \n com-dict-client User")
shivanandamail("Email Pass Login \n \n shivananda@gmail.com \n\n Pass : com-dict-client ")
mahendarmail("Google Login \n \n Mahendar Goud")
sarfarazmail("Google Login \n \n sarfaraz")
org[(Organization)]-->sougataijuorg
org[(Organization)]-->com-dict-clientorg
org[(Organization)]-->google
org[(Organization)]-->github
org[(Organization)]-->youtube
ft[(Firestore)]---sougatariju1---id1(organization)-->sougataijuorg
ft[(Firestore)]---com-dict-clientuser---id2(organization)-->com-dict-clientorg
ft[(Firestore)]---shivananda---id3(organization)-->google
ft[(Firestore)]---mahendar---id4(organization)-->github
ft[(Firestore)]---sarfaraz---id5(organization)-->youtube
auth[(Authentication)]--->sougatarmail--->sougatariju1
auth[(Authentication)]--->com-dict-clientusermail--->com-dict-clientuser
auth[(Authentication)]--->shivanandamail--->shivananda
auth[(Authentication)]--->mahendarmail--->mahendar
auth[(Authentication)]--->sarfarazmail--->sarfaraz
Node.js version 8.0 or higher.
Java JDK version 11 or higher.
npm install -g firebase-tools
firebase --version
firebase init
firebase init emulators
firebase init emulators
or by editing firebase.json
manually.Note:-(Recommended)If you don't configure these settings, the emulators will listen on their default ports, and the Cloud Firestore, Realtime Database and Cloud Storage emulators will run with open data security.
Emulator | Ports |
---|---|
Authentication | 9099 |
Emulator Suite UI | 9099 |
Cloud Functions | 9099 |
Realtime Database | 9099 |
Cloud Firestore | 8080 |
Cloud Storage | 8080 |
Firebase Hosting | 5000 |
Pub/Sub | 8085 |
firebase.json
.firebase emulators:start
or
npm run emulator
firebase emulators:start
or npm run emulator
first and then run npm start
inorder to run the com-dict-client webpage.