Skip to content

Commit e51307c

Browse files
committed
uniting the front-end and backend under one folder and make it public
1 parent b4d8a27 commit e51307c

316 files changed

Lines changed: 28175 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/pull_request_template.md

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# Pull Request Description
2+
#### Replace with [X]
3+
4+
## Changes Made
5+
*Describe your changes concisely*
6+
7+
## Type of Change
8+
- [ ] Bug fix
9+
- [ ] New feature
10+
- [ ] Breaking change
11+
- [ ] UI/UX update
12+
- [ ] Performance improvement
13+
- [ ] Documentation update
14+
15+
## Project Area
16+
- [ ] Frontend
17+
- [ ] Components (new/modified components)
18+
- [ ] State Management (TanStack Query)
19+
- [ ] Routing (React Router changes)
20+
- [ ] API Integration (service layer)
21+
- [ ] Styling (CSS/Tailwind/styled-components)
22+
- [ ] Assets (images, icons, fonts)
23+
- [ ] Backend
24+
- [ ] API Endpoints
25+
- [ ] Database Changes
26+
- [ ] Services
27+
- [ ] Models
28+
- [ ] Authentication/Authorization
29+
- [ ] Configuration
30+
31+
## Quality Checklist
32+
### Frontend (if applicable)
33+
- [ ] Components follow project structure
34+
- [ ] PropTypes/TypeScript types defined
35+
- [ ] Responsive design implemented
36+
- [ ] Tests added/updated (Jest/React Testing Library)
37+
- [ ] Code formatted (Prettier)
38+
- [ ] ESLint passes without errors
39+
- [ ] No console logs in production code
40+
- [ ] Components properly documented
41+
- [ ] Accessibility standards met
42+
- [ ] Performance checked (React DevTools)
43+
44+
### Backend (if applicable)
45+
- [ ] API documentation updated
46+
- [ ] Database migrations added
47+
- [ ] Unit tests added/updated
48+
- [ ] Error handling implemented
49+
- [ ] Logging implemented
50+
- [ ] Security considerations addressed
51+
- [ ] Performance considerations addressed
52+
53+
## State Management Changes
54+
- [ ] TanStack Query mutations/queries added/modified
55+
- [ ] Query invalidation implemented
56+
- [ ] Context API changes
57+
- [ ] Custom hooks added/modified
58+
- [ ] Proper error handling implemented
59+
- [ ] Loading states managed
60+
61+
## Build and Dependencies
62+
- [ ] New dependencies added
63+
- [ ] Package.json/*.csproj updated
64+
- [ ] Build succeeds locally
65+
- [ ] Environment variables updated
66+
67+
## Browser Compatibility (Frontend)
68+
- [ ] Chrome
69+
- [ ] Firefox
70+
- [ ] Safari
71+
- [ ] Edge
72+
- [ ] Mobile browsers
73+
74+
## Related Issues
75+
*Reference related issues (#issue-number)*
76+
77+
## Breaking Changes
78+
*List any breaking changes and migration steps*
79+
80+
## Screenshots/Recordings
81+
*If applicable, add screenshots or recordings showing the changes*
82+
83+
## Additional Notes
84+
*Any additional information that might be helpful*
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
name: Full Stack CI/CD Pipeline
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
- dev
8+
pull_request:
9+
branches:
10+
- main
11+
- dev
12+
13+
jobs:
14+
backend:
15+
runs-on: ubuntu-latest
16+
defaults:
17+
run:
18+
working-directory: ./server
19+
20+
steps:
21+
- name: Checkout code
22+
uses: actions/checkout@v3
23+
24+
- name: Setup .NET
25+
uses: actions/setup-dotnet@v3
26+
with:
27+
dotnet-version: '8.0.x'
28+
29+
- name: Restore dependencies
30+
run: dotnet restore ./PMS_Project/PMS_Project.Presenter.API/
31+
32+
- name: Build
33+
run: dotnet build ./PMS_Project/PMS_Project.Presenter.API/ --no-restore --configuration Release
34+
35+
- name: Test
36+
run: dotnet test ./PMS_Project/PMS_Project.Presenter.API/ --no-build --verbosity normal --configuration Release
37+
38+
- name: Publish
39+
if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev'
40+
run: |
41+
cd ./PMS_Project/PMS_Project.Presenter.API/
42+
dotnet publish -c Release -o ./publish
43+
44+
- name: Deploy to Azure Web App
45+
if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev'
46+
uses: azure/webapps-deploy@v2
47+
with:
48+
app-name: integrifyfullstackproject
49+
package: ./server/PMS_Project/PMS_Project.Presenter.API/publish
50+
publish-profile: ${{ secrets.AZURE_WEBAPP_PUBLISH_PROFILE }}
51+
52+
frontend:
53+
runs-on: ubuntu-latest
54+
defaults:
55+
run:
56+
working-directory: ./client
57+
58+
strategy:
59+
matrix:
60+
node-version: [20.x]
61+
62+
steps:
63+
- name: Checkout code
64+
uses: actions/checkout@v4
65+
with:
66+
fetch-depth: 0
67+
68+
- name: Set up Node.js ${{ matrix.node-version }}
69+
uses: actions/setup-node@v4
70+
with:
71+
node-version: ${{ matrix.node-version }}
72+
cache: 'yarn'
73+
cache-dependency-path: './client/yarn.lock'
74+
75+
- name: Install Dependencies
76+
run: yarn install
77+
78+
- name: Type Check
79+
run: yarn type-check
80+
81+
- name: Run Linter
82+
run: yarn lint:fix
83+
84+
- name: Build
85+
run: yarn build
86+
env:
87+
CI: false
88+
GENERATE_SOURCEMAP: false
89+
90+
# Uncomment and modify when ready to deploy frontend
91+
# - name: Deploy Frontend
92+
# if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev'
93+
# # Add your frontend deployment step here
94+
# run: echo "Frontend deployment placeholder"

.gitignore

Lines changed: 180 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,180 @@
1+
# Learn more https://docs.github.com/en/get-started/getting-started-with-git/ignoring-files
2+
3+
# dependencies
4+
node_modules/
5+
6+
# Expo
7+
.expo/
8+
dist/
9+
web-build/
10+
expo-env.d.ts
11+
12+
# Native
13+
*.orig.*
14+
*.jks
15+
*.p8
16+
*.p12
17+
*.key
18+
*.mobileprovision
19+
20+
# Metro
21+
.metro-health-check*
22+
23+
# debug
24+
npm-debug.*
25+
yarn-debug.*
26+
yarn-error.*
27+
28+
# macOS
29+
.DS_Store
30+
*.pem
31+
32+
# local env files
33+
.env
34+
*.local
35+
36+
# typescript
37+
*.tsbuildinfo
38+
/src/.env
39+
40+
# Logs
41+
logs
42+
*.log
43+
npm-debug.log*
44+
yarn-debug.log*
45+
yarn-error.log*
46+
pnpm-debug.log*
47+
lerna-debug.log*
48+
49+
dist
50+
dist-ssr
51+
52+
# Editor directories and files
53+
# .vscode/*
54+
!.vscode/extensions.json
55+
.idea
56+
*.suo
57+
*.ntvs*
58+
*.njsproj
59+
# *.sln
60+
*.sw?
61+
launch.json
62+
tasks.json
63+
64+
.env*
65+
66+
# ASP .NET Core gitignore template
67+
# Build Folders (you can keep bin if you'd like, to store dlls and pdbs)
68+
[Bb]in/
69+
[Oo]bj/
70+
[Pp]ublish/
71+
72+
# Generated files
73+
project.lock.json
74+
.vs/
75+
76+
# mstest test results
77+
TestResults
78+
79+
80+
## Ignore Visual Studio temporary files, build results, and
81+
## files generated by popular Visual Studio add-ons.
82+
83+
# User-specific files
84+
*.suo
85+
*.user
86+
*.sln.docstates
87+
88+
# Build results
89+
[Dd]ebug/
90+
[Rr]elease/
91+
x64/
92+
*_i.c
93+
*_p.c
94+
*.ilk
95+
*.meta
96+
*.obj
97+
*.pch
98+
*.pdb
99+
*.pgc
100+
*.pgd
101+
*.rsp
102+
*.sbr
103+
*.tlb
104+
*.tli
105+
*.tlh
106+
*.tmp
107+
*.log
108+
*.vspscc
109+
*.vssscc
110+
.builds
111+
112+
# Visual C++ cache files
113+
ipch/
114+
*.aps
115+
*.ncb
116+
*.opensdf
117+
*.sdf
118+
119+
# Visual Studio profiler
120+
*.psess
121+
*.vsp
122+
*.vspx
123+
124+
# Guidance Automation Toolkit
125+
*.gpState
126+
127+
# ReSharper is a .NET coding add-in
128+
_ReSharper*
129+
130+
# NCrunch
131+
*.ncrunch*
132+
.*crunch*.local.xml
133+
134+
# Installshield output folder
135+
[Ee]xpress
136+
137+
# DocProject is a documentation generator add-in
138+
DocProject/buildhelp/
139+
DocProject/Help/*.HxT
140+
DocProject/Help/*.HxC
141+
DocProject/Help/*.hhc
142+
DocProject/Help/*.hhk
143+
DocProject/Help/*.hhp
144+
DocProject/Help/Html2
145+
DocProject/Help/html
146+
147+
# Click-Once directory
148+
publish
149+
150+
# Publish Web Output
151+
*.Publish.xml
152+
153+
# NuGet Packages Directory
154+
packages
155+
156+
# Windows Azure Build Output
157+
csx
158+
*.build.csdef
159+
160+
# Windows Store app package directory
161+
AppPackages/
162+
163+
# Others
164+
[Bb]in
165+
[Oo]bj
166+
sql
167+
[Tt]est[Rr]esult*
168+
*.Cache
169+
ClientBin
170+
[Ss]tyle[Cc]op.*
171+
~$*
172+
*.dbmdl
173+
Generated_Code #added for RIA/Silverlight projects
174+
175+
# Backup & report files from converting an old project file to a newer
176+
# Visual Studio version. Backup files are not needed, because we have git ;-)
177+
_UpgradeReport_Files/
178+
Backup*/
179+
UpgradeLog*.XML
180+
src/.vs/config/applicationhost.config

0 commit comments

Comments
 (0)