Giter Site home page Giter Site logo

glossary-blocker-ruby-on-rails's Introduction

README

Translator API - An API with several endpoints to manage glossaries and translations. Use this test to demonstrate your understanding of OO and TDD. Task:

  • Implement an API-only Ruby on Rails application.
  • Use JSON as the response format.
  • Provide tests for your code.
  • You can use any sql database of your choice.
  • You can use any gems you like.
  • Send us your zipped solution. Required endpoints: POST /glossaries Description: Creates a glossary. Params: source_language_code - an ISO 639-1 source language code target_language_code - an ISO 639-1 target language code Requirements:
  • a glossary must be unique within the system (scoped to language codes)
  • language code fields must contain a valid ISO 639-1 code
  • the list of possible ISO 639-1 codes is included in the file GET /glossaries/ Description: Returns the glossary with all terms. GET /glossaries Description: Returns all glossaries with terms. POST /glossaries//terms Description: Creates a term in the given glossary. Params: source_term - a source term target_term - a target term Requirements:
  • source and target terms cannot be blank POST /translations Description: Creates a translation. Note: the translation process will not take place within this application. Params: source_language_code - an ISO 639-1 source language code target_language_code - an ISO 639-1 target language code source_text - a source text to be translated glossary_id - an existing glossary id Requirements:
  • source_language_code, target_language_code, source_text fields must be present
  • the glossary_id is optional
  • if the glossary_id is provided source_language_code and target_language_code for translation and glossary must match
  • the maximum length of the source text is 5000 characters GET /translations/ Description: Returns the translation. Requirements:
  • if the glossary is present the source_text should contain highlighted fragments representing the glossary terms (if found)
  • use tags to represent highlights in the source_text
  • include a list of matching terms in the response Example: source_text: "This is a recruitment task." glossary term: "recruitment" highlighted source_text: "This is a recruitment task." Bonus:
  • Provide a Dockerfile which allows to run your app

glossary-blocker-ruby-on-rails's People

Contributors

manzi-cedrick avatar

Stargazers

 avatar  avatar

Watchers

 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.