Name | Technologies |
---|---|
Backend | Ruby 3.2.3 Rails 6.1.7 |
Frontend | Javascript Bootstrap CSS, SCSS HTML, ERB |
Database | PostgreSQL |
Server | Puma |
Testing Tools | RSpec Shoulda Matchers WebMock FactoryBot Faker Swagger SimpleCov TestProf |
Linters | Rubocop ERBLint ESLint |
Upload / Storage | Shrine + S3 |
Admin Panel | ActiveAdmin |
Pagination | Pagy |
Authorization | Pundit |
Authentication | Devise |
-
Clone the project.
git clone [email protected]:AndriiKotsiuruba/elfori_group_test.git
-
Ask the tech lead or lead developer for the
.env
file. Add it to the project root folder. -
Build application.
docker-compose up --build
-
Run seeds.
docker-compose exec backend rails db:seed
development
- deploying to staging
master
(with tag) - deploying to production
Name | Link |
---|---|
Frontend | http://localhost:3000 |
Backoffice | http://localhost:3000/admin |
API | http://localhost:3000/api/v1 |
Show Emails | http://localhost:3000/letter_opener |
Swagger docs | http://localhost:3000/api-docs |
https://drive.google.com/drive/folders/1CZUGD0TDPywhjNvoHi7PT3SF0MSVI7zd
Name | Login | Password |
---|---|---|
Frontend | [email protected] | Password1 |
Backoffice | [email protected] | Password1 |
yarn docker:exec <command>
- execute command inside backend container
yarn docker:status
- show status of running containers
yarn docker:build
- build project
yarn up
- start development environment (you can use -d
option for silence mode)
yarn stop
- stop containers
yarn down
- down containers
yarn bash
- go inside the backend container to execute commands
yarn c
- run Ruby console inside the backend container
yarn routes
- show all routes (you can find all matches yarn routes | grep <resource_name>
)
yarn db:seed
- run seeds
yarn db:replant
- truncate DB and run seeds
yarn db:migrate
- run migrations
yarn db:rollback
- run migration rollback
yarn db:reset
- run reset the database (drop, create, migrate, seed)
yarn rubocop
- run Rubocop (you can use -a
option to fix some issues)
yarn erblint
- run ERBLint (you can use -a
option to fix some issues)
yarn jslint
- run ESLint (you can use --fix
option to fix some issues)
yarn rspec
- run RSpec in parallel mode
yarn linters
- run linters and tests (rubocop, erblint, eslint, rspec)
yarn docs
- run Swagger docs generating
yarn annotate
- run Annotate models