Commit Graph

96 Commits

Author SHA1 Message Date
Shaun Hamilton
22a56eddfb refactor(api): remove exam-env feature flag (#63909) 2025-11-24 20:08:06 +05:30
Tom
d7505e9833 chore(client): remove daily challenge env variables (#62105) 2025-09-30 08:47:38 +02:00
Oliver Eyton-Williams
b246d99b30 chore: remove NODE_ENV from sample.env (#61902) 2025-08-21 23:24:14 +05:30
Tom
ad8b31df2c feat(client): enable daily challenges + add e2e tests (#61549)
Co-authored-by: Huyen Nguyen <25715018+huyenltnguyen@users.noreply.github.com>
2025-08-04 18:37:06 +02:00
Tom
bde1e6f81b feat(client): add daily challenges (#60867)
Co-authored-by: Huyen Nguyen <25715018+huyenltnguyen@users.noreply.github.com>
2025-07-28 11:08:10 -07:00
Shaun Hamilton
d88691bc8a breaking(api): remove screenshot api (#61300) 2025-07-22 08:28:13 -07:00
Mrugesh Mohapatra
44e734398f fix(env): remove unused keys (#60878) 2025-06-15 19:16:30 +05:30
Mrugesh Mohapatra
008e35d851 fix(api): update logging (#60187) 2025-05-06 20:46:36 +05:30
Oliver Eyton-Williams
310d0c691c chore: remove DEBUG from .env (#59922) 2025-04-23 20:53:43 +05:30
Niraj Nandish
dac7fa3a14 feat(api): exam screenshot service (#56940)
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
2025-02-18 09:24:54 +00:00
Shaun Hamilton
9adc0a621d feat(api): add growthbook (#57950) 2025-01-08 15:35:58 -08:00
Oliver Eyton-Williams
56e520b2e4 refactor(api): provide default env values (#57986) 2025-01-08 21:39:40 +05:30
Oliver Eyton-Williams
232f6d50aa refactor: remove SHOW_NEW_CURRICULUM (#57977) 2025-01-07 10:17:05 +00:00
Mrugesh Mohapatra
c2e1032e08 fix(api): logging configs 2025-01-02 19:20:43 +05:30
Shaun Hamilton
a477643d7d chore(api): add log level configuration 2025-01-02 18:21:55 +05:30
Shaun Hamilton
55deb556ce feat(api): add sentry event route 2025-01-02 18:21:54 +05:30
Mrugesh Mohapatra
4d4e617b7d fix(sentry): use environments 2025-01-02 18:21:54 +05:30
Oliver Eyton-Williams
f2ec6d6dd5 feat(api): env var to control exam environment (#56701) 2024-10-16 21:48:04 +02:00
Shaun Hamilton
7f1a6e553f chore(api): add request/response shadow dev tool (#56628) 2024-10-11 09:32:20 -07:00
Lars Kappert
d32e57813e chore: update Knip to v5 (#56244) 2024-09-26 13:12:00 +02:00
Tom
99023bfcdc chore(curriculum): remove BUILD_WITH_SUBMODULE env variable (#55654) 2024-07-26 17:12:11 +02:00
Oliver Eyton-Williams
7e3e6fac9d chore: stop showing new curriculum by default (#55660) 2024-07-25 07:45:02 -07:00
Tom
4a506f6e06 feat(curriculum): add i18n-curriculum submodule (#55341)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2024-07-09 19:51:38 +05:30
Ahmad Abdolsaheb
20b6b83e99 feat: remove paypal webhook listener (#54395) 2024-04-29 07:49:21 +02:00
Sem Bauke
dcccc6749d chore: remove CodeSee (Shutting down feb 22nd) (#53766) 2024-02-16 16:19:26 +00:00
Oliver Eyton-Williams
05d19b8b42 feat: create docker images for new api (#51538) 2023-09-13 02:15:25 +05:30
Oliver Eyton-Williams
f3da82518a feat(api): email service (#50637)
Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>
2023-08-04 18:57:59 -07:00
Oliver Eyton-Williams
06d4076a45 feat(api): dev login (#49880)
Co-authored-by: Mrugesh Mohapatra <hi@mrugesh.dev>
2023-03-29 18:08:38 +05:30
Niraj Nandish
1dcba784fd feat(api): API documentation with Swagger UI (#49791) 2023-03-24 10:00:51 +01:00
Oliver Eyton-Williams
a0f958189e chore: update api test suite and include it in run test (#49794) 2023-03-23 16:57:11 +00:00
Tom
7aeb4ab76b feat(api): setup jest in new api (#49709)
* feat(api): setup jest in new api

* feat: sample tests
2023-03-16 20:33:40 +05:30
Oliver Eyton-Williams
fa7955dc75 feat(api): add prisma as orm (#49413) 2023-03-14 17:29:55 +00:00
Mrugesh Mohapatra
7199f033fb feat(next-api): basic authentication setup (#49378)
* feat(next-api): add fastify-auth0-verify plugin

* feat(next-api): add fastify-jwt-authz plugin

* feat(next-api): accept privacy endpoint with scopes support

* fix(next-api): ignore eslint and ts errors

They will be fixed in a future PR when the package with errors has been updated

Co-authored-by: Niraj Nandish <nirajnandish@icloud.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2023-02-24 17:26:40 +05:30
Shaun Hamilton
88752ccd6c fix(env): resolve localhost to 127.0.0.1 (#49394) 2023-02-16 12:02:00 +01:00
Mrugesh Mohapatra
a7d8e49f0c chore: re-arrange the env entries (#48113) 2022-10-18 19:56:09 +05:30
Ahmad Abdolsaheb
0df7ee430d feat(client): add growthbook (#48003)
* feat: initial set up

* feat: useFeature setup

* feat: adjust attributes

* chore(client): remove ts-disables in growth-book-wrapper

* feat: pull growthbook uri from env

* feat: adjust the staff atribute

* feat: make linter happy

* feat: update recruitment message

* refactor: simplify types

* chore: delete unused config

* fix: update copy

* fix: add growthbookUri to expected env vars

Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2022-10-17 14:53:25 +02:00
Tristan Toye
dfe5a7fd05 Add Sentry to client for error handling (#43920)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2022-04-15 09:54:02 -05:00
Naomi Carrigan
8d13163e21 feat(tools): test file buttons (#44919)
* feat(tools): test file buttons

* fix: set SHOW_NEW_CURRICULUM to true

* fix: landing test
2022-02-10 09:39:12 -06:00
Nicholas Carrigan (he/him)
dd2ff1683c feat: add curriculum feature flag (#44441) 2021-12-09 12:31:03 -06:00
Ahmad Abdolsaheb
421dab38e8 feat(client): add Patreon button (#44113)
* feat(add): add patreon button

* feat: add noreferrer

* Apply suggestions from code review

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-11-04 09:06:24 -07:00
Mrugesh Mohapatra
e37b600fba chore(.env): remove stripe create plans key (#43978) 2021-10-25 14:14:01 +02:00
Ahmad Abdolsaheb
b623c340a9 feat(client): add google pay (#43117)
* feat: initial button setup client

* feat: rename walletsButton to .tsx

* chore: typescriptize wallet component

* chore: re-add keys to config, env, etc + check in gatsby-node

* feat: refactor donate form and wallet component

* feat(client): set labels correctly

* chore: add stripe package back to server

* chore: add stripe back to allowed paths

* chore: copy donate.js code from PR #41924

* feat: attempt to make back end work

* feat: make redux work

* feat: clean up

* feat: hokify

* feat: add error handling

* fix: back-end should be working

* fix: type errors

* fix: clean up back-end

* feat:addd styles

* feat: connect the client to the api

* feat: display wallets button everywhere

* test: add stripe key for cypress action

* test: fix for cypress tests

* test: cypress tests again

* test: maybe?

* test: more

* test: more

* test: more

* test

* askdfjasklfj

* fix: tests finally?

* revert: remove space from cypress yaml action

* remove logs

Co-authored-by: moT01 <20648924+moT01@users.noreply.github.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-08-08 23:22:25 +03:00
Oliver Eyton-Williams
65786b6929 fix: control CodeSee via .env variable (#42428) 2021-06-10 18:38:14 +05:30
Ahmad Abdolsaheb
27c8d564e4 fix(client): replace Stripe with PayPal (#41924)
* feat: remove stripe payment option from client

* feat: remove stripe completely

* fix: remove last Stripe remnants

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-05-03 11:45:23 +03:00
Oliver Eyton-Williams
5d46e2830a feat: add Docker build (#41187)
* feat(docker): build and use client and api images

* feat: always use .env

dotenv fails without throwing if the .env file is missing and never
overwrites variables if they already exist. As such, we can use it in
build pipelines.

* fix: remove quotes from env vars

dotenv normalises quoted and unquoted strings (X=x, X='x' and
X="x") all become the same .env object {X: 'x'}. However, Docker's
env_file does not (the three cases are distinct).  As a result, we
should use unquoted strings for consistency.

* fix: provide custom warning when .env is missing

* feat(docker): include client-config

* fix(docker): remove build packages from api image

* fix(docker): run script from correct dir

* fix(docker): correct permissions and dests

* fix(docker): consolidate run steps

This is standard practice, but did not have a noticable affect on the
image size

* fix(docker): clean the npm cache

Prior to this step the image was 1.11GB uncompressed and we got a modest
saving, 1.09GB after.

* refactor(docker): regexless COPY directives

* feat(docker): use alpine

This shrinks the image down to 259MB

* fix(docker): update build scripts

* fix: correct the server Dockerfile RUNs

* DEBUG: expose mysql port for seeding

* chore: update client Dockerfile's node versions

* fix: remove executable permissions from index.js

It's not a cli, so I don't think it needs to be executable.

* chore: update node and remove stale comments

* feat: use ENTRYPOINT + CMD to allow runtime config

* fix: add CURRICULUM_LOCALE arg

* feat: allow client port configuration

* feat: allow api port to be configured

* refactor: use unique variable names for ports

* fix: add default CLIENT_PORT

* refactor: clean up
2021-04-20 19:29:31 +05:30
Tom
c56a9c966f fix(client): address nav UX issues (#40823)
Co-authored-by: nhcarrigan <nhcarrigan@gmail.com>
2021-01-31 12:15:41 +05:30
Mrugesh Mohapatra
6a09b9bce2 fix(client): refactor dynamic URLs based on lang (#40824) 2021-01-31 12:15:41 +05:30
Nicholas Carrigan (he/him)
58c6c54c67 feat(client): redesigned navigation (#40709)
Co-authored-by: moT01 <20648924+moT01@users.noreply.github.com>
2021-01-31 12:15:40 +05:30
Tom
3978c6be28 feat: i18n user interface (#40306)
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
2021-01-31 12:15:32 +05:30
Ahmad Abdolsaheb
bfc4c33b0c fix: remove unused PAYPAL_SUPPORTERS var (#40361) 2020-12-01 14:51:24 +01:00