GithubHelp home page GithubHelp logo

monday-morning / project-reclamation Goto Github PK

View Code? Open in Web Editor NEW
64.0 1.0 20.0 1.85 MB

The Server Application for Monday Morning under Project Infinity

Home Page: https://project-tahiti-staging.onrender.com/

License: MIT License

JavaScript 99.29% HTML 0.38% Dockerfile 0.07% Mermaid 0.26%
project reclamation infinity mm monday morning nitr server nodejs express

project-reclamation's People

Contributors

120ee0692 avatar ajibeshmohapatra avatar dependabot[bot] avatar designrknight avatar priyadarshini-silpa avatar ritomsonowal avatar rutajdash avatar sambit-sankalp avatar shurtu-gal avatar srirampatibanda avatar srish-ty avatar vishalr3 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

project-reclamation's Issues

Enforce null checks across GraphQL

Details of the Task

  • Enforce null check at graphql context authorization header
  • Add sample auth key for development use
  • Update type resolvers to enforce null checks

Create User Schema

Details of the Task

  • Create User Type
  • Create tests and write resolvers for the following
    • Create new user (Only if user exists in firebase auth)
    • Update select fields of user
    • Read user by ID
    • Read user by Email
    • Remove user (Admin only)

Planning Files

Prettier gives invalid response for list-different

Describe the bug:
Prettier run (list-different) on github actions shows invalid formatting of files while local system runs show no faults.

Expected Behaviour:
Response should match on actions and local system

Additional Context
Prettier Response:
server/schema/user/user.model.js
test/helpers/authorization.test.js

Originally posted by @github-actions[bot] in #98 (comment)

Create Squiggle Schema

Details of the Task

  • Create Squiggle Type
  • Create Squiggle Query
  • Create resolvers for queries

Incorrect argument passed in User Type resolver

Describe the bug
In Line 150 and Line 156, the argument passed is parent.id

Expected behavior
In Line 150 and Line 156 of user.type.js, the argument passed to the resolver should be parent.createdBy and parent.updatedby instead of parent.id

Create Club Schema

Details of the Task

  • Create Club Type
  • Create tests and write resolvers for the following
    • Create new club (Admin only)
    • Update club (Admin only)
    • Read club by ID
    • Find club by Name
    • List clubs by society
    • Remove club (Admin only)

Planning Files

feat: add graphql operations for poll

Queries

  • Get all polls.
  • Get latest poll.
  • Get poll by id.
  • Get list of user participate in a poll.

Mutation

  • Add new poll.
  • Edit poll by id.
  • Delete poll by id.

Add MongoDB Models

Models to create:

  • User
  • Role
  • Club
  • Event
  • CategoryMap
  • Tag
  • Media
  • Album
  • Article
  • Comment
  • Reaction
  • Issue
  • Session
  • Company
  • Live
  • ShareInternship
  • Squiggle
  • Forum
  • Poll

To be created as per Model Design

Eslint configuration error

Describe the bug
no-magic-numbers is set to allow

Expected behavior
no-magic-numbers is should be set to off

Additional context
Formatting issues have occurred due to the bug

Invalid mocks for authorization module

Describe the bug
Found in tests from #72 and #73
Firebase auth and session has been mocked incorrectly.

Expected behavior
All tests should pass

Additional context
Decoded Tokens contain custom claims in root and not within custom claims object

Isolate Permission System from Resolvers

Details of the Task

  • Isolate Permission System from Resolvers
  • Do not add permission logic inside resolvers
  • Do not use any form of level comparisons in resolvers

Documentation and Requirements

Relates to #62

bug: media admin route should be secured

Describe the vulnerability
The /admin/media/auth is currently public and can be used by anyone without any authentication or authorization. The route should be secured to only those who have write access to imagekit data store.

Code References (if required)
server/router/index.js:31

Create Role Schema

Details of the Task

  • Create Role Type
  • Create tests and write resolvers for the following
    • Create new role (Admin only)
    • Update role permissions (Admin only)
    • Get role permissions
    • Get all roles
    • Remove role (Admin only)

Planning Files

Add planning files

Create and add the following files

  • APIs Required
  • Collection Relationships
  • Models

CI/CD for Project Reclamation

Is your feature request related to a problem? Please describe.
CI/CD for Project Reclamation at development and production stages

Describe the solution you'd like
PM2 Deploy

Describe alternatives you've considered
GCP AppEngine Auto-Deploy

wip: admin-panel

Details of the Task

  • Refactor contribution mutations
  • Add Google Docs support.

Setup JSDoc for documentation

Add documentation comments directly to your source code, right alongside the code itself. The JSDoc tool will scan your source code and generate an HTML documentation website for you.

Reference:
https://jsdoc.app/

feat: return partial data for error cases

Is your feature request related to a problem? Please describe.
When any error is thrown, be it a failed execution or a conditionally raised error, no data is sent back and only the error is.

Describe the solution you'd like
In these cases, a partial amount of data is already available or is permissible to be sent and should be sent instead of an empty data response.

Additional context
Examples:

  • When a user requests fields they are not authorized to access, the data in the permissible fields can be sent back along with the error.
  • When a user requests documents which contain a mix of documents they are allowed to view and not, the ones they can view can be sent back with the error or in some cases, without any error sent.
  • When execution crashes mid-way, some data may have already been retrieved and can be sent back.

Lint Workflow crashes due to script errors

Describe the bug
GitHub Linting Workflow is buggy and fails due to script errors

To Reproduce
Steps to reproduce the behavior:

  1. Go to Actions
  2. Click on 'Lint Check'
  3. See last error when linting files

Expected behavior
Should execute the script and output formatting and code errors.

Additional context
Script broke after a switch from pull_request to pull_request_review trigger

Missing SSH key GitHub deployment action

Describe the bug
Missing SSH key GitHub deployment action causes the script to fail as it cannot access the development server.

To Reproduce
Steps to reproduce the behavior:

  1. Go to actions tab
  2. Click on latest deployment action
  3. See error

Expected behavior
Deployment should succeed

Additional context
Use Add SSH Key using the secrets SSH_PRIVATE_KEY, SSH_KNOWN_HOSTS and SSH_CONFIG

feat: sort article by date

Is your feature request related to a problem? Please describe.
Sort the article by date and not by id.

Describe the solution you'd like
Add sort by date

Create Event Schema

Details of the Task

  • Create Event Type
  • Create tests and write resolvers for the following
    • Create new event (Admin only)
    • Update event (Admin only)
    • Read event by ID
    • Find event by Name
    • List event by club
    • Remove event (Admin only)

Planning Files

Dependendecies

Use Firebase Account Linking

Details of the Task

  • Use firebase account linking for NITR Mails
  • Remove nodemailer configuration

Documentation and Requirements

Relates to #62

Circular Dependency caused due to UserType

Describe the bug
The use of UserType in all other types is resulting in a circular dependency.

Proposed Solution
Remove createdByUser and updatedByUser edges from all types.

Create Issue Schema

Details of the Task

  • Create Issue Type
  • Write resolvers for the following:
    • Create new Issue(Admin only)
    • Update Issue(Admin only)
    • Read Issue by ID
    • List Issues
    • Delete Issue(Admin only)

Planning Files

  • Model Design
  • APIs

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.