Coder Social home page Coder Social logo

maya-manager / server Goto Github PK

View Code? Open in Web Editor NEW
16.0 1.0 5.0 10.64 MB

App to manage your pocket money and keep track of your expenses and account between multiple people

Home Page: https://discord.com/invite/A2GdYbwAnw

License: MIT License

TypeScript 97.16% Shell 2.32% Dockerfile 0.52%
docker express maya nodejs postgresql sql api javascript rest rest-api

server's People

Contributors

aayushchugh avatar adityaapant avatar allcontributors[bot] avatar bitofabyte avatar danielxing1103 avatar dependabot[bot] avatar imgbot[bot] avatar imgbotapp avatar renovate[bot] avatar vanshhemu avatar

Stargazers

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

Watchers

 avatar

server's Issues

feat: Create a route to login user

Description

route:

[POST] /auth/login

body:

{
  "email": "[email protected]",
  "username": "username",
  "password": "strong password"
}

Validations

  1. Users can either log in with either a username or email
  2. If the user is not verified then he should not be able to log in

Anything else?

No response

doc: create pull request template

Make a pull request template with this body

# Description

Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.

Fixes #(issue)

# Checklist:

-   [ ] I have performed a self-review of my own code
-   [ ] I have commented my code, particularly in hard-to-understand areas
-   [ ] I have made corresponding changes to the documentation (postman and swagger)
-   [ ] I have written tests for the code

# Screenshots (optional)

official docs on how to create pull request template: https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/creating-a-pull-request-template-for-your-repository

ci: add workflow to auto deploy typedoc to github pages

create a new file .github/workflows/deploy-docs.yml and paste the following contents

name: Build and Deploy
on:
    push:
        branches:
            - main
    workflow_dispatch:
permissions:
    contents: write
jobs:
    build-and-deploy:
        concurrency: ci-${{ github.ref }} # Recommended if you intend to make multiple deployments in quick succession.
        runs-on: ubuntu-latest
        steps:
            - name: Checkout 🛎️
              uses: actions/checkout@v3

            - name: Install and Build 🔧 # This example project is built using npm and outputs the result to the 'build' folder. Replace with the commands required to build your project, or remove this step entirely if your site is pre-built.
              run: |
                  yarn install
                  yarn docs

            - name: Deploy 🚀
              uses: JamesIves/github-pages-deploy-action@v4
              with:
                  folder: docs # The folder the action should deploy.

docs: Create docs on how to setup code locally

Project

Core

Description

This will include following contents

  1. Forking and cloning the repo
  2. Downloading and setting up database (don't need to write everything just add reference to official docs)
  3. Installing packages
  4. Adding .env file

and everything else needed to get started with the development process

Anything else?

No response

feat: route to resend verification code after signup

Description

Create a route /auth/signup/resend/:email this route will resend the verification code to the provided email.

verification code can be taken from user.verification_code from database

Anything else?

No response

feat: ✨ set up other tools

setup following tools

reference to config files can be found in this repo: https://github.com/MultiEmail/frontend

Eslint

use this config file and please install all the packages needed to make this configuration work

{
	"env": {
		"es2021": true,
		"node": true,
		"jest": true
	},
	"parser": "@typescript-eslint/parser",
	"plugins": [
		"@typescript-eslint",
		"prettier",
		"sonarjs",
		"no-secrets",
		"jsonc",
		"pii",
		"no-unsanitized"
	],
	"extends": [
		"google",
		"prettier",
		"plugin:sonarjs/recommended",
		"plugin:node/recommended",
		"plugin:jsonc/base",
		"plugin:pii/recommended",
		"plugin:no-unsanitized/DOM",
		"plugin:prettier/recommended",
		"plugin:@typescript-eslint/recommended"
	],
	"parserOptions": {
		"ecmaVersion": 2020,
		"sourceType": "module"
	},
	"settings": {
		"import/resolver": {
			"typescript": {}
		}
	},
	"rules": {
		"semi": "error",
		"no-console": "warn",
		"no-tabs": "off",
		"indent": "off",
		"space-infix-ops": "off",
		"no-trailing-spaces": "error",
		"space-before-blocks": "error",
		"quotes": "off",

		"camelcase": "error",
		"node/no-unpublished-import": "off",
		"node/no-unsupported-features/es-syntax": "off",
		"node/no-missing-import": [
			"error",
			{
				"allowModules": [],
				"resolvePaths": ["/path/to/a/modules/directory"],
				"tryExtensions": [".js", ".ts", ".json", ".node"]
			}
		],
		"valid-jsdoc": "off",
		"node/handle-callback-err": "error",
		"node/no-path-concat": "error",
		"node/no-process-exit": "error",
		"node/global-require": "error",
		"node/no-sync": "error",
		"no-secrets/no-secrets": "error",
		"pii/no-email": "off",
		"no-invalid-this": "off",
		"spaced-comment": "off",
		"prefer-destructuring": ["error", { "object": true, "array": true }],
		"@typescript-eslint/no-explicit-any": "off",
		"no-unused-vars": "off",
		"@typescript-eslint/no-unused-vars": [
			"warn",
			{ "argsIgnorePattern": "req|res", "varsIgnorePattern": "prop" }
		],
		"@typescript-eslint/ban-types": [
			"error",
			{
				"types": {
					// un-ban a type that's banned by default
					"{}": false
				},
				"extendDefaults": true
			}
		],
		"linebreak-style": "off",
		"object-curly-spacing": "off",
		"comma-dangle": "off",
		"new-cap": "off",
		"require-await": "error",
		"require-jsdoc": "off",
		"sonarjs/cognitive-complexity": "off",
		"sonarjs/no-duplicate-string": "off",
		"sonarjs/no-identical-expressions": "off",
		"sonarjs/no-identical-functions": "off",
		"@typescript-eslint/quotes": ["error", "double"],
		"@typescript-eslint/ban-ts-comment": "off",
		"@typescript-eslint/explicit-function-return-type": "off",
		"prettier/prettier": [
			"error",
			{
				"endOfLine": "auto",
				"useTabs": true
			}
		]
	}
}

bug: styling problem in verification code email

Current Behavior

There are 2 major problems

  1. Extra margin around the banner
  2. Text in button is not centered

Expected Behavior

  1. There should be no extra unexpected margins
  2. Text inside the button should be centered

Steps To Reproduce

  1. Create a new account
  2. Check your mail box

Anything else?

image

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

This repository currently has no open or pending branches.

Detected dependencies

docker-compose
docker-compose.test.yml
docker-compose.yml
dockerfile
apps/client/Dockerfile
apps/server/Dockerfile
apps/server/Dockerfile.test
github-actions
.github/workflows/deploy-docs.yml
  • actions/checkout v3
  • JamesIves/github-pages-deploy-action v4
npm
apps/client/package.json
  • @expo/metro-config ^0.7.1
  • @expo/webpack-config ^18.1.0
  • expo ^48.0.19
  • expo-status-bar ~1.4.4
  • react 18.2.0
  • react-native 0.71.11
  • @babel/core ^7.22.1
  • @babel/runtime ^7.22.3
  • @types/react ~18.2.0
  • eslint-plugin-react ^7.32.2
  • eslint-plugin-react-native ^4.0.0
  • ts-node ^10.9.1
  • typescript ^5.0.0
apps/server/package.json
  • @nestjs/common ^10.0.0
  • @nestjs/config ^3.0.0
  • @nestjs/core ^10.0.0
  • @nestjs/platform-express ^10.0.0
  • @prisma/client ^4.15.0
  • bcrypt ^5.1.0
  • class-transformer ^0.5.1
  • class-validator ^0.14.0
  • dotenv ^16.1.4
  • nodemailer ^6.9.3
  • reflect-metadata ^0.1.13
  • rxjs ^7.2.0
  • @nestjs/cli ^10.0.0
  • @nestjs/schematics ^10.0.0
  • @nestjs/testing ^10.0.0
  • @types/bcrypt ^5.0.0
  • @types/express ^4.17.13
  • @types/jest 29.5.2
  • @types/node 18.16.18
  • @types/nodemailer ^6.4.8
  • @types/supertest ^2.0.11
  • @typescript-eslint/eslint-plugin ^5.0.0
  • @typescript-eslint/parser ^5.0.0
  • eslint ^8.0.1
  • eslint-config-prettier ^8.3.0
  • eslint-plugin-prettier ^4.0.0
  • jest ^29.5.0
  • prettier ^2.3.2
  • prisma ^4.15.0
  • source-map-support ^0.5.20
  • supertest ^6.1.3
  • ts-jest 29.1.0
  • ts-loader ^9.2.3
  • ts-node ^10.0.0
  • tsconfig-paths 4.2.0
  • typescript ^5.0.0
package.json
  • @commitlint/cli ^17.6.5
  • @commitlint/config-conventional ^17.6.5
  • @types/node ^20.2.5
  • @typescript-eslint/eslint-plugin 5.60.0
  • @typescript-eslint/parser 5.60.0
  • all-contributors-cli ^6.25.1
  • commitlint ^17.6.5
  • eslint 8.43.0
  • eslint-config-google 0.14.0
  • eslint-config-prettier 8.8.0
  • eslint-import-resolver-typescript 3.5.5
  • eslint-plugin-import 2.27.5
  • eslint-plugin-jsonc 2.9.0
  • eslint-plugin-no-secrets 0.8.9
  • eslint-plugin-no-unsanitized 4.0.2
  • eslint-plugin-node 11.1.0
  • eslint-plugin-pii 1.0.2
  • eslint-plugin-prettier 4.2.1
  • eslint-plugin-sonarjs 0.19.0
  • husky ^8.0.3
  • prettier 2.8.8
  • prettier-eslint 15.0.1
  • typedoc ^0.24.7
  • typedoc-plugin-markdown ^3.15.3
  • typedoc-plugin-merge-modules ^5.0.1
  • typedoc-plugin-missing-exports ^2.0.0
  • typedoc-plugin-zod ^1.0.2
  • typescript ^5.1.3
  • yarn 3.6.0

  • Check this box to trigger a request for Renovate to run again on this repository

feat: Create a UI template for verification email

Project

Server

Description

The verification email that is currently being sent while signing up is not looking good so we need to create an email template with our custom HTML and CSS

Anything else?

No response

feat: Create route to verify user

Description

create a route [GET] /auth/verify/:email/:verification_code

After signup, an API call will be made to this route to verify the verification code sent to the user's email

Anything else?

No response

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.