You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-[Run The Development Server](#run-the-development-server)
@@ -90,102 +88,6 @@ The back-end is responsible for providing data for the front-end to display. Thi
90
88
91
89
[What is an API?](https://medium.freecodecamp.org/what-is-an-api-in-english-please-b880a3214a82)
92
90
93
-
## Technologies
94
-
95
-
Here is an alphabetically-sorted list of technologies this project leverages:
96
-
97
-
-[Babel](https://babeljs.io/) - JavaScript compiler to unify all the different versions of JS that may have been used or will be used in the future. [Here's a blog post from Scotch.io on why JavaScript utilizes "transpiling" with Babel](https://scotch.io/tutorials/javascript-transpilers-what-they-are-why-we-need-them).
98
-
-[CSS Modules](https://github.com/css-modules/css-modules) - CSS Modules allow us to encapsulate CSS within components. Instead of HTML/CSS - our project structure is basically JSX/CSS.
-[Jest](https://jestjs.io/) - A JavaScript testing framework from Facebook. We use it for all of our unit and some of our integration/regression tests.
101
-
-[Next.js](https://nextjs.org/) - Next is a framework for creating ["server-side rendered"](https://medium.freecodecamp.org/demystifying-reacts-server-side-render-de335d408fe4) React applications with a lot of performance and [search engine optimizations](https://searchengineland.com/guide/what-is-seo) out-of-the-box.
102
-
-[Node.js](https://www.nodejs.org/) - Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. React utilizes a tiny Node/Express server for it's development environment.
-[React.js](https://facebook.github.io/react/) - Facebook's popular JavaScript front-end framework.
105
-
-[Storybook](https://storybook.js.org) - Storybook acts as a "component workbench" and source for component documentation. You can learn more about Storybook on your own [here](https://www.learnstorybook.com/). You can see our Storybook here: [](http://storybook.operationcode.org)
106
-
-[Webpack](https://webpack.js.org/) - The premier module bundler for JavaScript. Read [this article](https://survivejs.com/webpack/what-is-webpack/) for more information.
107
-
-[pnpm](https://pnpm.io/) - Fast, disk space efficient package manager that uses a content-addressable storage system.
108
-
109
-
### PostCSS
110
-
111
-
In our repo, we use PostCSS plug-ins to help simplify how we write our CSS. PostCSS is included in our webpack configuration, so there are no additional steps necessary to leverage these plug-ins.
112
-
113
-
#### What is PostCSS?
114
-
115
-
"PostCSS is a tool for transforming styles with JS plugins. These plugins can lint your CSS, support variables and mixins, transpile future CSS syntax, inline images, and more." - [PostCSS Repo](https://github.com/postcss/postcss)
116
-
117
-
#### PostCSS Plug-ins in Use
118
-
119
-
-[Autoprefixer](https://github.com/postcss/autoprefixer): used to parse vendor prefixes for certain CSS property values
120
-
([What is a vendor prefix?](https://developer.mozilla.org/en-US/docs/Glossary/Vendor_Prefix)). In our repo, you will not have to include vendor prefixes when you create a non-standard CSS selector.
121
-
122
-
**Example:**
123
-
During development, we would write:
124
-
125
-
```
126
-
.someClass {
127
-
disply: flex;
128
-
}
129
-
```
130
-
131
-
Which will output the following once compiled:
132
-
133
-
```
134
-
.someClass {
135
-
display: -webkit-box;
136
-
display: -ms-flexbox;
137
-
display: flex;
138
-
}
139
-
```
140
-
141
-
-[PostCSS Media Variables](https://github.com/WolfgangKluge/postcss-media-variables): This plugin allows us to set 'default' breakpoints, and manipulate those values as needed without changing the defaults. Our defaults are defined in `common/styles/variables.css`
142
-
143
-
**Example:**
144
-
During development, we would write:
145
-
146
-
```
147
-
:root {
148
-
--largeViewportWidth: 992px;
149
-
}
150
-
@media (min-width: var(--largeViewportWidth)) {}
151
-
```
152
-
153
-
Which will output the following when deployed:
154
-
155
-
```
156
-
@media (min-width: 992px){}
157
-
```
158
-
159
-
-[PostCSS CSS Variables](https://github.com/MadLittleMods/postcss-css-variables): This plug-in allows us to use [CSS3 variables](https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_variables) across older browsers. On run-time, this plug-in extracts and translates our custom variables into 'vanilla' CSS.
160
-
161
-
**Example:**
162
-
During development, we would write:
163
-
164
-
```
165
-
:root {
166
-
--some-color: red;
167
-
/*here we have defined the property `--some-color` as red*/
168
-
}
169
-
170
-
.foo {
171
-
color: --some-color;
172
-
/*the element with class selector `.foo` will be red */
173
-
}
174
-
175
-
```
176
-
177
-
Which will output the following when deployed:
178
-
179
-
```
180
-
.foo {
181
-
color: red;
182
-
}
183
-
```
184
-
185
-
-[PostCSS Export Custom Variables](https://github.com/jonathantneal/postcss-export-custom-variables): We use this plug-in simply to export our collection of CSS variables to [common/styles/themeMap.js](https://github.com/OperationCode/front-end/blob/main/common/styles/themeMap.js) so that they're leveragable within any JavaScript context.
186
-
187
-
-[PostCSS Import](https://github.com/postcss/postcss-import): This plug-in essentially tries to emulate the existing [CSS Import spec](https://developer.mozilla.org/en-US/docs/Web/CSS/@import) allowing for modularization and concatenation of CSS files.
188
-
189
91
## Development Workflow
190
92
191
93
### Installing Dependencies
@@ -248,9 +150,6 @@ You can see interactive documentation on all of our components via [![Storybook]
248
150
| ├── index.js # Landing page
249
151
| └── *.js # All the other pages
250
152
|
251
-
├── scripts
252
-
| └── createComponent
253
-
|
254
153
├── static
255
154
| ├── fonts
256
155
| └── images
@@ -316,12 +215,6 @@ pnpm test $fileName
316
215
317
216
# Opens up a Cypress browser with which you can check e2e tests locally. Be sure the local dev server is running before this command!
318
217
pnpm test:e2e
319
-
320
-
#Create all the necessary files/folders for a new, reusable component. Please make `ComponentName` TitleCase.
0 commit comments