Skip to content

Commit 25bb23b

Browse files
committed
chore: 🤖 Initial commit
initial commit with template
0 parents  commit 25bb23b

28 files changed

+9538
-0
lines changed

‎.eslintignore‎

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
**src/fonts/*
2+
**src/images/*
3+
**src/utilities/geodesy/*
4+
*.json
5+
*.css
6+
*.md
7+
*.test.js*
8+
*.test.jsx*
9+
webpack.*.js
10+
*.svg

‎.eslintrc.json‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"extends": "@argo/eslint-config"
3+
}

‎.gitignore‎

Lines changed: 195 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,195 @@
1+
# File created using '.gitignore Generator' for Visual Studio Code: https://bit.ly/vscode-gig
2+
# Created by https://www.toptal.com/developers/gitignore/api/visualstudiocode,linux,node,react
3+
# Edit at https://www.toptal.com/developers/gitignore?templates=visualstudiocode,linux,node,react
4+
5+
### Linux ###
6+
*~
7+
8+
# temporary files which can be created if a process still has a handle open of a deleted file
9+
.fuse_hidden*
10+
11+
# KDE directory preferences
12+
.directory
13+
14+
# Linux trash folder which might appear on any partition or disk
15+
.Trash-*
16+
17+
# .nfs files are created when an open file is removed but is still being accessed
18+
.nfs*
19+
20+
### Node ###
21+
# Logs
22+
logs
23+
*.log
24+
npm-debug.log*
25+
yarn-debug.log*
26+
yarn-error.log*
27+
lerna-debug.log*
28+
.pnpm-debug.log*
29+
30+
# Diagnostic reports (https://nodejs.org/api/report.html)
31+
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
32+
33+
# Runtime data
34+
pids
35+
*.pid
36+
*.seed
37+
*.pid.lock
38+
39+
# Directory for instrumented libs generated by jscoverage/JSCover
40+
lib-cov
41+
42+
# Coverage directory used by tools like istanbul
43+
coverage
44+
*.lcov
45+
46+
# nyc test coverage
47+
.nyc_output
48+
49+
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
50+
.grunt
51+
52+
# Bower dependency directory (https://bower.io/)
53+
bower_components
54+
55+
# node-waf configuration
56+
.lock-wscript
57+
58+
# Compiled binary addons (https://nodejs.org/api/addons.html)
59+
build/Release
60+
61+
# Dependency directories
62+
node_modules/
63+
jspm_packages/
64+
65+
# Snowpack dependency directory (https://snowpack.dev/)
66+
web_modules/
67+
68+
# TypeScript cache
69+
*.tsbuildinfo
70+
71+
# Optional npm cache directory
72+
.npm
73+
74+
# Optional eslint cache
75+
.eslintcache
76+
77+
# Optional stylelint cache
78+
.stylelintcache
79+
80+
# Microbundle cache
81+
.rpt2_cache/
82+
.rts2_cache_cjs/
83+
.rts2_cache_es/
84+
.rts2_cache_umd/
85+
86+
# Optional REPL history
87+
.node_repl_history
88+
89+
# Output of 'npm pack'
90+
*.tgz
91+
92+
# Yarn Integrity file
93+
.yarn-integrity
94+
95+
# dotenv environment variable files
96+
.env
97+
.env.development.local
98+
.env.test.local
99+
.env.production.local
100+
.env.local
101+
102+
# parcel-bundler cache (https://parceljs.org/)
103+
.cache
104+
.parcel-cache
105+
106+
# Next.js build output
107+
.next
108+
out
109+
110+
# Nuxt.js build / generate output
111+
.nuxt
112+
dist
113+
114+
# Gatsby files
115+
.cache/
116+
# Comment in the public line in if your project uses Gatsby and not Next.js
117+
# https://nextjs.org/blog/next-9-1#public-directory-support
118+
# public
119+
120+
# vuepress build output
121+
.vuepress/dist
122+
123+
# vuepress v2.x temp and cache directory
124+
.temp
125+
126+
# Docusaurus cache and generated files
127+
.docusaurus
128+
129+
# Serverless directories
130+
.serverless/
131+
132+
# FuseBox cache
133+
.fusebox/
134+
135+
# DynamoDB Local files
136+
.dynamodb/
137+
138+
# TernJS port file
139+
.tern-port
140+
141+
# Stores VSCode versions used for testing VSCode extensions
142+
.vscode-test
143+
144+
# yarn v2
145+
.yarn/cache
146+
.yarn/unplugged
147+
.yarn/build-state.yml
148+
.yarn/install-state.gz
149+
.pnp.*
150+
151+
### Node Patch ###
152+
# Serverless Webpack directories
153+
.webpack/
154+
155+
# Optional stylelint cache
156+
157+
# SvelteKit build / generate output
158+
.svelte-kit
159+
160+
### react ###
161+
.DS_*
162+
**/*.backup.*
163+
**/*.back.*
164+
165+
node_modules
166+
167+
*.sublime*
168+
169+
psd
170+
thumb
171+
sketch
172+
173+
### VisualStudioCode ###
174+
.vscode/*
175+
!.vscode/settings.json
176+
!.vscode/tasks.json
177+
!.vscode/launch.json
178+
!.vscode/extensions.json
179+
!.vscode/*.code-snippets
180+
181+
# Local History for Visual Studio Code
182+
.history/
183+
184+
# Built Visual Studio Code Extensions
185+
*.vsix
186+
187+
### VisualStudioCode Patch ###
188+
# Ignore all local history of files
189+
.history
190+
.ionide
191+
192+
# End of https://www.toptal.com/developers/gitignore/api/visualstudiocode,linux,node,react
193+
194+
# Custom rules (everything added below won't be overriden by 'Generate .gitignore File' if you use 'Update' option)
195+
config.json

‎.husky/pre-commit‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
#!/bin/sh
2+
. "$(dirname "$0")/_/husky.sh"
3+
4+
pnpm run pretty && pnpm run lint && pnpm run test

‎.husky/prepare-commit-msg‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
#!/bin/sh
2+
. "$(dirname $0)/_/husky.sh"
3+
4+
exec < /dev/tty && pnpm dlx git-cz --hook || true

‎.prettierignore‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
*.json
2+
*.md
3+
**/geodesy/**
4+
*.yaml

‎.prettierrc‎

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{
2+
"tabWidth": 4,
3+
"semi": true,
4+
"singleQuote": true,
5+
"jsxSingleQuote": true,
6+
"trailingComma": "none",
7+
"printWidth": 80,
8+
"quoteProps": "consistent",
9+
"bracketSpacing": true,
10+
"bracketSameLine": true,
11+
"arrowParens": "avoid",
12+
"parser": "babel",
13+
"htmlWhitespaceSensitivity": "css",
14+
"endOfLine": "lf"
15+
}

‎CONTRIBUTING.md‎

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# Contributing to React Template
2+
3+
* [Setting up](#setting-up)
4+
* [Linting](#linting)
5+
* [Commiting Changes](#commiting-changes)
6+
* [Pull requests](#pull-requests)
7+
* [Releases](#releases)
8+
9+
## [Setting up](setting-up)
10+
11+
You will need to install node to be able to build the react-template package. The best way to install and manage node versions is using nvm. Details on how to install and use nvm can be found [here](https://github.com/nvm-sh/nvm)
12+
13+
The React Template project uses pnpm as a package manager, installation of pnpm can be done through npm using a
14+
global install.
15+
16+
```sh
17+
npm install -g pnpm
18+
```
19+
20+
For more information on installing pnpm [click here](https://pnpm.io/installation)
21+
22+
Copy the `config.json.example` to config.json. config.json will be ignored by git, so you can change any values in here to match your environment.
23+
24+
## [Linting](linting)
25+
26+
React Template uses eslint with the `@argo/eslint-config` package, alongside prettier rules defined in the project for code styling. This allows for consistent styling across the `@atlas` packages.
27+
28+
Linting and prettier are automatically run at commit time.
29+
30+
## [Commiting Changes](commiting-changes)
31+
32+
When you run `git commit`, [Husky](https://typicode.github.io/husky/#/) will run a number of git hooks. These include tests, linting, prettier and hooks for structuring your commit messages.
33+
34+
Once the linting and tests have finished running, follow the guide to build your commit message. Picking the correct type of commit for your changes and listing any breaking changes you have made.
35+
36+
You can skip any fields that do not apply to your commit. NOTE: filling anything into `BREAKING CHANGES` will cause a major version to be released when PRs are merged to master.
37+
38+
## [Pull Requests](pull-requests)
39+
40+
Raise a pull request [here](<LINK_TO_GITHUB>) and it will be reviewed by the team. Your PR must have a successful build, no "needs work" status from any reviewer and must get a minimum of two approvals before it can be merged.
41+
42+
## [Releases](#releases)
43+
44+
The React Template release process is handled by [semantic-release](https://semantic-release.gitbook.io/semantic-release/usage/configuration) and runs automatically in the `master` branch, when the build is successful and the tests pass.
45+
46+
The release config also allows for releasing prerelease versions of the app from one of branches `alpha` or `develop`. To ensure that semantic-release recognises these branches, they must exist in source control (Make sure they are deleted in the central repository once you are done). A prelease version from either of these branches will have the format `X.X.X-branch.X` e.g `1.2.3-alpha.1`

‎Dockerfile‎

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# base pnpm stage
2+
FROM node:lts-alpine as pnpm
3+
ARG NPM_AUTH_TOKEN
4+
5+
COPY .npmrc .
6+
7+
RUN npm i -g pnpm
8+
9+
# Build stage
10+
FROM pnpm as workspace
11+
ARG NPM_AUTH_TOKEN
12+
13+
WORKDIR app/
14+
15+
COPY container ./container
16+
COPY src ./src
17+
COPY package.json .
18+
COPY pnpm-lock.yaml .
19+
COPY .npmrc .
20+
COPY babel.config.json .
21+
COPY webpack.common.js .
22+
COPY webpack.prod.js .
23+
24+
RUN pnpm i --frozen-lockfile &&\
25+
pnpm build
26+
27+
# Deploy stage
28+
FROM nginx:latest
29+
30+
COPY --from=workspace /app/dist/ /usr/share/nginx/html
31+
COPY default.conf /etc/nginx/conf.d/default.conf

‎README.md‎

Whitespace-only changes.

0 commit comments

Comments
 (0)