Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
7aa5be1
GitHub Classroom Feedback
github-classroom[bot] Sep 7, 2024
5354dea
Setting up GitHub Classroom Feedback
github-classroom[bot] Sep 7, 2024
3b17770
Added personal information to team.md
Sep 7, 2024
87dacc8
Added personal information to team.md
Sep 7, 2024
5be8f41
Added personal information to team.md
Sep 7, 2024
c622e43
added info to team.md
hemant1026 Sep 7, 2024
8578d97
Create blank.yml
jaindra-bu Sep 9, 2024
eaa5ff9
Added description to team.md
Sep 15, 2024
d371704
added introduction statement
tushar-kendre Sep 16, 2024
4b2c627
added info to team.md
Sep 18, 2024
6669a06
Made my changes to the file
Sep 18, 2024
6092b33
Merge branch 'lab1'
Sep 18, 2024
95c1a7b
Iteration 0 Documents (#3)
hemant1026 Sep 26, 2024
99d7c37
Initial setup (#5)
tushar-kendre Oct 8, 2024
2d7a90f
React jest and redux setup (#6)
faizanurfi Oct 14, 2024
2863f55
added core functionality tables
tushar-kendre Oct 16, 2024
213da93
modified default values
tushar-kendre Oct 16, 2024
97e2e28
added job listings apis
tushar-kendre Oct 16, 2024
2a27207
Merge pull request #14 from BUMETCS673/db-tables
tushar-kendre Oct 16, 2024
0fcee3a
added sso integration into frontend
tushar-kendre Oct 16, 2024
1793494
Merge pull request #15 from BUMETCS673/apis
tushar-kendre Oct 16, 2024
b7a1012
Merge pull request #16 from BUMETCS673/sso-setup
tushar-kendre Oct 17, 2024
143e037
Update README.md
hemant1026 Oct 17, 2024
ffe6f9a
Merge pull request #17 from BUMETCS673/hemant1026-patch-2
hemant1026 Oct 17, 2024
7b5e11a
added changelog
AmruthReddyyy Oct 18, 2024
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
Empty file added .github/.keep
Empty file.
36 changes: 36 additions & 0 deletions .github/workflows/blank.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# This is a basic workflow to help you get started with Actions

name: CI

# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the "main" branch
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: ubuntu-latest

# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4

# Runs a single command using the runners shell
- name: Run a one-line script
run: echo Hello, world!

# Runs a set of commands using the runners shell
- name: Run a multi-line script
run: |
echo Add other actions to build,
echo test, and deploy your project.
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,12 @@
# GroupProjectTemplate
Please make sure to modify this readme file as well as the "about" property of the project!

HUSKY SETUP

Run the two following commands in your project root

```
git config core.hooksPath code/.husky
chmod ug+x code/.husky/*
```
Jira Link: https://bu-se-team-4.atlassian.net/jira/software/projects/SCRUM/boards/1/backlog
4 changes: 4 additions & 0 deletions code/.env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
KEYCLOAK_ADMIN=
KEYCLOAK_ADMIN_PASSWORD=

POSTGRES_PASSWORD=
10 changes: 10 additions & 0 deletions code/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
node_modules
.DS_Store
dist
.env*
!.env.example
yarn-error.log

*/temp.xlsx
lerna-debug.log
*/temp.json
12 changes: 12 additions & 0 deletions code/.husky/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/sh
echo "Running precommit hook..."

cd code

echo "Lint staged starting.."
yarn lint-staged
if [ $? -ne 0 ]; then
echo "Lint staged failed. Commit aborted."
exit 1
fi
echo "Lint staged successful"
7 changes: 7 additions & 0 deletions code/.prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"printWidth": 85,
"arrowParens": "always",
"semi": true,
"tabWidth": 2,
"singleQuote": true
}
21 changes: 21 additions & 0 deletions code/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
version: "3.1"

services:
db:
image: postgres
env_file:
- .env
ports:
- 5432:5432

redis:
image: redis
ports:
- 6379:6379
keycloak:
image: quay.io/keycloak/keycloak
ports:
- 8080:8080
env_file:
- .env
command: start-dev
67 changes: 67 additions & 0 deletions code/eslint.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
import globals from 'globals';
import tsParser from '@typescript-eslint/parser';
import tseslint from '@typescript-eslint/eslint-plugin';
import prettier from 'eslint-plugin-prettier';
import reactHooks from 'eslint-plugin-react-hooks';
import reactRefresh from 'eslint-plugin-react-refresh';
// import nodePlugin from 'eslint-plugin-node';

export default [
{
ignores: ['dist'],
},
{
files: ['packages/api/**/*.{js,jsx,json,css,md,ts,tsx}'],
languageOptions: {
ecmaVersion: 2020,
globals: globals.node,
parser: tsParser
},
plugins: {
'@typescript-eslint': tseslint,
prettier,
// node: nodePlugin
// node plugin commented out because the latest version isn't compatible with eslint v9
},
rules: {
...tseslint.configs.recommended.rules, // TypeScript recommended rules
// ...nodePlugin.configs.recommended.rules,
// Node plugin recommended rules commented out because the latest version isn't compatible with eslint v9
'prettier/prettier': 'error',
'@typescript-eslint/no-unused-vars': 'warn',
'no-console': 'off',
'func-names': 'off',
'no-process-exit': 'off',
'object-shorthand': 'off',
'class-methods-use-this': 'off'
}
},
{
files: ['packages/react-app/**/*.{js,jsx,json,css,md,ts,tsx}'],
languageOptions: {
ecmaVersion: 2020,
parser: tsParser,
},
plugins: {
'@typescript-eslint': tseslint,
prettier,
'react-hooks': reactHooks,
'react-refresh': reactRefresh
},
settings: {
react: {
version: 'detect',
},
},
rules: {
...tseslint.configs.recommended.rules, // TypeScript recommended rules
...reactHooks.configs.recommended.rules,
'react-refresh/only-export-components': [
'warn',
{ allowConstantExport: true },
],
'prettier/prettier': 'error',
'@typescript-eslint/no-unused-vars': 'warn'
}
}
];
8 changes: 8 additions & 0 deletions code/lerna.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"packages": [
"packages/*"
],
"version": "0.0.1",
"useWorkspaces": true,
"npmClient": "yarn"
}
46 changes: 46 additions & 0 deletions code/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
{
"name": "se-t4",
"version": "0.0.1",
"private": true,
"type": "module",
"scripts": {
"dev": "lerna run --parallel dev",
"build": "lerna run build",
"format": "lerna run format",
"lint": "lerna run lint",
"serve": "lerna run --parallel serve",
"prisma": "yarn workspace @se-t4/database prisma",
"prepare": "husky"
},
"workspaces": {
"packages": [
"packages/*"
]
},
"devDependencies": {
"@eslint/js": "^9.11.0",
"@typescript-eslint/eslint-plugin": "^8.6.0",
"@typescript-eslint/parser": "^8.6.0",
"eslint": "^9.11.0",
"eslint-config-node": "^4.1.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-prettier": "^5.2.1",
"eslint-plugin-react-hooks": "^4.6.2",
"eslint-plugin-react-refresh": "^0.4.12",
"husky": "^9.1.6",
"lerna": "^5.1.8",
"lint-staged": "^15.2.10",
"prettier": "^3.3.3",
"typescript-eslint": "^8.6.0"
},
"dependencies": {
"yarn": "^1.22.19"
},
"lint-staged": {
"packages/**/*.{js,jsx,json,css,md,ts,tsx}": [
"prettier --write",
"eslint"
]
}
}
6 changes: 6 additions & 0 deletions code/packages/api/.env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
REDIS_HOST=
REDIS_PORT=
REDIS_IP_FAMILY=

KEYCLOAK_AUTH_URL=
KEYCLOAK_AUTH_REALM=
68 changes: 68 additions & 0 deletions code/packages/api/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# Logs
logs
*.log
npm-debug.log*

# Runtime data
pids
*.pid
*.seed

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage

# nyc test coverage
.nyc_output

# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# node-waf configuration
.lock-wscript

# Compiled binary addons (http://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules
jspm_packages

# Optional npm cache directory
.npm

# Optional REPL history
.node_repl_history

# 0x
profile-*

# mac files
.DS_Store

# vim swap files
*.swp

# webstorm
.idea

# vscode
.vscode
*code-workspace

# clinic
profile*
*clinic*
*flamegraph*

# generated code
examples/typescript-server.js
test/types/index.js

# compiled app
dist

.env*
!.env.example
4 changes: 4 additions & 0 deletions code/packages/api/.taprc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
test-env: [
TS_NODE_FILES=true,
TS_NODE_PROJECT=./test/tsconfig.json
]
24 changes: 24 additions & 0 deletions code/packages/api/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Getting Started with [Fastify-CLI](https://www.npmjs.com/package/fastify-cli)

This project was bootstrapped with Fastify-CLI.

## Available Scripts

In the project directory, you can run:

### `npm run dev`

To start the app in dev mode.\
Open [http://localhost:3000](http://localhost:3000) to view it in the browser.

### `npm start`

For production mode

### `npm run test`

Run the test cases.

## Learn More

To learn Fastify, check out the [Fastify documentation](https://www.fastify.io/docs/latest/).
51 changes: 51 additions & 0 deletions code/packages/api/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
{
"name": "@se-t4/api",
"version": "0.0.1",
"description": "API Server",
"main": "./dist/app.js",
"directories": {
"test": "test"
},
"scripts": {
"test": "npm run build:ts && tsc -p test/tsconfig.json && tap --ts test/**/*.test.ts",
"start": "npm run build:ts && fastify start -a 0.0.0.0 -l info dist/app.js",
"build:ts": "tsc",
"dev": "tsc && concurrently -k -p \"[{name}]\" -n \"TypeScript,App\" -c \"yellow.bold,cyan.bold\" \"tsc -w\" \"fastify start --ignore-watch=.ts$ -w -l info -P dist/app.js\"",
"format": "prettier --write \"**/*.+(js|jsx|json|css|md|ts|tsx)\"",
"lint": "eslint \"**/*.+(js|jsx|json|css|md|ts|tsx)\""
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"@fastify/autoload": "^5.0.0",
"@fastify/cors": "^8.1.0",
"@fastify/redis": "5.0.0",
"@fastify/sensible": "^5.0.0",
"@fastify/static": "^6.5.0",
"@fastify/swagger": "^7.4.1",
"@se-t4/database": "0.0.1",
"axios": "^0.27.2",
"fastify": "^4.0.0",
"fastify-cli": "^4.0.1",
"fastify-multer": "^2.0.3",
"fastify-plugin": "^4.0.0",
"lerna": "^5.3.0",
"moment": "^2.30.1",
"slugify": "^1.6.5",
"typedi": "^0.10.0",
"yup": "^0.32.11"
},
"devDependencies": {
"@types/jsonwebtoken": "^8.5.9",
"@types/node": "^17.0.8",
"@types/tap": "^15.0.5",
"concurrently": "^7.0.0",
"fastify-tsconfig": "^1.0.1",
"jsonwebtoken": "^8.5.1",
"nodemon": "^2.0.15",
"tap": "^16.1.0",
"ts-node": "^10.4.0",
"typescript": "^4.5.4"
}
}
2 changes: 2 additions & 0 deletions code/packages/api/public/uploads/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
*
!.gitignore
Loading