Giter Club home page Giter Club logo

finglish's Introduction

Finglish is a learning language app that helps users learn new Farsi words using a flashcard system. Inspired by the lack of pronunciation feature in google translate for Farsi language, Finglish brings you pronunciation, translation and phonetic of most common Farsi words using flashcards. Once you are ready, you can take a quiz on each lesson and get an instant result.

Table of Contents

Tech Stack
Requirements
Installation
Features
Future Features

Tech Stack

Backend: Python, Flask, SQLAlchemy, PostgreSQL, AJAX
Frontend: Javascript, Jinja, jQuery, Bootstrap, Html, Css
Libraries: Beautiful Soup,
APIs: https://api.forvo.com/

I built a Postgres database of scraped Farsi words and their translations using beautiful soup library. As an auditory learner, I integrated the pronunciation feature for the Farsi words using an API called forvo.com which crowdsources correct pronunciation. I queried my database using SQL alchemy to create on-demand user lessons that come with a set of flashcards. I used JQuery to demonstrate the flashcards content, and finally, integrated a combination of javascript and CSS to create and animate the flashcards and provide quiz results.

Requirements

  • Flask==1.0.2
  • Flask-DebugToolbar==0.10.1
  • Flask-SQLAlchemy==2.3.2
  • Jinja2==2.10
  • MarkupSafe==1.0
  • psycopg2==2.7.5
  • SQLAlchemy==1.2.8
  • beautifulsoup4
  • RequestsSetup

Installation

  1. Pay for forvo.com basic plan and get a Secret KEY and save your Forvo Secret key in secret.sh file
  2. Create a virtual environment:
    - $ virtualenv env
  3. Activate virtual environment:
    - $ source env/bin/activate
  4. Install requirements:
    - $ pip install -r requirements.txt
  5. Create database:
    - $ createdb Finglish
  6. Create your database tables:
    - $ python3 model.py
  7. Seed your data:
    - $ seed.py
  8. Move your forvo key to secret.sh file and run it :
    - $ source secrets.sh
  9. Run the app:

    -$ python3 server.py
  10. view your app at :
    - http://localhost:5000/

Features

  • Register as a new user and log in:

    log In


  • Search for a word in search bar:

    Seach for a Word


  • Look at your lesson overview:

    Lesson Overview


  • Look at your flashcard:

    Flash Cards


  • Take a quiz:

    Quiz


Future Features

  • Add searched words to lessons
  • Have lessons to reflect the result of the quizes into creation of new lessons
  • Add a notification for words with no pronouciation available

finglish's People

Contributors

shabnomnom avatar

Stargazers

 avatar hossein yaghoubi avatar Chris avatar  avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.