Code Monkey home page Code Monkey logo

codepair's People

Contributors

dependabot[bot] avatar devleejb avatar hackerwins avatar

Stargazers

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

Watchers

 avatar  avatar

Forkers

dongjaj

codepair's Issues

(FE) Workspace Creation

What would you like to be added:
Implement the workspace creation logic with the following requirements:

  • Ability to input the name of the Workspace.
  • Call the Workspace creation REST API to initiate the Workspace creation process.
  • Upon successful completion of the Workspace creation, navigate to the newly created Workspace.

Why is this needed:
To provide workspace feature

Additional Information

(BE) Workspace Creation

What would you like to be added:
Implement the workspace creation logic with the following specifications:

  • A Workspace has a name.
  • Creating a Workspace results in the creation of a single row in the database.
  • The user creating the Workspace becomes a member of that Workspace.

Why is this needed:
To provide workspace feature

Additional Information

Add documentation for CodePair

Description:

I need documentation for the following aspects:

As we are currently in the development phase, with frequent changes occurring rapidly, documentation for the project is postponed.

  • README.md

  • Frontend

    • Initial setup guide
    • Directory structure
    • Deployment guide
    • React-query structure
    • Redux structure
  • Backend

    • Initial setup guide
    • Directory structure
    • Architecture
    • Implementation method for login
    • Deployment guide
    • Auth webhook setup guide
  • AI

    • LLM App Structure

This list will be continually updated.

Why:

To aid quick understanding for other open-source contributors

(FE) Logout

What would you like to be added:
Issue #9
Implement the logout functionality on the frontend as discussed in the above issue.

Why is this needed:
To provide user feature

Additional Information:

(BE) Retrieve workspace members

What would you like to be added:
Implement the Workspace Member List Retrieval API.
Refer to the API specifications discussed in the following issue.
#27

Why is this needed:
To provide workspace

Additional Information:

(FE) Retrieve workspace members

What would you like to be added:
Call the Workspace Member List Retrieval API to display the list of Workspaces.

Why is this needed:
To provide workspace

Additional Information:

(FE/BE) Determining Implementation Approach for Login Logic (Firebase, Supabase, Custom Implementation, ... and other similar open-source investigations)

What would you like to be added:
A decision needs to be made on how to implement the login logic, and the following options are under consideration:

  • Firebase
  • Supabase
  • Custom Implementation

It would be beneficial to benchmark and implement based on how other services have implemented login functionalities. The chosen implementation should allow for easy addition of other social logins in the future and provide users with flexibility in their choices.

Why is this needed:

For providing workspace for users

Additional Information:

(FE) Document Editing (Integration with Yorkie)

What would you like to be added:
Implement a Markdown editor with collaborative editing capabilities using the yorkie-js-sdk.

Why is this needed:
For new CodePair Service

Additional Information:
#2
Implement using the selected Markdown editor as specified in the above issue.

(FE) Workspace Invitation

What would you like to be added:
Implement the workspace invitation logic with the following features:

  • Invite users using a distinguishing token (email, ID, etc.).
    • Alternatively, provide an invitation link.
  • Invited users have the option to accept or decline the invitation.

Why is this needed:

  • To provide workspace feature

Additional Information:

(FE) Retrieve Document List within Workspace

What would you like to be added:
Call the Workspace Document List Retrieval API to display the list of Workspaces.

Why is this needed:
To provide workspace

Additional Information:

(BE) Document Sharing Scope Setting

What would you like to be added:
Implementing Document Sharing Scope:
Considering both Public and Private scopes for document sharing, it's necessary to discuss how to implement this feature.
Please refer to the details in the following issue for a discussion on the chosen approach for implementation.
#21

Why is this needed:
To provide document sharing

Additional Information:

Support Supabase

What would you like to be added:

  • Support supabase for db and auth with one service

Why is this needed:

  • Decrease managing point with supabase (DB, Auth, Serverless function, ...)

Additional Information:

Supabase

  • Provides essential features for scaling up.
  • In the course of operating our services, we have gathered top-notch fully managed services from Supabase.
  • Currently, it seems appropriate to introduce Database and Authentication to meet our requirements.

Database

  • Remove backend and convert to Serverless architecture
  • How to conduct tests:
    • Simply spin up a Docker container locally.

Authentication

  • Utilize Supabase functionality for all logins.

(BE) Retrieve a Document

What would you like to be added:
Implement the Workspace Document Retrieval API.
Refer to the API specifications discussed in the following issue.
#27

Why is this needed:
To provide workspace

Additional Information:

(FE) Retrieve a Workspace

What would you like to be added:
Call the Workspace Retrieval API to display the workspace.

Why is this needed:
To provide workspace

Additional Information:

(BE) Retrieve Workspace List

What would you like to be added:
Implement the Workspace List Retrieval API.
Refer to the API specifications discussed in the following issue.
#27

Why is this needed:
To provide workspace

Additional Information:

(FE) Retrieve Workspace List

What would you like to be added:
Call the Workspace List Retrieval API to display the list of Workspaces.

Why is this needed:
To provide workspace

Additional Information:

(FE) Login

What would you like to be added:
Issue #9
Implement the user login functionality on the frontend as discussed in the above issue.

Why is this needed:
To provide user feature

Additional Information:

(AI) LLM App Development

What would you like to be added:
Implement the Plugin using the structure decided in the following issue.
#25

Why is this needed:
To provide Rewriting Plugin

Additional Information:

(FE) Deployment Strategy Selection

What would you like to be added:
Considering the current options, the deployment method will be selected. The following option is under consideration:

  • GitHub Page

Why is this needed:
For users who want to use CodePair

Additional Information:

(FE) Implementing Plugin Architecture

What would you like to be added:
Implement the Plugin Structure discussed in the following issue.
#23

Why is this needed:
To provide plugin

Additional Information:

GitHub Page not working although the deployment is completed

What happened:

  • GitHub Page for CodePair POC is not working
    • The GitHub Actions works well, but users can't access the page.

What you expected to happen:

  • Users can access the CodePair POC well.

How to reproduce it (as minimally and precisely as possible):

GitHub Page for CodePair POC

Anything else we need to know?:

NONE

Environment:

  • Operating system: ALL
  • Browser and version: ALL
  • CodePair version: ALL

(BE) Database Construction

What would you like to be added:
Issue #5, #6
Convert the selected designs from the two previous issues into ORM code.

Why is this needed:
For the feature of users and workspaces for CodePair

Additional Information:

(FE) Document Creation Logic

What would you like to be added:

Create a logic to generate a random key and utilize it for implementing the creation of a new Yorkie Document.

Why is this needed:

For new CodePair service

Additional Information:

Refer the document generation logic of CodePair

(BE) Retrieve Document List within Workspace

What would you like to be added:
Implement the Workspace Document List Retrieval API.
Refer to the API specifications discussed in the following issue.
#27

Why is this needed:
To provide workspace

Additional Information:

(BE) Generate share and invitation token

What would you like to be added:

Develop a system for storing tokens used in generating share and invitation links in the database and subsequently providing these tokens to users.

Why is this needed:

Modify to Store Tokens in the Database to Prevent Excessive URL Length from JWT Usage.

Additional Information:

Configure test environment

What would you like to be added:

  • Configuring for test environment
    • Test DB
    • Mocking
    • Convention
    • Etc...
  • Testing strategies are needed for code that has dependencies on other services, such as GitHub

Why is this needed:

  • To provide stable CodePair service

Additional Information:

(BE) REST API Specification Definition

What would you like to be added:
Discuss how to define the REST API spec for the following functionalities:

  • SignUp
  • LogIn
  • Workspace creation
  • Workspace invitation
  • Workspace member retrieval
  • Document retrieval within a workspace
  • Document retrieval
  • And more...

Why is this needed:
To provide CodePair backend

Additional Information:

(BE) Login

What would you like to be added:
Issue #9
Implement the login functionality on the backend as discussed in the above issue.

Why is this needed:
To provide user feature

Additional Information:

(FE) URL Spec

What would you like to be added:

The task involves establishing a clear and comprehensive specification for the URL and slug that users will use to access the frontend.

Why is this needed:

In order to ensure a standardized approach and enhance user experience, it is essential to define the specifications for the URL that users will access on the frontend.

Additional Information:

(FE) Frontend Project Configuration (React, Lint, CI, Park UI, ...)

What would you like to be added:

Creating a new frontend project setup for CodePair involves the following tasks:

  • Create a Vite + React project.
  • Configure ESLint.
  • Set up CI (GitHub Actions): Consider the coexistence of Frontend and Backend in a Monorepo.
  • Configure Park UI + TailwindCSS.
  • ETC...

Why is this needed:

For new codepair service

Additional Information:

(BE) Deployment Strategy Selection

What would you like to be added:
Considering the current options, the deployment method will be selected. The following option is under consideration:

  • Docker + Docker-compose

Subsequently, containerization will be carried out to facilitate rapid deployment for Kubernetes and on-premise users.

Why is this needed:
For users who want to use CodePair

Additional Information:

(BE) Implementing Plugin Architecture

What would you like to be added:
Implement the Plugin Structure discussed in the following issue.
#23

Why is this needed:
To provide plugin

Additional Information:

(FE) Add Global Error Handling

What would you like to be added:

  • Add Global Error Handling Code
    • react-query
    • error boundary
  • 404 Page

Why is this needed:

  • To provide good UX

Additional Information:

(BE) User Registration

What would you like to be added:
Issue #9
Implement the user registration functionality on the backend as discussed in the above issue.

Why is this needed:
To provide user feature

Additional Information:

(BE) Document Creation within Workspace (Document Name)

What would you like to be added:
Implement the REST API related to document creation, referring to the defined REST API specifications in the below issue.
#27

Why is this needed:
To provide workspace features

Additional Information:

(BE) ERD Design (User, Workspace, Document, ...)

What would you like to be added:
Design an Entity-Relationship Diagram (ERD) for CodePair Backend.
The following tables should be included:

  • User: Represents users utilizing CodePair.
  • Workspace: Represents workspaces to which users belong. Users can belong to one or more workspaces.
  • Document: Represents documents within a workspace, storing Yorkie Document Key and title.
  • Other tables as necessary.

Why is this needed:

For the feature of users and workspaces for CodePair

Additional Information:

(FE) Document Sharing Scope Setting

What would you like to be added:
Implementing Document Sharing Scope:
Considering two possible scopes, Public and Private, for document sharing, we need to discuss the design for the implementation. Let's discuss how to design and implement this feature.

Why is this needed:
To provide document sharing

Additional Information:

(BE) Retrieve a User

What would you like to be added:
Implement the User Retrieval API.
Refer to the API specifications discussed in the following issue.
#27

Why is this needed:
To provide workspace

Additional Information:

(FE) Selection of Markdown Editor

What would you like to be added:

The choice of a Markdown editor needs to be made, considering the following factors:

  • Can collaborative editing functionality be added using Yorkie?
  • Does it support VIM keystrokes?
  • Is it visually appealing?

Why is this needed:

Additional Information:

(FE/BE) Determining Plugin Provision Approach (Investigation of other open-source options)

What would you like to be added:
To allow other users to use plugins, it's essential to research how open-source projects, such as CodePair, provide plugins in both the frontend and backend.
After gathering information on existing practices, we can discuss the most suitable approach for our project.

Why is this needed:
To provide CodePair plugin

Additional Information:

(BE) Retrieve a Workspace

What would you like to be added:
Implement the Workspace Retrieval API.
Refer to the API specifications discussed in the following issue.
#27

Why is this needed:
To provide workspace

Additional Information:

(FE) Retrieve a User

What would you like to be added:
Call the User Retrieval API to display the user info.

Why is this needed:
To provide workspace

Additional Information:

(FE) Retrieve a Document

What would you like to be added:
Call the Workspace Document Retrieval API to display the workspace.

Why is this needed:
To provide workspace

Additional Information:

(FE) User Registration

What would you like to be added:
Issue #9
Implement the user registration functionality on the frontend as discussed in the above issue.

Why is this needed:
To provide user feature

Additional Information:

(BE) Workspace Invitation

What would you like to be added:
Implement the workspace invitation logic with the following features:

  • Invite users using a distinguishing token (email, ID, etc.).
    • Alternatively, provide an invitation link.
  • Invited users have the option to accept or decline the invitation.

The specific implementation should be discussed in #17.

Why is this needed:

  • To provide workspace feature

Additional Information:

(BE) Backend Project Configuration (Framework(TBD), Lint, CI, DB...)

What would you like to be added:

Tasks for the development of the new CodePair backend are as follows:

  • Configure the Backend Framework (Discuss framework options, considering Node.js ecosystem).
    Set up Linting.
  • Configure Continuous Integration (CI).
  • Set up Database (DB) and Object-Relational Mapping (ORM) (Discuss requirements and options).

Why is this needed:
For providing the features related to users and workspaces of CodePair

Additional Information:

(FE) Document Creation within Workspace (Document Name)

What would you like to be added:
Implement the functionality to create a new document in a workspace by entering the document name.

  • Replace the logic created in #3 with the updated functionality.
  • Upon document creation, navigate to the page of the newly created document.
  • Call REST API related to document creation. #20

Why is this needed:

To provide workspace feature

Additional Information:

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.