Voilà une bonne chose de faite!
This commit is contained in:
parent
d9e4d4add3
commit
80d471f839
6
Exam/.env.local
Normal file
6
Exam/.env.local
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
CONVEX_DEPLOY_KEY=project:emeline-nerot-hotmail-com:my-project-chef-6e35b|eyJ2MiI6IjYzZmJhZGQzN2EyMjRiN2E4YjkwOWQ0ZGU0M2Q5YjY5In0=
|
||||||
|
|
||||||
|
# Deployment used by `npx convex dev`
|
||||||
|
CONVEX_DEPLOYMENT=dev:flexible-squid-354
|
||||||
|
|
||||||
|
VITE_CONVEX_URL=https://flexible-squid-354.convex.cloud
|
3
Exam/.env.localZone.Identifier
Normal file
3
Exam/.env.localZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
27
Exam/.gitignore
vendored
Normal file
27
Exam/.gitignore
vendored
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
# Logs
|
||||||
|
logs
|
||||||
|
*.log
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
pnpm-debug.log*
|
||||||
|
lerna-debug.log*
|
||||||
|
|
||||||
|
node_modules
|
||||||
|
dist
|
||||||
|
dist-ssr
|
||||||
|
*.local
|
||||||
|
|
||||||
|
# Editor directories and files
|
||||||
|
.vscode/*
|
||||||
|
!.vscode/extensions.json
|
||||||
|
.idea
|
||||||
|
.DS_Store
|
||||||
|
*.suo
|
||||||
|
*.ntvs*
|
||||||
|
*.njsproj
|
||||||
|
*.sln
|
||||||
|
*.sw?
|
||||||
|
|
||||||
|
# Ignored for the template, you probably want to remove it:
|
||||||
|
package-lock.json
|
3
Exam/.gitignoreZone.Identifier
Normal file
3
Exam/.gitignoreZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
14
Exam/Dockerfile
Normal file
14
Exam/Dockerfile
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
FROM node:20-slim
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
COPY package*.json ./
|
||||||
|
RUN npm install
|
||||||
|
|
||||||
|
COPY . .
|
||||||
|
|
||||||
|
RUN npm run build
|
||||||
|
|
||||||
|
EXPOSE 3000
|
||||||
|
|
||||||
|
CMD ["npm", "run", "start"]
|
3
Exam/DockerfileZone.Identifier
Normal file
3
Exam/DockerfileZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
28
Exam/README.md
Normal file
28
Exam/README.md
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
# Todo App Implementation
|
||||||
|
|
||||||
|
This is a project built with [Chef](https://chef.convex.dev) using [Convex](https://convex.dev) as its backend.
|
||||||
|
|
||||||
|
This project is connected to the Convex deployment named [`flexible-squid-354`](https://dashboard.convex.dev/d/flexible-squid-354).
|
||||||
|
|
||||||
|
## Project structure
|
||||||
|
|
||||||
|
The frontend code is in the `app` directory and is built with [Vite](https://vitejs.dev/).
|
||||||
|
|
||||||
|
The backend code is in the `convex` directory.
|
||||||
|
|
||||||
|
`npm run dev` will start the frontend and backend servers.
|
||||||
|
|
||||||
|
## App authentication
|
||||||
|
|
||||||
|
Chef apps use [Convex Auth](https://auth.convex.dev/) with Anonymous auth for easy sign in. You may wish to change this before deploying your app.
|
||||||
|
|
||||||
|
## Developing and deploying your app
|
||||||
|
|
||||||
|
Check out the [Convex docs](https://docs.convex.dev/) for more information on how to develop with Convex.
|
||||||
|
* If you're new to Convex, the [Overview](https://docs.convex.dev/understanding/) is a good place to start
|
||||||
|
* Check out the [Hosting and Deployment](https://docs.convex.dev/production/) docs for how to deploy your app
|
||||||
|
* Read the [Best Practices](https://docs.convex.dev/understanding/best-practices/) guide for tips on how to improve you app further
|
||||||
|
|
||||||
|
## HTTP API
|
||||||
|
|
||||||
|
User-defined http routes are defined in the `convex/router.ts` file. We split these routes into a separate file from `convex/http.ts` to allow us to prevent the LLM from modifying the authentication routes.
|
3
Exam/README.mdZone.Identifier
Normal file
3
Exam/README.mdZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
27
Exam/_.final-cloud.com_private_key.key
Normal file
27
Exam/_.final-cloud.com_private_key.key
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
MIIEowIBAAKCAQEArx/hWPDk9togdn0PJkD9/AXqIldaqtYKccUr8ZhDYviGUXuU
|
||||||
|
T41k5hff/ayciutsM8Xm+rja+1MHpnX/xuNEHI/DjPwidhgdPpicKIcqSe01Phla
|
||||||
|
31czAv07XuYZ9ZIiZkisgW+/d+oIZ0QZiuxUQtJ8VU45ObaKL3ePkOgRB82hYSzl
|
||||||
|
ZAhO1Vh3N32P3+e/l4xQxFQn5IowKEUTxNEXjIiEli0I0d/CnQ3vUJZl23Lj2/ls
|
||||||
|
ufV+bo5wZxxglvYhWqKy+kYKw1oAResZ/FyW2QfJd9+iZw7Jg44Ku6Gbnb3fom8C
|
||||||
|
yAZZHEUOL8DO+N+b6Yre7JBWOnxf+5KrwO05qwIDAQABAoIBAAe5wnwP0IIFWGuc
|
||||||
|
aRfZGSX48ChzWG1zQ4MGXZcVuQSmOG1izsWoVAcEjvNGyKHQ8J/jafpYlQHZBVw2
|
||||||
|
Fhe6PJh9TSAB8Cvr32pnWsg87O7Voe+AjdjkJLzL2sZ9JIWysdrM953phfWueOVu
|
||||||
|
rykeSOSpGtFmlzFbw1fZu0HQww49f4nF/MSL5X99VDW2GLe/vlB4mJ+8fNjD+qwt
|
||||||
|
pjLPSSOL/vqwQLRoAAdOzxN3MFfJbsPUQER0zDLQOsc/rzbuztZt4mcReghRxpVy
|
||||||
|
dEiZEppYSYipRRxeXff+wq0ftYtEN/xAdn0aU2/lpQoY4E8jvNRPmke7oKiyA22+
|
||||||
|
jQNCcFUCgYEA3Ts68u/NXUYDgOqyVZpSSFCRXh+HVJlex6NbHlCzX3rKgCNtrid9
|
||||||
|
wahQhRgnPfeJYNKvj2Tc0/4NJvoeph6r4rZX1a6iIBrCXlh3gLLbhjatf+nrIcaT
|
||||||
|
hLMP7QQMAJSnxAulBlMh/gW4O/M7wfi7ZRVtDVbdFVIon9LAj61dmycCgYEAyqWj
|
||||||
|
64ebcIeR6HfyjFKtYeOnof5ao3Tj0x02mxx43dG9yy/rV1xMCRMvOJTDhvX7Bkgr
|
||||||
|
UpPxdLZFQnKDhiTRrkMQg1ZdcLC52WV4wh3kuFE5o7aV2kghN7UF8c8LWznOs/a7
|
||||||
|
k4Jw7uFiz95YH0in+QT8Ij/kmQarEzjOFm0hD90CgYEA0EMVAGPNATSK0c6fKUTI
|
||||||
|
lvj5kBDANlzXQ7q9aXFxGr4eabhwZRUaJreLbW/KaWRg+Dv+N1AtLogn23x0Y8/V
|
||||||
|
4evkDe2DBBQMzAIeJZK6Y8OPWy5bQoWMk8x5fpdjsRxAPqbzqFuUUW0S/aTBqZ28
|
||||||
|
07Dy4y7Vm1+njKU6z0bWKtsCgYAUXupHdu5NNZOZRtV+/aCoQnZLdoIuBEYSptEi
|
||||||
|
bo5H3hmyHzMNKR4Lm34XtfyhyIBfdUnFl1GiZeA4ecJ27aSWW++BBGGIPnuwOt8U
|
||||||
|
xGSFksS0jFosAywzqWLbl/CQTxNUS+03OtmXadjBBJzfKDKaecHOv5V/PIhd+kvd
|
||||||
|
PUMhkQKBgFRPM7/N/syu1U/wqEj+TDF5TQU78QXj4DAtnUp+S8dBSUcUKl+OH73n
|
||||||
|
P18rBef1O36qbnzFNkZS+PUQO4/A8Wn2YGtvrMpQnOFsrBSV/LR8ctIrVDE8Yj0z
|
||||||
|
nDD5WZeKD6NPz9nObYudCIPJjdAZFQcxeZ2pLxm9tCvpGqgiVizg
|
||||||
|
-----END RSA PRIVATE KEY-----
|
3
Exam/_.final-cloud.com_private_key.keyZone.Identifier
Normal file
3
Exam/_.final-cloud.com_private_key.keyZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
HostUrl=https://ssl.ionos.fr/
|
21
Exam/components.json
Normal file
21
Exam/components.json
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://ui.shadcn.com/schema.json",
|
||||||
|
"style": "new-york",
|
||||||
|
"rsc": false,
|
||||||
|
"tsx": true,
|
||||||
|
"tailwind": {
|
||||||
|
"config": "tailwind.config.js",
|
||||||
|
"css": "src/index.css",
|
||||||
|
"baseColor": "slate",
|
||||||
|
"cssVariables": true,
|
||||||
|
"prefix": ""
|
||||||
|
},
|
||||||
|
"aliases": {
|
||||||
|
"components": "@/components",
|
||||||
|
"utils": "@/lib/utils",
|
||||||
|
"ui": "@/components/ui",
|
||||||
|
"lib": "@/lib",
|
||||||
|
"hooks": "@/hooks"
|
||||||
|
},
|
||||||
|
"iconLibrary": "lucide"
|
||||||
|
}
|
3
Exam/components.jsonZone.Identifier
Normal file
3
Exam/components.jsonZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
22
Exam/docker-compose.yml
Normal file
22
Exam/docker-compose.yml
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
version: '3'
|
||||||
|
services:
|
||||||
|
web:
|
||||||
|
build: .
|
||||||
|
ports:
|
||||||
|
- "3001:3000"
|
||||||
|
environment:
|
||||||
|
- NODE_ENV=production
|
||||||
|
- CONVEX_URL=${CONVEX_URL}
|
||||||
|
restart: always
|
||||||
|
|
||||||
|
nginx:
|
||||||
|
image: nginx:alpine
|
||||||
|
ports:
|
||||||
|
- "80:80"
|
||||||
|
- "443:443"
|
||||||
|
volumes:
|
||||||
|
- ./nginx.conf:/etc/nginx/nginx.conf:ro
|
||||||
|
- ./certs:/etc/nginx/certs:ro
|
||||||
|
depends_on:
|
||||||
|
- web
|
||||||
|
restart: always
|
3
Exam/docker-compose.ymlZone.Identifier
Normal file
3
Exam/docker-compose.ymlZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
77
Exam/eslint.config.js
Normal file
77
Exam/eslint.config.js
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
import js from "@eslint/js";
|
||||||
|
import globals from "globals";
|
||||||
|
import reactHooks from "eslint-plugin-react-hooks";
|
||||||
|
import reactRefresh from "eslint-plugin-react-refresh";
|
||||||
|
import tseslint from "typescript-eslint";
|
||||||
|
|
||||||
|
export default tseslint.config(
|
||||||
|
{
|
||||||
|
ignores: [
|
||||||
|
"dist",
|
||||||
|
"eslint.config.js",
|
||||||
|
"convex/_generated",
|
||||||
|
"postcss.config.js",
|
||||||
|
"tailwind.config.js",
|
||||||
|
"vite.config.ts",
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
extends: [
|
||||||
|
js.configs.recommended,
|
||||||
|
...tseslint.configs.recommendedTypeChecked,
|
||||||
|
],
|
||||||
|
files: ["**/*.{ts,tsx}"],
|
||||||
|
languageOptions: {
|
||||||
|
ecmaVersion: 2020,
|
||||||
|
globals: {
|
||||||
|
...globals.browser,
|
||||||
|
...globals.node,
|
||||||
|
},
|
||||||
|
parserOptions: {
|
||||||
|
project: [
|
||||||
|
"./tsconfig.node.json",
|
||||||
|
"./tsconfig.app.json",
|
||||||
|
"./convex/tsconfig.json",
|
||||||
|
],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
plugins: {
|
||||||
|
"react-hooks": reactHooks,
|
||||||
|
"react-refresh": reactRefresh,
|
||||||
|
},
|
||||||
|
rules: {
|
||||||
|
...reactHooks.configs.recommended.rules,
|
||||||
|
"react-refresh/only-export-components": [
|
||||||
|
"warn",
|
||||||
|
{ allowConstantExport: true },
|
||||||
|
],
|
||||||
|
// All of these overrides ease getting into
|
||||||
|
// TypeScript, and can be removed for stricter
|
||||||
|
// linting down the line.
|
||||||
|
|
||||||
|
// Only warn on unused variables, and ignore variables starting with `_`
|
||||||
|
"@typescript-eslint/no-unused-vars": [
|
||||||
|
"warn",
|
||||||
|
{ varsIgnorePattern: "^_", argsIgnorePattern: "^_" },
|
||||||
|
],
|
||||||
|
|
||||||
|
// Allow escaping the compiler
|
||||||
|
"@typescript-eslint/ban-ts-comment": "error",
|
||||||
|
|
||||||
|
// Allow explicit `any`s
|
||||||
|
"@typescript-eslint/no-explicit-any": "off",
|
||||||
|
|
||||||
|
// START: Allow implicit `any`s
|
||||||
|
"@typescript-eslint/no-unsafe-argument": "off",
|
||||||
|
"@typescript-eslint/no-unsafe-assignment": "off",
|
||||||
|
"@typescript-eslint/no-unsafe-call": "off",
|
||||||
|
"@typescript-eslint/no-unsafe-member-access": "off",
|
||||||
|
"@typescript-eslint/no-unsafe-return": "off",
|
||||||
|
// END: Allow implicit `any`s
|
||||||
|
|
||||||
|
// Allow async functions without await
|
||||||
|
// for consistency (esp. Convex `handler`s)
|
||||||
|
"@typescript-eslint/require-await": "off",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
);
|
3
Exam/eslint.config.jsZone.Identifier
Normal file
3
Exam/eslint.config.jsZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
36
Exam/final-cloud.com_ssl_certificate.cer
Normal file
36
Exam/final-cloud.com_ssl_certificate.cer
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIGOzCCBSOgAwIBAgIQW43ARXreJkiMq4QpFzy6ojANBgkqhkiG9w0BAQsFADCB
|
||||||
|
jzELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G
|
||||||
|
A1UEBxMHU2FsZm9yZDEYMBYGA1UEChMPU2VjdGlnbyBMaW1pdGVkMTcwNQYDVQQD
|
||||||
|
Ey5TZWN0aWdvIFJTQSBEb21haW4gVmFsaWRhdGlvbiBTZWN1cmUgU2VydmVyIENB
|
||||||
|
MB4XDTI1MDUwNDAwMDAwMFoXDTI2MDUwNDIzNTk1OVowHDEaMBgGA1UEAwwRKi5m
|
||||||
|
aW5hbC1jbG91ZC5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCv
|
||||||
|
H+FY8OT22iB2fQ8mQP38BeoiV1qq1gpxxSvxmENi+IZRe5RPjWTmF9/9rJyK62wz
|
||||||
|
xeb6uNr7Uwemdf/G40Qcj8OM/CJ2GB0+mJwohypJ7TU+GVrfVzMC/Tte5hn1kiJm
|
||||||
|
SKyBb7936ghnRBmK7FRC0nxVTjk5toovd4+Q6BEHzaFhLOVkCE7VWHc3fY/f57+X
|
||||||
|
jFDEVCfkijAoRRPE0ReMiISWLQjR38KdDe9QlmXbcuPb+Wy59X5ujnBnHGCW9iFa
|
||||||
|
orL6RgrDWgBF6xn8XJbZB8l336JnDsmDjgq7oZudvd+ibwLIBlkcRQ4vwM7435vp
|
||||||
|
it7skFY6fF/7kqvA7TmrAgMBAAGjggMDMIIC/zAfBgNVHSMEGDAWgBSNjF7EVK2K
|
||||||
|
4Xfpm/mbBeG4AY1h4TAdBgNVHQ4EFgQU6Pp0I7KbIUuaL0edDRBOuEGkCzYwDgYD
|
||||||
|
VR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUHAwEG
|
||||||
|
CCsGAQUFBwMCMEkGA1UdIARCMEAwNAYLKwYBBAGyMQECAgcwJTAjBggrBgEFBQcC
|
||||||
|
ARYXaHR0cHM6Ly9zZWN0aWdvLmNvbS9DUFMwCAYGZ4EMAQIBMIGEBggrBgEFBQcB
|
||||||
|
AQR4MHYwTwYIKwYBBQUHMAKGQ2h0dHA6Ly9jcnQuc2VjdGlnby5jb20vU2VjdGln
|
||||||
|
b1JTQURvbWFpblZhbGlkYXRpb25TZWN1cmVTZXJ2ZXJDQS5jcnQwIwYIKwYBBQUH
|
||||||
|
MAGGF2h0dHA6Ly9vY3NwLnNlY3RpZ28uY29tMIIBfQYKKwYBBAHWeQIEAgSCAW0E
|
||||||
|
ggFpAWcAdgCWl2S/VViXrfdDh2g3CEJ36fA61fak8zZuRqQ/D8qpxgAAAZadmGNf
|
||||||
|
AAAEAwBHMEUCICFAxFpOhmY8RDOb3GNZWRBzUr2OVqYTSAMP6T1YWHlqAiEAqUMd
|
||||||
|
peA2VpedDfCs762ZmadTTfVQFI9iHqP7g5cn4f4AdQAZhtTHKKpv/roDb3gqTQGR
|
||||||
|
qs4tcjEPrs5dcEEtJUzH1AAAAZadmGM/AAAEAwBGMEQCIG5pFmmWhAw6VYWCUmLP
|
||||||
|
21M2QNJpO91nsGRwH1/vVcihAiB3BV7Zc3zqXjfrJFOZyTjLZxRuvZJiON8lExK4
|
||||||
|
Vb5mYAB2AA5XlLzzrqk+MxssmQez95Dfm8I9cTIl3SGpJaxhxU4hAAABlp2YY8UA
|
||||||
|
AAQDAEcwRQIgPY1/nVKryIkR3sCP6vsm8vdbuTysB7wm4qg/bz4N3MkCIQD/aeZJ
|
||||||
|
xKEXtKHCrZ5W0kbqfmDZ/glNB0E18zcdYfymczAtBgNVHREEJjAkghEqLmZpbmFs
|
||||||
|
LWNsb3VkLmNvbYIPZmluYWwtY2xvdWQuY29tMA0GCSqGSIb3DQEBCwUAA4IBAQDI
|
||||||
|
oAmld6gsrL+fhcXvz8R5N56EYNRXocTWi1vcVwLauytcLgwWdMbeIk+RvQQBajCD
|
||||||
|
gDVGm3K/ZXoeUZeU9210guk2BjmhcsiXIB6QeSb2fc3rVYgJptkSXGa0qilVGyJJ
|
||||||
|
pDvATIbU3slKtYVS29zsHngFfY/rT5o78A8RHSBOI+P5eyWRPEoQanRkV4xdmXCe
|
||||||
|
9jHllbdDE5K4ts9vOB3XMH+4k6OSCzpNDImIicYjOPsSImDSvEZC3JejZyyLBfJs
|
||||||
|
0NiYaB6VLsk9J3wi6H/qzjEZFM6SBw6L47OrTpCzDCeSOQF40wAinB1b7imY+/+f
|
||||||
|
Cf+5/6oQnnm+m2A6qztM
|
||||||
|
-----END CERTIFICATE-----
|
3
Exam/final-cloud.com_ssl_certificate.cerZone.Identifier
Normal file
3
Exam/final-cloud.com_ssl_certificate.cerZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
HostUrl=https://ssl.ionos.fr/
|
16
Exam/index.html
Normal file
16
Exam/index.html
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
<link rel="stylesheet" href="/src/index.css" />
|
||||||
|
|
||||||
|
<title>Chef</title>
|
||||||
|
|
||||||
|
<meta property="og:image" content="/og-preview.jpg" />
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="root"></div>
|
||||||
|
<script type="module" src="/src/main.tsx"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
3
Exam/index.htmlZone.Identifier
Normal file
3
Exam/index.htmlZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
39
Exam/nginx.conf
Normal file
39
Exam/nginx.conf
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
events {
|
||||||
|
worker_connections 1024;
|
||||||
|
}
|
||||||
|
|
||||||
|
http {
|
||||||
|
upstream todo_app {
|
||||||
|
server web:3000;
|
||||||
|
}
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
server_name final-cloud.com;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://todo_app;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 443 ssl;
|
||||||
|
server_name final-cloud.com;
|
||||||
|
|
||||||
|
ssl_certificate /etc/nginx/certs/fullchain.pem;
|
||||||
|
ssl_certificate_key /etc/nginx/certs/privkey.pem;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://todo_app;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
3
Exam/nginx.confZone.Identifier
Normal file
3
Exam/nginx.confZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
7074
Exam/package-lock.json
generated
Normal file
7074
Exam/package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
3
Exam/package-lock.jsonZone.Identifier
Normal file
3
Exam/package-lock.jsonZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
46
Exam/package.json
Normal file
46
Exam/package.json
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
{
|
||||||
|
"name": "flex-template",
|
||||||
|
"private": true,
|
||||||
|
"version": "0.0.0",
|
||||||
|
"type": "module",
|
||||||
|
"scripts": {
|
||||||
|
"dev": "convex dev --once && node setup.mjs && npm-run-all --parallel dev:frontend dev:backend",
|
||||||
|
"dev:frontend": "vite --open",
|
||||||
|
"dev:backend": "convex dev",
|
||||||
|
"build": "vite build",
|
||||||
|
"start": "vite preview --port 3000 --host",
|
||||||
|
"lint": "tsc -p convex -noEmit --pretty false && tsc -p . -noEmit --pretty false && convex dev --once && vite build"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@convex-dev/auth": "^0.0.80",
|
||||||
|
"clsx": "^2.1.1",
|
||||||
|
"convex": "1.21.1-alpha.1",
|
||||||
|
"react": "^19.0.0",
|
||||||
|
"react-dom": "^19.0.0",
|
||||||
|
"sonner": "^2.0.3",
|
||||||
|
"tailwind-merge": "^3.1.0"
|
||||||
|
},
|
||||||
|
"overrides": {
|
||||||
|
"convex": "1.21.1-alpha.1"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@eslint/js": "^9.21.0",
|
||||||
|
"@types/node": "^22.13.10",
|
||||||
|
"@types/react": "^19.0.10",
|
||||||
|
"@types/react-dom": "^19.0.4",
|
||||||
|
"@vitejs/plugin-react": "^4.3.4",
|
||||||
|
"autoprefixer": "~10",
|
||||||
|
"dotenv": "^16.4.7",
|
||||||
|
"eslint": "^9.21.0",
|
||||||
|
"eslint-plugin-react-hooks": "^5.1.0",
|
||||||
|
"eslint-plugin-react-refresh": "^0.4.19",
|
||||||
|
"globals": "^15.15.0",
|
||||||
|
"npm-run-all": "^4.1.5",
|
||||||
|
"postcss": "~8",
|
||||||
|
"prettier": "^3.5.3",
|
||||||
|
"tailwindcss": "~3",
|
||||||
|
"typescript": "~5.7.2",
|
||||||
|
"typescript-eslint": "^8.24.1",
|
||||||
|
"vite": "^6.2.0"
|
||||||
|
}
|
||||||
|
}
|
3
Exam/package.jsonZone.Identifier
Normal file
3
Exam/package.jsonZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_cack2o.zip
|
6
Exam/postcss.config.cjs
Normal file
6
Exam/postcss.config.cjs
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
module.exports = {
|
||||||
|
plugins: {
|
||||||
|
tailwindcss: {},
|
||||||
|
autoprefixer: {},
|
||||||
|
},
|
||||||
|
};
|
3
Exam/postcss.config.cjsZone.Identifier
Normal file
3
Exam/postcss.config.cjsZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
38
Exam/setup.mjs
Normal file
38
Exam/setup.mjs
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
/**
|
||||||
|
* This script runs `npx @convex-dev/auth` to help with setting up
|
||||||
|
* environment variables for Convex Auth.
|
||||||
|
*
|
||||||
|
* You can safely delete it and remove it from package.json scripts.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import fs from "fs";
|
||||||
|
import { config as loadEnvFile } from "dotenv";
|
||||||
|
import { spawnSync } from "child_process";
|
||||||
|
|
||||||
|
if (!fs.existsSync(".env.local")) {
|
||||||
|
// Something is off, skip the script.
|
||||||
|
process.exit(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
const config = {};
|
||||||
|
loadEnvFile({ path: ".env.local", processEnv: config });
|
||||||
|
|
||||||
|
const runOnceWorkflow = process.argv.includes("--once");
|
||||||
|
|
||||||
|
if (runOnceWorkflow && config.SETUP_SCRIPT_RAN !== undefined) {
|
||||||
|
// The script has already ran once, skip.
|
||||||
|
process.exit(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
const result = spawnSync("npx", ["@convex-dev/auth", "--skip-git-check"], {
|
||||||
|
stdio: "inherit",
|
||||||
|
});
|
||||||
|
|
||||||
|
if (runOnceWorkflow) {
|
||||||
|
fs.writeFileSync(".env.local", `
|
||||||
|
SETUP_SCRIPT_RAN=1
|
||||||
|
`, { flag: "a" });
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
process.exit(result.status);
|
3
Exam/setup.mjsZone.Identifier
Normal file
3
Exam/setup.mjsZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
9
Exam/tailwind.config.js
Normal file
9
Exam/tailwind.config.js
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
const {} = require("tailwindcss/defaultTheme");
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
mode: "jit",
|
||||||
|
purge: ["./index.html", "./src/**/*.{vue,js,ts,jsx,tsx}"],
|
||||||
|
variants: {
|
||||||
|
extend: {},
|
||||||
|
},
|
||||||
|
};
|
3
Exam/tailwind.config.jsZone.Identifier
Normal file
3
Exam/tailwind.config.jsZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
1
Exam/todo_app_implementation_c9u5b4.zipSmartScreen
Normal file
1
Exam/todo_app_implementation_c9u5b4.zipSmartScreen
Normal file
@ -0,0 +1 @@
|
|||||||
|
Anaheim
|
3
Exam/todo_app_implementation_c9u5b4.zipZone.Identifier
Normal file
3
Exam/todo_app_implementation_c9u5b4.zipZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
HostUrl=https://chef.convex.dev/
|
29
Exam/tsconfig.app.json
Normal file
29
Exam/tsconfig.app.json
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
{
|
||||||
|
"compilerOptions": {
|
||||||
|
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
|
||||||
|
"target": "ES2020",
|
||||||
|
"useDefineForClassFields": true,
|
||||||
|
"lib": ["ES2020", "DOM", "DOM.Iterable"],
|
||||||
|
"module": "ESNext",
|
||||||
|
"skipLibCheck": true,
|
||||||
|
|
||||||
|
/* Bundler mode */
|
||||||
|
"moduleResolution": "bundler",
|
||||||
|
"allowImportingTsExtensions": true,
|
||||||
|
"isolatedModules": true,
|
||||||
|
"moduleDetection": "force",
|
||||||
|
"noEmit": true,
|
||||||
|
"jsx": "react-jsx",
|
||||||
|
|
||||||
|
/* Linting */
|
||||||
|
"strict": true,
|
||||||
|
"noFallthroughCasesInSwitch": true,
|
||||||
|
"noUncheckedSideEffectImports": true,
|
||||||
|
|
||||||
|
/* Import paths */
|
||||||
|
"paths": {
|
||||||
|
"@/*": ["./src/*"]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"include": ["src"]
|
||||||
|
}
|
3
Exam/tsconfig.app.jsonZone.Identifier
Normal file
3
Exam/tsconfig.app.jsonZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
13
Exam/tsconfig.json
Normal file
13
Exam/tsconfig.json
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
{
|
||||||
|
"files": [],
|
||||||
|
"references": [
|
||||||
|
{ "path": "./tsconfig.app.json" },
|
||||||
|
{ "path": "./tsconfig.node.json" }
|
||||||
|
],
|
||||||
|
"compilerOptions": {
|
||||||
|
"baseUrl": ".",
|
||||||
|
"paths": {
|
||||||
|
"@/*": ["./src/*"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
3
Exam/tsconfig.jsonZone.Identifier
Normal file
3
Exam/tsconfig.jsonZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
22
Exam/tsconfig.node.json
Normal file
22
Exam/tsconfig.node.json
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"compilerOptions": {
|
||||||
|
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo",
|
||||||
|
"target": "ES2022",
|
||||||
|
"lib": ["ES2023"],
|
||||||
|
"module": "ESNext",
|
||||||
|
"skipLibCheck": true,
|
||||||
|
|
||||||
|
/* Bundler mode */
|
||||||
|
"moduleResolution": "bundler",
|
||||||
|
"allowImportingTsExtensions": true,
|
||||||
|
"isolatedModules": true,
|
||||||
|
"moduleDetection": "force",
|
||||||
|
"noEmit": true,
|
||||||
|
|
||||||
|
/* Linting */
|
||||||
|
"strict": true,
|
||||||
|
"noFallthroughCasesInSwitch": true,
|
||||||
|
"noUncheckedSideEffectImports": true
|
||||||
|
},
|
||||||
|
"include": ["vite.config.ts"]
|
||||||
|
}
|
3
Exam/tsconfig.node.jsonZone.Identifier
Normal file
3
Exam/tsconfig.node.jsonZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
13
Exam/vite.config.ts
Normal file
13
Exam/vite.config.ts
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
import { defineConfig } from "vite";
|
||||||
|
import react from "@vitejs/plugin-react";
|
||||||
|
import path from "path";
|
||||||
|
|
||||||
|
// https://vite.dev/config/
|
||||||
|
export default defineConfig({
|
||||||
|
plugins: [react()],
|
||||||
|
resolve: {
|
||||||
|
alias: {
|
||||||
|
"@": path.resolve(__dirname, "./src"),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
3
Exam/vite.config.tsZone.Identifier
Normal file
3
Exam/vite.config.tsZone.Identifier
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[ZoneTransfer]
|
||||||
|
ZoneId=3
|
||||||
|
ReferrerUrl=C:\Users\Utilisateur\OneDrive\3.Scolaire\UTBM\1. TC\TCSEE\Cours\Cloud Technologies\Exam test\todo_app_implementation_c9u5b4.zip
|
Loading…
Reference in New Issue
Block a user