Skip to content
/ brn Public
forked from Brain-up/brn

The idea of this project is to design and make a web-application (with scientist cooperation) which would contained series of special audio trainings to support people with central auditory skills deficit to allow them to train them to listen better.

License

Notifications You must be signed in to change notification settings

tmrr13/brn

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Brain Up!

This project is a web-application being developed to support people with a deficit in their central auditory skills with or without hearing loss, i.e. users of cochlear implant or hearing aids. Intended to be used by children older than 7 years, adults, elderly subjects; anyone who wants to improve their auditory skills, training their brain to improve the understanding of what is heard. It is projected to contain several series of media exercises, which should be added incrementally. The tool structure and usage could be organized in the same way as other tools like www.uchi.ru .

SCIENTIFIC SOURCES

WHY JOIN OUR PROJECT AS A DEVELOPER?

We use latest technologies and best practices, so developers will get to know new tools and their usage, obtaining a useful experience. We will review your code, give you advice to improve it and listen to your suggestions. Most importantly being an open source project you can show your work in it to any person interested, proving your development expertise with actual examples of your work flow and code samples in a live application.

WE ARE LOOKING FOR

  1. Front-end developers: Ember, Angular.
  2. Server-side developers: Kotlin and Java. Components, REST and algorithms.
  3. DevOps: Continuous integration and delivery.
  4. UX: Creative designers for UX research and prototype testing. Your ideas how to improve user retention are welcome.

Join us! Learn something new, try your skills, prove yourself, get experience and get ahead!

TOOLS WE USE

  • Back-end: KOTLIN/java + Spring boot. Rest api as integration layer.
  • Front-end : TBD - Ember, Angular.
  • DB: Postgres in production, H2 for testing.

HOW TO JOIN?

  1. for epam developers: Just click on “JOIN TEAM” button in https://contribute.epam.com/products/143 and we will get in touch with you shortly.
  2. for all other developers: you can send an email to elena_moshnikova@epam.com or directly to brainupproject@yandex.ru describing your interests or any questions you may have. our project skype chat: https://join.skype.com/jxSiWkgwT2x1

GETTING STARTED!

RESOURCES

DOCUMENTATION

https://github.com/Brain-up/brn/wiki || https://kb.epam.com/display/EPMLABSBRN/Brn+project+documentation

JIRA/ISSUSES

https://github.com/Brain-up/brn/issues || https://jira.epam.com/jira/secure/RapidBoard.jspa?rapidView=103360&view=planning

JENKINS (only for epamers now)

https://kb.epam.com/pages/viewpage.action?pageId=885110636

CODING STANDARDS

https://github.com/Brain-up/brn/wiki/Coding-Standards || https://kb.epam.com/display/EPMLABSBRN/Coding+standards

DEVELOPMENT PREREQUISITES

  1. Install node v10 or above https://nodejs.org/en/download/
  2. Install yarn 1.19 or above https://yarnpkg.com/lang/en/docs/install/#mac-stable
  3. In order to make any commit you need Husky dependency be installed (you can use frontend build to get it)
  4. Install Docker https://hub.docker.com/search/?type=edition&offering=community

FRONT END DEVELOPMENT

START YOUR FRONT END DEVELOPMENT SERVER

Run following commands: linux/mac:

cd ./frontend/ && yarn && node ./node_modules/.bin/ember serve

for windows:

 ./node_modules/.bin/ember serve --port=4201

FE dev server now accessible at http://localhost:4200/

GET DATABASE RUNNING

The project uses postgres 11.5. Documentation Currently for local development we use postgres docker image To install docker:

To run docker use the following command:

  • on linux: docker run -p 5432:5432 -e POSTGRES_DB=brn -e POSTGRES_PASSWORD=$PG_PASSWORD -e POSTGRES_USER=$PG_USER postgres:11
  • on windows: docker run --name postgres_dev -d -p 5432:5432 -e POSTGRES_DB=brn -e POSTGRES_PASSWORD=$PG_PASSWORD -e POSTGRES_USER=$PG_USER postgres:11

$PG_PASSWORD and $PG_USER are environment variables and could be replaced directly or added to your operation system how to add in win10. Alternatively, you can just replace the variables by "admin", the default user and password for development: docker run --name postgres_dev5 -d -p 5432:5432 -e POSTGRES_DB=brn -e POSTGRES_PASSWORD=admin -e POSTGRES_USER=admin postgres:11

GET THE BACKEND PROJECT RUNNING

  1. Run command 'gradle build' from main project folder to build project with tests.
  2. Use --spring.profiles.active=dev when running spring project, in command line or change it in application.properties.
  3. Application.kt is the main class to run application.

Note that if you are using IntelliJ, you may want to use version 2019.2 and later to avoid issues with new kotlin plugin.

CREATING BRANCHES

Use format 'EPMLABSBRN-# issue description' or 'Merge description'. Issue number must be in range [0-1999]

BACK END DEVELOPMENT

START BACKEND from IDEA

just run Application.kt after launching database in docker.

Code style

  • Please refer for details to kb resources: https://github.com/Brain-up/brn/wiki/Code-Style or https://kb.epam.com/display/EPMCOSRINT/Code+style
  • Always use Ctrl+Alt+L in IDEA to update code formatting before committing!
  • Use gradlew ktlint command to check code style. If this task fails, the related report with error details can be found in the 'build\reports\ktlint' folder.
  • It is also possible to use gradlew ktlintFormat command to fix code style errors automatically.
  • Please note that if gradlew ktlint task fails, project build will fail also.

DEPLOY USING DOCKER COMPOSE

  1. Open file docker-compose.yml and change SPRING_PROFILE to "dev".
  2. From console, from project's folder, execute:
docker-compose up --build

Alternatively, use daemon mode (no console output):

docker-compose -d up --build

REST API will be accessible at http://localhost:8081/api/swagger-ui.html

docker useful command: docker ps -a -q for show all containers docker stop idContainer for stop running container docker rm $(docker ps -a -q) Remove all stopped containers

DEVELOPMENT PROCESS

  1. Get a task assigned in JIRA (for epamers) or issue (https://github.com/Brain-up/brn/issues) you choosed and discused with @ElenaSpb.
  2. Create branch from dev with the codename of your task, i.e. EPAMLABSBRN-1.
  3. Implement your task, do not forget to write tests. Remember to follow project's coding standards: https://github.com/Brain-up/brn/wiki/Coding-Standards or https://kb.epam.com/display/EPMCOSRINT/Coding+standarts .
  4. Create pull request with task name and description about what was done.
  5. Notify the team in our skype chat and wait for reviews. At least one reviewer is necessary, but more can be added in a case by case basis.
  6. The task gets merged by a project mantainer.

7. check that build job on jenkins passes successfully.

Thank you very much for your support!

our application is run on http://ecse005003f1.epam.com/ && http://31.184.253.199/

License

This project is licensed under the MIT license. See the LICENSE text.

About

The idea of this project is to design and make a web-application (with scientist cooperation) which would contained series of special audio trainings to support people with central auditory skills deficit to allow them to train them to listen better.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Kotlin 51.0%
  • JavaScript 29.4%
  • TypeScript 9.6%
  • HTML 5.7%
  • CSS 2.7%
  • RAML 1.4%
  • Other 0.2%