Profile img

레몬그린

@bananamilk452@hackers.pub · 17 following · 18 followers

레몬그린입니다!

https://github.com/Bananamilk452

5
1

레몬그린 replied to the below article:

나만의 연합우주 마이크로블로그 만들기

洪 民憙 (Hong Minhee) @hongminhee@hackers.pub

이 튜토리얼은 Fedify를 사용하여 ActivityPub 프로토콜을 구현하는 마이크로블로그를 만드는 과정을 안내합니다. Fedify는 연합 서버 앱 개발의 복잡성을 줄이고, 개발자가 비즈니스 로직에 집중할 수 있도록 돕는 TypeScript 라이브러리입니다. 튜토리얼에서는 Node.js, npm, Hono 등의 개발 환경을 설정하고, SQLite 데이터베이스를 구축하여 계정 생성, 프로필 페이지, 액터 구현, 암호 키 관리, 팔로우 기능, 게시물 작성 및 타임라인 구현 등 마이크로블로그의 핵심 기능을 단계별로 구현합니다. 특히 ActivityPub.Academy 서버를 활용하여 실제 연합우주 환경에서의 연동을 테스트하고, Mastodon과의 호환성을 확인합니다. 마지막으로, 보안 및 기능 개선을 위한 추가 과제를 제시하며, 독자가 프로젝트를 확장할 수 있도록 안내합니다. 이 튜토리얼을 통해 독자는 Fedify를 활용하여 ActivityPub 기반의 분산 소셜 네트워크 서비스를 구축하는 기본적인 이해를 얻을 수 있습니다.

Read more →
13

@hongminhee洪 民憙 (Hong Minhee) 질문이 있습니다! Follow 이벤트 수신 받는 코드에서

   if (followingId == null) {
      logger.debug(
        "Failed to find the actor to follow in the database: {object}",
        { object },
      );
    }

중간에 이렇게 followingId null 체크를 하던데, return이 없어서 여전히 followingId가 string | null이라 아래 INSERT 문에서 오류가 생길 것 같은데, return을 추가하는게 맞을까요? 아니면 스키마가 null을 허용해서 괜찮은 걸까요? 저는 prisma로 짜던 중이었는데 오류가 나서 여쭤봅니다!

db.prepare(
      "INSERT INTO follows (following_id, follower_id) VALUES (?, ?)",
    ).run(followingId, followerId);
0
4
4

fedify로 블로그 만드는 일기 - 1

오늘은 @hongminhee洪 民憙 (Hong Minhee) 님의 글을 읽고 있어요! 이 글을 읽으면서 Next Integration 패키지와 함께 만들어볼까 생각 중이에요!

스스로 만드는 페디버스 블로그라... 재밌겠네요

6

타임라인쪽은 대충 반쯤?하다가 메인 기능 먼저 넣어야 할 것 같아서 (글 쓰기 기능) 쓰레드 페이지 만드는 중이에요

지금 문제: 멘션이 여러 개일 경우엔 무슨 기준으로 child 멘션을 선택하는가

  • parent 있으면 위에 그려줘야함
미드나잇스카이 쓰레드 페이지
1
1

E2EE (단대단 암호화)가 들어간 블루스카이 비밀글 서비스는 어떨까요.... 서버에서도 내용을 읽을 수 없고, 당사자들만 읽을 수 있어요

그리고 약간 기존 트위터 비계처럼, 허가/거절 방식으로 팔로워를 받아요.

E2EE라 (정확히는 구현된 방법때문에) 누구누구 선택해서 그 사람들한테만 공개되게 할 수 있어요.

아 대신에, 회원가입때 비밀번호를 만드셔야하고, 로그인할 때도 치셔야해요. (마스터 키) 백업 키는 제공해드려요.

3
1
0

미드나잇스카이 개발일기

오늘은 피드 쪽 개발! as로 떡칠되어있던 코드들을 싹 다 타입 가드로 바꾸고... 복잡했던 Embed 부분을 코드 분리하고 다른 분 코드 참고해서 깔끔하게 바꿨습니다!

미드나잇스카이 개발 중인 피드 화면미드나잇스카이 임베드 코드
1
0
5
5