-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Set up MongoDB Atlas #15
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, nice work!
Would you be able to take a look at the tests as well? |
This pull request is being automatically deployed with Vercel (learn more). 🔍 Inspect: https://vercel.com/hack4impact/memberdb-tool/o1c9meh5w |
* Connected to mongo atlas and successfully retried Home resource * Ran yarn format * add MONGO_URL to CI test * fixed formatting and tests * modify gitignore to ignore all env files in api/config
* Initial commit * Create PR template * Add .md extension to PR template * DEPENDENCY: added react-router-dom * DEPENDECY: added prop-types * BUG: removed Typescript notation from Home.js * ADDITION: added Navbar and Member file structure * UPGRADE: adapted Home.js to functional component * FEAT: added routes between pages * DEPENDENCY: @hack4impact-uiuc/bridge * formatted code with Prettier * FORMAT: Removed unused imports * FORMAT: Ran prettier styling * Add community .github to this repo * Create member DB model * Run formatter * Change spread to Object.values * Connected to mongo atlas and successfully retried Home resource * Add vercel config * Remove config * Add vercel.json back in * Update secret names * Set up MongoDB Atlas (#15) * Connected to mongo atlas and successfully retried Home resource * Ran yarn format * add MONGO_URL to CI test * fixed formatting and tests * modify gitignore to ignore all env files in api/config * resolve merge conflict in app.js * re-add template config files * add config files to .gitignore * Frontend Auth (#13) * FEAT: basic structure of navbar * FEAT: added login feature to view any page * REMOVE: incorrent dependency location * FEAT: add login connected to UNTESTED endpoint * PAGE: added 404 Not Found Page * LINT: added prop-types and styling * REMOVE: deleted 404 page * DEPENDENCY: added ag-grid * STYLING: Updated Profile dropdown CSS * STYLING: changed Login Page styling * FEAT: added proper headers for ag-grid * LINT: fixes some lint issues * DOCUMENATION: added comments to components * LINT: fixed documentation styling * LINT: fixed prop-types * PR FEEDBACK: resolves @alicesf2 comments * PR FEEDBACK: resolves @mattwalo32 comments * Fix vercel deployments (#18) * Change variables to start with REACT_APP * Use VERCEL_URL variable * ignore all .env files * Change mongo var name * Fix variable name typo * Run formatter * Deleted failing test * Add flag to pass with no tests * Remove vercel dependency * Remove REACT_APP prefix * Remove .env files * Remove global dependency * Readd env files * gitignore env files * Add test back * Delete dev.env * Remove "pass with no tests" flag * Backend auth (#14) * Enable connection to Mongo * Install passport and express-session * Change most member attributes to not required * Add auth routes * Add passport setup with cookie sessions * Add options for express-session * Add options for express-session * Move passport-setup to root * Add middleware for auth * Change auth routes to use result instead of data * Add protected route as an example * Remove home test and replace with dummy test * Remove dummy test * Remove console.log * Remove extra || null * Add back home.test.js and new env vars to api.yaml * Add example dev.env * Add redirectURI endpoint to allow for changing Vercel subdomains * Add redirect URLs as parameters for /login * Format auth.js * Remove FRONTEND_URI from example env file * Enable failure flash * Add back .env files * Add vercel env vars * Remove OAUTH_CALLBACK_URI from production env * Frontend-Backend Auth connection (#22) * Redirct to backend login api * Use CORS in dev with proper auth settings * FEAT: removes auth state and connects sess. to api * LINT: fixed styling and prop-type errors * Ran prettier Co-authored-by: Jeffrey Tang <[email protected]> * Members endpoints with GET, POST, and PUT (#21) * Create basic endpoint skeleton * get endpoint 500 error * Fix routing * Get member endpoint to work * Return more fields from endpoint * Return object id from endpoint * Add filterSensitiveInfo util * Give all non-required Member fields a default of null * Move passport-setup to utils * Remove console.log * Add members endpoints * Fix filterSensitiveInfo util * Use passport-setup.js in utils * Use auth endpoint * Move /api/auth/user to /api/members/current * Add omit fields to GET /:memberId * Change current user endpoint in frontend * Add more auth utils * Use isDirector from module in members routes * Change level default in model back to TBD * Add level priority explanation * Add detailed permission checking in members endpoint * Fix difference function * Fix typos in user-utils * Add _id as neverEditable field * Fix allFields not being checked correctly * Filter viewable fields when returning from PUT Co-authored-by: mlw6 <[email protected]> Co-authored-by: ishaansharma <[email protected]> * Remove extraneous router (#25) * Member profile page (#23) * Create basic endpoint skeleton * get endpoint 500 error * Fix routing * Get member endpoint to work * Return more fields from endpoint * Return object id from endpoint * Add filterSensitiveInfo util * Give all non-required Member fields a default of null * Move passport-setup to utils * Remove console.log * Add members endpoints * Fix filterSensitiveInfo util * Use passport-setup.js in utils * Use auth endpoint * Move /api/auth/user to /api/members/current * Add omit fields to GET /:memberId * Change current user endpoint in frontend * Add more auth utils * Use isDirector from module in members routes * Change level default in model back to TBD * Add level priority explanation * Add detailed permission checking in members endpoint * Fix difference function * Fix typos in user-utils * Add _id as neverEditable field * Fix allFields not being checked correctly * Filter viewable fields when returning from PUT * Pull enum options from backend * Add status options to endpoint * Disable dropdowns * Add labels to fields * Create wrapper for getting member by ID * Add boolean selector * Add number fields * Add fields for basic string attributes * Retrieve schema type from DB * Move preprocessing to backend * Fix enum type detection * Remove duplicated code * Fix attribute change error * Run formatter * Remove warnings * Format client * Populate edit fields from DB * Add types to props * Run formatter * Remove alert * Run formatter * Get permissions from backend * Disable input boxes if missing permissions * Add enum dropdowns * Format client * Remove user ID override * Change to ES6 defaults * Remove unused package * Change var to let * Concisen member options endpoint * Delete env file * Unexport schema * Use concise property iteration * Make /options endpoint concise * Remove unneeded exports * Capitalize constant * Shorten attribute change callback * Run formatter * Turn off default-props in linter * Fix var name typo * Change member page routing * Run formatter * Use useParams hook * Change object syntax * Run formatter * Link "View Profile" to current logged-in user * Fix lint, ignore _id * Run format * Don't show mongo ID * Rename Member.js to Profile.js * Run formatter * Store fields in value instead of placeholder Co-authored-by: ishaansharma <[email protected]> Co-authored-by: Jeffrey Tang <[email protected]> * Add lint-staged pre-commit hook (#27) * Add lint-staged pre-commit hook * Format "unstaged" files * Sync prettier versions * Homepage Member Grid (#19) * added another row to member grid * added some filters to columns * added filters to applicable columns * added custom sorting for date-related fields * format * added filter to all fields * enabled floating filters in member grid, minor styling changes * yarn format * extract coldefs and mock member data to utils files, decrease line height in overflow text * yarn lint * yarn and yarn format * Consolidate .env files (#28) * Consolidate envs and clean up app.js * Fix yarn test not using .env * Add null to enum options so default works (#24) * Add null to enum options so default works * Use TBD as enum defaults rather than null * Transfer old data (#29) * Create basic endpoint skeleton * get endpoint 500 error * Fix routing * Get member endpoint to work * Return more fields from endpoint * Return object id from endpoint * Add filterSensitiveInfo util * Give all non-required Member fields a default of null * Move passport-setup to utils * Remove console.log * Add members endpoints * Fix filterSensitiveInfo util * Use passport-setup.js in utils * Use auth endpoint * Move /api/auth/user to /api/members/current * Add omit fields to GET /:memberId * Change current user endpoint in frontend * Add more auth utils * Use isDirector from module in members routes * Change level default in model back to TBD * Add level priority explanation * Add detailed permission checking in members endpoint * Fix difference function * Fix typos in user-utils * Add _id as neverEditable field * Fix allFields not being checked correctly * Filter viewable fields when returning from PUT * Pull enum options from backend * Add status options to endpoint * Disable dropdowns * Add labels to fields * Create wrapper for getting member by ID * Add boolean selector * Add number fields * Add fields for basic string attributes * Retrieve schema type from DB * Move preprocessing to backend * Fix enum type detection * Remove duplicated code * Fix attribute change error * Run formatter * Remove warnings * Format client * Populate edit fields from DB * Add types to props * Run formatter * Remove alert * Run formatter * Get permissions from backend * Disable input boxes if missing permissions * Add enum dropdowns * Format client * Remove user ID override * Change to ES6 defaults * Remove unused package * Change var to let * Concisen member options endpoint * Delete env file * Unexport schema * Use concise property iteration * Make /options endpoint concise * Remove unneeded exports * Capitalize constant * Shorten attribute change callback * Run formatter * Turn off default-props in linter * Fix var name typo * Change member page routing * Run formatter * Use useParams hook * Change object syntax * Run formatter * Start creating tool to transfer data * Consolidate envs and clean up app.js * Fix yarn test not using .env * Add lint-staged pre-commit hook (#27) * Add lint-staged pre-commit hook * Format "unstaged" files * Sync prettier versions * Format all files using new Prettier config * Finish writing tool * Format remaining fields * Check for member uniqueness * Fix enum formatting * Run formatter * Run formatter * Run format with new hook * Remove duplicate of Profile.js Co-authored-by: ishaansharma <[email protected]> Co-authored-by: Jeffrey Tang <[email protected]> Co-authored-by: Yousef Ahmed <[email protected]> * added comments to Table.js for backend connection * Fix/update README (#26) * Remove README from .github to fix overriding * Update README for this project * Fix image sizes * Fix image sizes * added Ainfo for Alice Fang * Add Matthew's Profile Picture * Update README.md * added Ishaan's info Co-authored-by: Alice Fang <[email protected]> Co-authored-by: Matthew Walowski <[email protected]> Co-authored-by: Amit Sawhney <[email protected]> Co-authored-by: ishaansharma <[email protected]> * Upgrade node-notifier to 8.0.1 (#36) * Attribute editing fix (#37) * Create basic endpoint skeleton * get endpoint 500 error * Fix routing * Get member endpoint to work * Return more fields from endpoint * Return object id from endpoint * Add filterSensitiveInfo util * Give all non-required Member fields a default of null * Move passport-setup to utils * Remove console.log * Add members endpoints * Fix filterSensitiveInfo util * Use passport-setup.js in utils * Use auth endpoint * Move /api/auth/user to /api/members/current * Add omit fields to GET /:memberId * Change current user endpoint in frontend * Add more auth utils * Use isDirector from module in members routes * Change level default in model back to TBD * Add level priority explanation * Add detailed permission checking in members endpoint * Fix difference function * Fix typos in user-utils * Add _id as neverEditable field * Fix allFields not being checked correctly * Filter viewable fields when returning from PUT * Pull enum options from backend * Add status options to endpoint * Disable dropdowns * Add labels to fields * Create wrapper for getting member by ID * Add boolean selector * Add number fields * Add fields for basic string attributes * Retrieve schema type from DB * Move preprocessing to backend * Fix enum type detection * Remove duplicated code * Fix attribute change error * Run formatter * Remove warnings * Format client * Populate edit fields from DB * Add types to props * Run formatter * Remove alert * Run formatter * Get permissions from backend * Disable input boxes if missing permissions * Add enum dropdowns * Format client * Remove user ID override * Change to ES6 defaults * Remove unused package * Change var to let * Concisen member options endpoint * Delete env file * Unexport schema * Use concise property iteration * Make /options endpoint concise * Remove unneeded exports * Capitalize constant * Shorten attribute change callback * Run formatter * Turn off default-props in linter * Fix var name typo * Change member page routing * Run formatter * Use useParams hook * Change object syntax * Run formatter * Start creating tool to transfer data * Consolidate envs and clean up app.js * Fix yarn test not using .env * Add lint-staged pre-commit hook (#27) * Add lint-staged pre-commit hook * Format "unstaged" files * Sync prettier versions * Format all files using new Prettier config * Finish writing tool * Format remaining fields * Check for member uniqueness * Fix enum formatting * Run formatter * Run formatter * Run format with new hook * Change new sign-in process to attempt to link user via email * Show login error on frontend * Remove unused Member page (renamed) * Fix navbar welcome text spacing * Fix lint * Switch to cookie-session * Change date attribute prop type to number * Allow numbers for string attribute value * Change enum attribute prop types * Add keys to fields * Only pass string to enum callback * Fix default enum attribute option * Rename StringAttribute to TextAttribute Co-authored-by: ishaansharma <[email protected]> Co-authored-by: Jeffrey Tang <[email protected]> Co-authored-by: Yousef Ahmed <[email protected]> * STRUCTURE: added basic api endpoint structures * Added base structure attempt at notes endpoint * Abstracted notes middleware and updated PUT * New user auth flow (#31) * Create basic endpoint skeleton * get endpoint 500 error * Fix routing * Get member endpoint to work * Return more fields from endpoint * Return object id from endpoint * Add filterSensitiveInfo util * Give all non-required Member fields a default of null * Move passport-setup to utils * Remove console.log * Add members endpoints * Fix filterSensitiveInfo util * Use passport-setup.js in utils * Use auth endpoint * Move /api/auth/user to /api/members/current * Add omit fields to GET /:memberId * Change current user endpoint in frontend * Add more auth utils * Use isDirector from module in members routes * Change level default in model back to TBD * Add level priority explanation * Add detailed permission checking in members endpoint * Fix difference function * Fix typos in user-utils * Add _id as neverEditable field * Fix allFields not being checked correctly * Filter viewable fields when returning from PUT * Pull enum options from backend * Add status options to endpoint * Disable dropdowns * Add labels to fields * Create wrapper for getting member by ID * Add boolean selector * Add number fields * Add fields for basic string attributes * Retrieve schema type from DB * Move preprocessing to backend * Fix enum type detection * Remove duplicated code * Fix attribute change error * Run formatter * Remove warnings * Format client * Populate edit fields from DB * Add types to props * Run formatter * Remove alert * Run formatter * Get permissions from backend * Disable input boxes if missing permissions * Add enum dropdowns * Format client * Remove user ID override * Change to ES6 defaults * Remove unused package * Change var to let * Concisen member options endpoint * Delete env file * Unexport schema * Use concise property iteration * Make /options endpoint concise * Remove unneeded exports * Capitalize constant * Shorten attribute change callback * Run formatter * Turn off default-props in linter * Fix var name typo * Change member page routing * Run formatter * Use useParams hook * Change object syntax * Run formatter * Start creating tool to transfer data * Consolidate envs and clean up app.js * Fix yarn test not using .env * Add lint-staged pre-commit hook (#27) * Add lint-staged pre-commit hook * Format "unstaged" files * Sync prettier versions * Format all files using new Prettier config * Finish writing tool * Format remaining fields * Check for member uniqueness * Fix enum formatting * Run formatter * Run formatter * Run format with new hook * Change new sign-in process to attempt to link user via email * Show login error on frontend * Remove unused Member page (renamed) * Fix navbar welcome text spacing * Fix lint * Switch to cookie-session * Make login failure text constant * Make login failure query param constant Co-authored-by: mlw6 <[email protected]> Co-authored-by: ishaansharma <[email protected]> Co-authored-by: Yousef Ahmed <[email protected]> * added api call to get all members * Profile layout (#45) * Add style prop to attributes * Make fields take two columns * Style date attribute * Allow boolean attribute to take booleans * Cast memberID to string before comparing for perms * Rename ProfileFragment to ProfileDropdown * Rename ProfileDropdown folder * Update editable fields (#43) * added notes schema * changed memberid to string type * changed default values for arrays * Allow Members to Update Profile (#46) * Add style prop to attributes * Make fields take two columns * Style date attribute * Allow boolean attribute to take booleans * Cast memberID to string before comparing for perms * Rename ProfileFragment to ProfileDropdown * Rename ProfileDropdown folder * Send PUT request on member update * Style button * Add success messsage and conditionally disable submit button * Run formatter * Set upstream user after updating profile * Exported notes api * Member grid backend connection (#49) * added comments to Table.js for backend connection * added api call to get all members * -fixed member state variable Co-authored-by: Alice Fang <[email protected]> * Style Migration (#50) * added support for semantic ui react * removed support for bridge * migrated login page to semantic ui * replaced all bridge components with semantic, minor styling edits * yarn format * add husky * yarn add husky to root * removed css comments and fixed package.json * add formatting * Add formatting for conflicts * add string validation * removed console.log * Refactor small pieces of notes * format code * Remove unused note.js file * changed phone regex and modularized validation function * Add GET note labels endpoint * Bump elliptic from 6.5.3 to 6.5.4 in /client (#57) Bumps [elliptic](https://github.com/indutny/elliptic) from 6.5.3 to 6.5.4. - [Release notes](https://github.com/indutny/elliptic/releases) - [Commits](indutny/elliptic@v6.5.3...v6.5.4) Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * tested an fixed all endpoints * formatting * Missing Fields (#58) * add comment * add momentjs and sorting/cohorts dates * centralized fieldvals * finished adding all missing fields * add styling fixes * remove unecessary deletes * format * add stylistic changes * add permit optional chaining from flow * add modules, remove react-jsonschema-form-semanticui * add notes routing * add note editor, temp notes list * add new api wrappers * add remove react-jsonschema-form-semanticui package * add fields for access * add sidebar for saving and metadata * Change get endpoint to return member object * format * Refactor code * format * Add version control for put requests * Bump ssri from 6.0.1 to 6.0.2 in /client (#67) Bumps [ssri](https://github.com/npm/ssri) from 6.0.1 to 6.0.2. - [Release notes](https://github.com/npm/ssri/releases) - [Changelog](https://github.com/npm/ssri/blob/v6.0.2/CHANGELOG.md) - [Commits](npm/ssri@v6.0.1...v6.0.2) Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Fix map formatting * remove default parameter * Update put request * Ad get endpoint fix * format * Add edit version control for put * format * add upsert * format * add validate member info * add fix key casing * add new profile and navbar * add update navbar flex * add table styles, formatting * add layout for pages * add working notes and note pages * add remove console.log in notes * Add edit version control for notes PUT endpoint (#69) * Add edit version control for put * format * add upsert * add cleanup, documentation * Updated get so that editableBy users also can view by default * format * Add Members UI (#70) * add button for new user * add user created on frontend * add user created on frontend * formatting * linting * fixed add members * linting * comments * comments * linting * add required fields * removed css * linting * fixed year validation * generalized digit regex * add success message, default editor * add view-only mode, grab user to check for view-mode * add forward to Id page on note creation * Bump lodash from 4.17.20 to 4.17.21 in /api (#79) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.20 to 4.17.21. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](lodash/lodash@4.17.20...4.17.21) Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump lodash from 4.17.20 to 4.17.21 (#78) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.20 to 4.17.21. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](lodash/lodash@4.17.20...4.17.21) Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Size notes columns to fit page width * Edit user default privileges for notes (#80) * Add memberID as editor when creating note by default * Remove the current member from the dropdowns when creating a note * Remove outdated comment * Update README.md * Add delete note functionality * Update public site attributes * Bump hosted-git-info from 2.8.8 to 2.8.9 in /api (#82) Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.8.8 to 2.8.9. - [Release notes](https://github.com/npm/hosted-git-info/releases) - [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md) - [Commits](npm/hosted-git-info@v2.8.8...v2.8.9) Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump hosted-git-info from 2.8.8 to 2.8.9 (#81) Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.8.8 to 2.8.9. - [Release notes](https://github.com/npm/hosted-git-info/releases) - [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md) - [Commits](npm/hosted-git-info@v2.8.8...v2.8.9) Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Add ability to encrypt notes (#83) * Add encryption and decryption algorithms * Incorporate encryption with notes feature * Remove logs and set default encrypt state to true * Update README with ME * Preserve production URL * Add Tech Director, meeting, and other enum types * Update email regex and add 403 error for notes * Change encryption method to use an external service * Add axios dependency * Disable csrf * Fix formatting * Delete leftover files * Update encryption service domain * Move api rate limit to catch all routes * Fix linting * Cleanup files * Implement requested changes * Format files Co-authored-by: Jeffrey Tang <[email protected]> Co-authored-by: Matthew Walowski <[email protected]> Co-authored-by: Amit Sawhney <[email protected]> Co-authored-by: Amit Sawhney <[email protected]> Co-authored-by: Alice Fang <[email protected]> Co-authored-by: Alice Fang <[email protected]> Co-authored-by: ishaansharma <[email protected]> Co-authored-by: IshaanRSharma <[email protected]> Co-authored-by: Daniel <[email protected]> Co-authored-by: Daniel Moon <[email protected]> Co-authored-by: Leundai <[email protected]> Co-authored-by: Daniel Moon <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Siraj <[email protected]>
Summary
Successfully connected to mongo atlas and got sample Home endpoint to work.
Changes