Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
133 commits
Select commit Hold shift + click to select a range
677ee49
testing ios build
Ma-Golden Jan 31, 2025
37ca1d4
Initial test files
kahern7 Jan 31, 2025
55647da
DataBase connection Unit test
powderly12 Feb 5, 2025
1a3caaa
Sustainability tracking component, first iteration
feguare Feb 5, 2025
a8454f3
Basic Database Querying functional
kahern7 Feb 6, 2025
a30bca4
Merge branch 'net-data-trans' of https://github.com/timf34/AdvancedSo…
kahern7 Feb 6, 2025
52516bc
Gitignored myvenv
kahern7 Feb 6, 2025
85eb334
Database class
powderly12 Feb 6, 2025
a9a71c0
Update gitignore to exclude expo folders
Ma-Golden Feb 7, 2025
5afa2a2
Added extra databse functionality
kahern7 Feb 7, 2025
62bacac
Added extra comments of functions
kahern7 Feb 7, 2025
e75e507
Iteration 1 of sustainability dashboard component (TODO: fix timefram…
feguare Feb 7, 2025
1e4910e
database class completed
powderly12 Feb 7, 2025
0b7b635
Merge branch 'develop' into net-data-trans
Ma-Golden Feb 10, 2025
7bad13c
Merge pull request #12 from AdvancedSoftwareEngineeringGroup3/net-dat…
Ma-Golden Feb 10, 2025
edfb5c1
Merge pull request #13 from AdvancedSoftwareEngineeringGroup3/develop
powderly12 Feb 10, 2025
999b439
setup initial users table
CormacSharkey Feb 10, 2025
4a6fc79
Merge branch 'net-data-trans' of https://github.com/AdvancedSoftwareE…
CormacSharkey Feb 10, 2025
071ea09
started adding networking class
CormacSharkey Feb 10, 2025
91d4a64
reorganising files for CI/CD
Ma-Golden Feb 10, 2025
477e4d8
Co-authored-by: feguare <feguare@users.noreply.github.com>
JasonBoutlas Feb 10, 2025
7b1f4d3
Quick fix for application by removing "provider
JasonBoutlas Feb 10, 2025
bb1cc78
Merge pull request #14 from AdvancedSoftwareEngineeringGroup3/dev-patch
Ma-Golden Feb 10, 2025
4fd3efc
Merge remote-tracking branch 'origin/develop' into wf-maps for direct…
JasonBoutlas Feb 12, 2025
c62ef2c
Making directory changes in the back-end (server)
JasonBoutlas Feb 12, 2025
aecfdd9
Fixed docker with the directory changes
JasonBoutlas Feb 12, 2025
6a27511
Added test for Database_class and started TTD for netoworking
kahern7 Feb 12, 2025
a6d3b59
Removing Pycache before gitignore update
Ma-Golden Feb 13, 2025
a468d71
Added gitignore
Ma-Golden Feb 13, 2025
948b881
Merge pull request #15 from AdvancedSoftwareEngineeringGroup3/wf-maps
JasonBoutlas Feb 13, 2025
2a376df
Structure changes for CI/CD
Ma-Golden Feb 13, 2025
d4bd8bd
initial caching setup
feguare Feb 13, 2025
dfe91bc
Merge pull request #17 from AdvancedSoftwareEngineeringGroup3/ci-cd-s…
Ma-Golden Feb 13, 2025
ee197e0
auto linted server code
Ma-Golden Feb 13, 2025
1813948
Merge pull request #18 from AdvancedSoftwareEngineeringGroup3/linting
Ma-Golden Feb 13, 2025
98ebccb
Working on developing networking file
kahern7 Feb 13, 2025
5d51f81
adding append_entry method to database class
CormacSharkey Feb 14, 2025
f79ceb3
adding new test for append_entry and formatting files
CormacSharkey Feb 14, 2025
7e01964
configured blakck auto formatting, reformatted in line with pep8
Ma-Golden Feb 14, 2025
8c6eb8c
Merge pull request #20 from AdvancedSoftwareEngineeringGroup3/linting
Ma-Golden Feb 14, 2025
3cc6896
Create backend-ci.yml
Ma-Golden Feb 14, 2025
8922b7e
Update backend-ci.yml
CormacSharkey Feb 14, 2025
6734701
fina check
Ma-Golden Feb 14, 2025
4d77426
Merge branch 'Ma-Golden-server-ci' of https://github.com/AdvancedSoft…
Ma-Golden Feb 14, 2025
625eff8
Update backend-ci.yml
Ma-Golden Feb 14, 2025
a9141c4
Update backend-ci.yml
Ma-Golden Feb 14, 2025
46f44ac
editing append_entry and test
CormacSharkey Feb 14, 2025
b1e4251
Update backend-ci.yml
Ma-Golden Feb 14, 2025
ff41dec
Merge pull request #22 from AdvancedSoftwareEngineeringGroup3/Ma-Gold…
Ma-Golden Feb 14, 2025
409691b
adding rollback to some database methods
CormacSharkey Feb 14, 2025
beab982
caching functions & tests
feguare Feb 14, 2025
ad6a741
Added rollback to more functions
kahern7 Feb 17, 2025
6f3808b
Created find route screen and returned routes for start and destination
GunjanShahapurkar Feb 17, 2025
d0ed387
adding comments on networking
CormacSharkey Feb 17, 2025
b398e6c
removing networking for pull request
CormacSharkey Feb 17, 2025
d73b99c
fixing file structure
CormacSharkey Feb 17, 2025
aaa5bb3
merging database into develop
CormacSharkey Feb 17, 2025
bd2e727
reformatting
CormacSharkey Feb 17, 2025
d5a485b
Update backend-ci.yml
CormacSharkey Feb 17, 2025
cfbe0e8
reformatting
CormacSharkey Feb 17, 2025
91f8d6e
Merge branch 'db/setup' of https://github.com/AdvancedSoftwareEnginee…
CormacSharkey Feb 17, 2025
f30381c
Merge pull request #23 from AdvancedSoftwareEngineeringGroup3/db/setup
powderly12 Feb 17, 2025
c55c482
initial update_pending_friends
feguare Feb 17, 2025
a9de54e
Test for transport modes
GunjanShahapurkar Feb 19, 2025
d378298
Merge remote-tracking branch 'origin/develop' into sust/route-em
powderly12 Feb 19, 2025
5defe91
sustainability tests and main file
powderly12 Feb 19, 2025
508a992
Updated npm packages
kahern7 Feb 19, 2025
f17acc7
Pep8 formatting
powderly12 Feb 19, 2025
c638f8f
pep8 changes
powderly12 Feb 19, 2025
198b346
formatting changes
powderly12 Feb 19, 2025
660f4bb
Merge pull request #25 from AdvancedSoftwareEngineeringGroup3/sust/ro…
JasonBoutlas Feb 19, 2025
2a25dfa
Merge branch 'develop' into wf-maps
kahern7 Feb 19, 2025
044344f
Fixed relative file location bug in main.py
kahern7 Feb 19, 2025
5ae7957
only allow one request from user a to b at a time
feguare Feb 20, 2025
51cebb2
friend request handling functions
Ma-Golden Feb 21, 2025
ca6838c
fixing database queries
CormacSharkey Feb 21, 2025
ea12573
Merge branch 'net-data-trans' of https://github.com/AdvancedSoftwareE…
CormacSharkey Feb 21, 2025
6d6f3a8
Formatting
Ma-Golden Feb 21, 2025
76de2e9
Merge branch 'net-data-trans' of https://github.com/AdvancedSoftwareE…
Ma-Golden Feb 21, 2025
803cfd6
Added polyline generation and display route screen
kahern7 Feb 21, 2025
5745425
Functions & tests for friend requests added
Ma-Golden Feb 21, 2025
41e7c34
Add db .env vars
Ma-Golden Feb 24, 2025
24f3984
Merge pull request #26 from AdvancedSoftwareEngineeringGroup3/net-dat…
Ma-Golden Feb 24, 2025
dd8ded8
Merge remote-tracking branch 'origin/develop' into wf-maps
kahern7 Feb 24, 2025
2b3e533
Merge remote-tracking branch 'origin/wf-maps' into develop
kahern7 Feb 24, 2025
0c364ca
Corrected formatting
kahern7 Feb 24, 2025
a6dcb66
FIxed more formatting issues
kahern7 Feb 24, 2025
d3e50a6
Formatted to align with black
kahern7 Feb 24, 2025
02637b6
Formatting
kahern7 Feb 24, 2025
1dcccb4
formatting
kahern7 Feb 24, 2025
445c15f
formatting
kahern7 Feb 24, 2025
5f732e9
REmoved test api key func
kahern7 Feb 24, 2025
5bd6322
Merge pull request #27 from AdvancedSoftwareEngineeringGroup3/wf-maps
kahern7 Feb 24, 2025
d1e1f2f
Started work on destination marker
kahern7 Feb 26, 2025
1d1e3e0
Merge branch 'wf-maps' of https://github.com/timf34/AdvancedSoftwareE…
kahern7 Feb 27, 2025
9514f33
fixed string concatenating for SQL queries, removed ignore db tests
Ma-Golden Feb 27, 2025
c57b743
added async module for tests, added client github workflow
Ma-Golden Feb 27, 2025
35eeb7d
package update
Ma-Golden Feb 27, 2025
8ebf7d0
Merge pull request #28 from AdvancedSoftwareEngineeringGroup3/fronten…
Ma-Golden Feb 27, 2025
5b1dd79
Fixed initial region bug
kahern7 Feb 27, 2025
5a520fe
Added destination marker and select route functionality
kahern7 Feb 28, 2025
8c3f8f3
rename display route to select route
feguare Mar 6, 2025
8f6f48a
link comment undone - stable after rename
feguare Mar 6, 2025
8cd2333
Created DisplayRoute Screen
kahern7 Mar 10, 2025
75cfbfe
realtime location updates
feguare Mar 12, 2025
6f2cf5c
Add Haversine formula for distance calculation and corresponding tests
kahern7 Mar 13, 2025
1cb0097
Friends UI (#30)
Gunjan-Shahapurkar Mar 13, 2025
d837bcd
V1.0 wayfinding achieved
kahern7 Mar 14, 2025
71502db
Added dev switch
kahern7 Mar 14, 2025
847516e
Added comments for step instruction comp
kahern7 Mar 14, 2025
34cbe2d
Cleaning unnecessary comments
kahern7 Mar 14, 2025
05377ef
Merge branch 'develop' into wf-maps
kahern7 Mar 14, 2025
9db321d
Merge branch 'develop' into wf-maps
kahern7 Mar 14, 2025
8edf5b3
Merge pull request #32 from AdvancedSoftwareEngineeringGroup3/wf-maps
kahern7 Mar 14, 2025
cd1cabb
Pers preferences (#33)
Gunjan-Shahapurkar Mar 14, 2025
ed015d6
Fixed iOS dropdown bug
kahern7 Mar 14, 2025
b613c23
Merge pull request #34 from AdvancedSoftwareEngineeringGroup3/hotfix/…
CormacSharkey Mar 19, 2025
4a58dca
adding login success check
CormacSharkey Mar 19, 2025
a53f148
Ci cd improvements (#35)
Ma-Golden Mar 20, 2025
c474f11
Created separate function for post connection in accont utils
kahern7 Mar 20, 2025
18e9921
Merge branch 'develop' into loginTests
kahern7 Mar 20, 2025
5807706
Debugging signup.py
kahern7 Mar 20, 2025
e72c1bc
Cleaned up comments in signup.py
kahern7 Mar 20, 2025
656d702
Created new function within account utils for post Connection
kahern7 Mar 21, 2025
842c364
Tests for account Untils Completed
powderly12 Mar 21, 2025
c798446
server testd
powderly12 Mar 21, 2025
96d2d8f
Tests Added
powderly12 Mar 24, 2025
bf42b62
Added encyption to signup and login functions
kahern7 Mar 24, 2025
c636de3
Linting fixes
kahern7 Mar 24, 2025
090c355
Added tests for slogin and signup. Linting
kahern7 Mar 24, 2025
7efe44b
Merge pull request #37 from AdvancedSoftwareEngineeringGroup3/loginTests
kahern7 Mar 24, 2025
f755232
Feature/wf maps/direction descriptions (#38)
JasonBoutlas Apr 3, 2025
58dd01b
Quality of life preferences changes
JasonBoutlas Apr 3, 2025
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
15 changes: 0 additions & 15 deletions .expo/README.md

This file was deleted.

8 changes: 0 additions & 8 deletions .expo/settings.json

This file was deleted.

82 changes: 82 additions & 0 deletions .github/workflows/backend-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
# This workflow will install Python dependencies, run tests and lint with a single version of Python
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python

name: Backend CI

on:
push:
branches: [ "develop", "main" ]
pull_request:
branches: [ "develop" ]

permissions:
contents: read

jobs:
lint:
name: Lint Python Code (PEP8)
runs-on: ubuntu-latest

defaults:
run:
working-directory: ./server

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10"

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install flake8 black

- name: Run Black (Auto Formatting)
run: |
black src/ tests/

- name: Run flake8 (Linting)
run: |
flake8 src/ tests/

test:
name: Run Backend Tests
runs-on: ubuntu-latest
needs: lint # Ensures linting passes before running tests

steps:
- name: Checkout repository
uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10"

- name: Install dependencies
run: |
cd server
python -m pip install --upgrade pip
pip install -r requirements.txt

- name: Create .env file in CI
run: |
cd server
touch .env
echo "SUPABASE_URL=${{ secrets.SUPABASE_URL }}" >> .env
echo "SUPABASE_URL=${{ secrets.SUPABASE_KEY }}" >> .env
echo "GOOGLE_MAPS_API_KEY=${{ secrets.GOOGLE_MAPS_API_KEY }}" >> .env
echo "DB_HOST=${{ secrets.DB_HOST }}" >> .env
echo "DB_NAME=${{ secrets.DB_NAME }}" >> .env
echo "DB_USER=${{ secrets.DB_PASSWORD }}" >> .env
echo "DB_PASSWORD=${{ secrets.DB_PASSWORD }}" >> .env
echo "DB_PORT=${{ secrets.DB_PORT }}" >> .env

- name: Run Tests
run: |
cd server
pytest tests/
62 changes: 62 additions & 0 deletions .github/workflows/frontend-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: Frontend CI

on:
push:
branches: [ "develop", "main" ]
pull_request:
branches: [ "develop", "main" ]

permissions:
contents: read

jobs:
lint:
name: Run Linting (ESLint & Prettier)
runs-on: ubuntu-latest

defaults:
run:
working-directory: ./client # Removes need for cd client when running linting

steps:
- name: Checkout repository
uses: actions/checkout@v3

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

- name: Install dependencies
run: |
npm install

# For code quality, unused vars etc.
- name: Run ESLint
run: |
npm run lint

test:
name: Run Frontend Tests (Jest)
runs-on: ubuntu-latest

defaults:
run:
working-directory: ./client # Removes need for cd client when running tests

steps:
- name: Checkout repository
uses: actions/checkout@v3

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

- name: Install dependencies # Install dependencies
run: |
npm install

- name: Run tests # Run Jest tests
run: |
npm test
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,9 @@
./assets/stops.txt
./assets/stop_times.txt

.vscode/
*.pyc
*.env

tests/myvenv/
**/.expo/
10 changes: 10 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"python.testing.pytestArgs": [
"server"
],
"python.testing.unittestEnabled": false,
"python.testing.pytestEnabled": true,
"[javascript]": {
"editor.tabSize": 2
}
}
29 changes: 29 additions & 0 deletions client/.eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
module.exports = {
root: true,
extends: ['airbnb', 'airbnb/hooks', 'prettier'],
plugins: ['react', 'react-hooks', 'import', 'jsx-a11y', 'prettier'],
parserOptions: {
ecmaVersion: 2021,
sourceType: 'module',
ecmaFeatures: {
jsx: true,
},
},
env: {
browser: true,
es6: true,
node: true,
jest: true,
},
rules: {
'prettier/prettier': ['warn', { endOfLine: 'auto' }],
'react/react-in-jsx-scope': 'off', // Not needed for React Native
'import/no-extraneous-dependencies': 'off',
'react/jsx-filename-extension': [
1,
{ extensions: ['.js', '.jsx', '.tsx'] },
],
'react/prop-types': 'off',
'no-console': ['warn', { allow: ['warn', 'error'] }],
},
};
9 changes: 9 additions & 0 deletions client/.prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
node_modules
__mocks__
expo
coverage
*.env
package-lock.json
package.json
*.md
*.bat
5 changes: 5 additions & 0 deletions client/.prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"singleQuote": true,
"trailingComma": "all",
"semi": true
}
39 changes: 32 additions & 7 deletions client/App.js
Original file line number Diff line number Diff line change
@@ -1,22 +1,47 @@
import React from 'react';
import { createNativeStackNavigator } from '@react-navigation/native-stack';
import { NavigationContainer } from '@react-navigation/native';
import LoginScreen from './LogIn';
import MapScreen from './Map';
import WeatherScreen from './Weather';
import LoginScreen from './src/LogIn';
import MapScreen from './src/Map';
import WeatherScreen from './src/Weather';
import FindRouteScreen from './src/FindRoute';
import SelectRouteScreen from './src/SelectRoute';
import Dashboard from './src/SustainabilityDashboard';
import PreferencesScreen from './src/Preferences';
import AccountScreen from './src/AccountScreen';
import SignUpScreen from './src/SignUp';
import DisplayRouteScreen from './src/DisplayRoute';
import FriendsScreen from './src/FriendsScreen';

const Stack = createNativeStackNavigator();

export default function App() {
return (
<NavigationContainer>
<Stack.Navigator initialRouteName="Map">
<Stack.Screen name="Map" component={MapScreen} />
<Stack.Navigator initialRouteName="AccountScreen">
<Stack.Screen
options={{ headerBackVisible: false }}
name="Map"
component={MapScreen}
/>
<Stack.Screen
options={{ headerBackVisible: false }}
name="AccountScreen"
component={AccountScreen}
/>
<Stack.Screen name="LoginScreen" component={LoginScreen} />
<Stack.Screen name="SignUpScreen" component={SignUpScreen} />
<Stack.Screen name="WeatherScreen" component={WeatherScreen} />
<Stack.Screen name="FindRouteScreen" component={FindRouteScreen} />
<Stack.Screen name="SelectRouteScreen" component={SelectRouteScreen} />
<Stack.Screen
name="DisplayRouteScreen"
component={DisplayRouteScreen}
/>
<Stack.Screen name="Dashboard" component={Dashboard} />
<Stack.Screen name="PreferencesScreen" component={PreferencesScreen} />
<Stack.Screen name="FriendsScreen" component={FriendsScreen} />
</Stack.Navigator>
</NavigationContainer>
);
}


Loading
Loading