Skip to content
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
80 changes: 80 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
name: Build and Deploy

on:
push:
branches: '*'

jobs:
frontend-build:
name: Frontend Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '18'

- name: Install Dependencies
working-directory: frontend
run: npm ci

- name: Build Frontend
working-directory: frontend
run: npm run build

- name: ✅ Frontend Build Successful
if: success()
run: echo "Frontend build successful ✅"

- name: Start Frontend Server
working-directory: frontend
run: |
echo "Starting Frontend Server..."
npm run dev &
sleep 5
echo "Frontend server started"

- name: ✅ Frontend Server Started
if: success()
run: echo "Frontend server started successfully ✅"

backend-build:
name: Backend Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '18'

- name: Install Dependencies
working-directory: backend
run: npm ci

- name: ✅ Dependencies Installed
if: success()
run: echo "Backend dependencies installed successfully ✅"

- name: Build Backend
working-directory: backend
run: npm run build

- name: ✅ Backend Build Successful
if: success()
run: echo "Backend build successful ✅"

- name: Start Backend Server
working-directory: backend
run: |
echo "Starting Backend Server..."
npm run dev &
sleep 5
echo "Backend server started"

- name: ✅ Backend Server Started
if: success()
run: echo "Backend server started successfully ✅"
84 changes: 84 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
name: Run Tests

on:
push:
branches: ['*']
pull_request:
branches: ['*']

jobs:
frontend-tests:
name: Frontend Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '18'

- name: Install Dependencies
working-directory: frontend
run: npm ci

- name: Lint Check
working-directory: frontend
run: npm run lint

- name: ✅ Lint Check Passed
if: success()
run: echo "Frontend linting successful ✅"

- name: Run Frontend Tests
working-directory: frontend
run: npm test

- name: ✅ Frontend Tests Passed
if: success()
run: echo "Frontend tests passed ✅"

backend-tests:
name: Backend Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '18'

- name: Install Dependencies
working-directory: backend
run: npm ci

- name: ✅ Dependencies Installed
if: success()
run: echo "Backend dependencies installed successfully ✅"

- name: Lint Check
working-directory: backend
run: |
if npm run lint > /dev/null 2>&1; then
npm run lint
else
echo "No lint script found, skipping lint check"
fi

- name: ✅ Lint Check Passed
if: success()
run: echo "Backend linting successful ✅"

- name: Run Backend Tests
working-directory: backend
run: |
if npm run test > /dev/null 2>&1; then
npm test
else
echo "No test script found, skipping tests"
fi

- name: ✅ Backend Tests Passed
if: success()
run: echo "Backend tests passed ✅"
25 changes: 25 additions & 0 deletions backend/.prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Dependencies
node_modules

# Build output
dist
build

# Logs
*.log
npm-debug.log*

# Coverage
coverage

# Package files
package-lock.json
yarn.lock

# IDE
.vscode
.idea

# OS
.DS_Store
Thumbs.db
Loading
Loading