Coder Social home page Coder Social logo

jdaniloc / coopido Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 4.0 7.49 MB

A Angular/Nest Software Engineering Project of IF682 class, building a meeting application like Tinder.

License: MIT License

JavaScript 6.33% TypeScript 63.28% HTML 15.92% SCSS 7.84% Dockerfile 0.17% Gherkin 6.34% CSS 0.07% Procfile 0.05%
docker docker-compose typescript

coopido's Introduction

J. Danilo Carmo

JDaniloC's github stats

JDaniloC's github streak

JDaniloC's top languages

See some private repositories here:

coopido's People

Contributors

arthurlacet avatar arturlealbs avatar ctxo avatar dependabot[bot] avatar imgbotapp avatar jdaniloc avatar melissafalcao avatar

Watchers

 avatar  avatar

coopido's Issues

Save and see user picture

Assignees: @ArthurLacet
Saves the user picture in the database and be possible to see in the profile component, and zoom in.

  • Implement tests
  • Update documentation

Match feedback

Visual feedback when occours a match and send notification to another person

  • Implement Tests
  • Visual Feedback
  • Notification

[FEAT] Create backend application

Describe the solution you'd like
The backend using NestJS, using Postgres/Oracle or MongoDB/Firebase as database to create users and API routes.

List the steps to finish

  • Initialize a NestJS project and define an architecture
  • Add an ORM (like sequelize) or a query builder (like knex)
  • Choose the Database and ensure if will works in the SAAS
  • Create tests

Additional context
The NestJS was chosen because is inspired on Angular, but can be an Express/Node server.
Before choose the database, is good to think how will run the project. The MongoDB/Oracle is free online (with limitations), but the postgres is very known.

MongoDB is document oriented, it's not necessary create migrations.

[FEAT] List of users with similar interests

The solution
Create a page in which the user can see, like, and dislike people with similar interests.

List the steps to finish

  • Create the page
  • Implement an algorithm to find which people have similar interests as the users
  • Add functionality to like the person
  • Add functionality to dislike the person
  • Add algorithm to open a chat between users if both like each other

.

[FEAT] Improve chat UX

The solution
Do possible to see if the another person is online and is chatting

List the steps to finish

  • Do possible to see if the person in online
  • Do possible to see if the person is chatting with the user
  • Do possible to be invisible (cannot see if another person is online and the others cannot see if you're online).

Additional context
image

Store messages on Database

Store messages to database and recover it

  • Store messages on database
  • Recover when connects to websocket

[FEAT] Create a Notification Page

The solution
Create a page where the notifications are stored. The user can view his notifications and delete them.

List the steps to finish

  • Create the notification tab
  • Create the feature to store the notifications
  • Create the feature to delete the notifications

[FEAT] Create the Date system

The solution
Create a option in the messenger that people can use to set a date

List the steps to finish

  • Make the button in the chat page
  • Create the feature to set the date with date, hour and place
  • Create the feature to accept and decline dates

Verify a Match

The system have to verify if two users have liked each other

  • Implement Tests
  • Update Documentation

[FEAT] Contacts visualization

The solution
Create the contacts component in the chat page

List the steps to finish

  • Show all contacts of the user
  • Search contacts and messages
  • Select the contact interacting with messages component

Additional context
image

[FEAT] Create register page

The solution

Creates the registration page, where a user can register and have access to the application's features.

List the steps to finish

  • Create the "Register" page
  • Add content to the "Register" page
  • Customize the "Register" page design

[FEAT] Delete or report chats

The solution
Implement the possibility to delete or report an user

List the steps to finish

  • Create a button to delete/report the user
  • Insure the deleted user cannot chat with the person who deleted him
  • Insure both users cannot see themselves in the main page

Additional context
image

[FEAT] Create routes

The solution
Create the routes that will connect to the backend

List the steps to finish

  • #35
  • Facebook Oauth2

Store liked users

The system should be able to keep in the database the users someone liked

  • Implement Tests
  • Update Documentation

[DEV] Implement CI with tests

Describe what needed to be documented
Implement a Github Actions to run the tests

List the steps to finish

  • Create a Github Actions
  • Refactor the tests to works
  • Set quality limits

[FEAT] Create login page

The solution

Create the login page, where the user will be able to connect to their profile.

List the steps to finish

  • Create the "Login" page
  • Add content to the "Login" page
  • Customize the "Login" page design
  • Create an option to "Register"

[FEAT] Create messages container

The solution
Create the messages container to chat

List the steps to finish

  • Do possible to send messages to another person
  • Show messages between persons
  • Show hours of the message on hover

Additional context
image

[FEAT] Improve Register

The solution
It's missing some fields on register form @melissafalcao

List the steps to finish

  • Add the missing fields
  • Replace the Enum type fields to select's (Education, Gender...)

Additional context
Obviously you need to "translate" the Enum types, eg: MALE will be "Masculino"

Create user routes

The solution
Create the necessary routes to access the backend.

List the steps to finish

  • GET /users information
  • POST /users create user
  • DELETE /users delete user
  • UPDATE /users update user information

Additional context
Add any other context or screenshots about the feature request here.

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.