twbs / twbs/bootstrap-rubygem

[Bug] Directory structure difference between original bootstrap package and gem

Open
#288 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
SCSS
Stars
2k
Forks
437
Avg merge
1h
Merged PRs (30d)
1

Description

I am looking to use some vendor code that imports individual CSS modules from bootstrap package.
It does it like so:

@import "bootstrap/scss/functions";
@import "bootstrap/scss/variables";
@import "bootstrap/scss/mixins";
@import "bootstrap/scss/reboot";

Countless examples: https://github.com/search?q=import+bootstrap%2Fscss%2Ffunctions&type=code

Those imports become broken when using the gem because gem has different directory structure and imports breaking all packages that relay on it. This gem is using a different dir structure and imports like:

@import "bootstrap/functions";
@import "bootstrap/variables";
@import "bootstrap/variables-dark";

https://github.com/twbs/bootstrap-rubygem/blob/main/assets/stylesheets/_bootstrap.scss#L7C1-L9C36

This can be fixed by adding a symlink or ideally follow original directory structure of bootstrap package.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with assets/stylesheets/_bootstrap.scss and compare its import paths with the original Bootstrap package's SCSS layout. Done means vendor imports such as bootstrap/scss/functions, variables, mixins, and reboot resolve against the gem without changing the vendor code.

Written by the indexing model from the issue text.

Assessment

Tech stack
scss
Domain
build-system, frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.