Textus
You hold the pen. AI keeps your ink flowing. Textus is a free, open-source, next-generation Markdown editor for macOS, Windows and Linux, with a writing assistant built in.
Create meeting minutes, action items, and calendar events from uploaded recordings or notes
AI summary · website content
ProductivityJavaScript · HTMLGitHub @yimdahae-hubOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗녹음 파일이나 회의 메모를 올리면 회의록이 완성됩니다. 받아쓰기, 안건별 회의록, 담당자와 기한이 붙은 할 일, 구글 캘린더 등록까지 한 번에 처리하는 웹 앱입니다.
배포 주소: https://meetmate-plum.vercel.app (접속 코드 필요)
저장소: https://github.com/yimdahae-hub/meetmate
대학원 「생성형 AI와 바이브코딩」 과제로 AI Coding Agent(Claude Code)와 함께 만들었습니다. 개발 과정과 겪은 문제는 docs/DEVLOG.md에 날짜순으로 기록했습니다.
| 입력 | 처리 | 결과 |
|---|---|---|
| 녹음 파일(mp3·wav는 200MB까지, m4a·webm은 40분까지) | Gemini가 받아쓰기 + 화자 구분 | 회의 원문 |
| 앱에서 바로 녹음 (최대 40분, 시간이 되면 자동 종료) | 녹음 종료와 동시에 처리 | 회의 원문 |
| 회의 메모, 녹취록, 클로바노트 텍스트 | Gemini가 읽고 정리 | — |
| 위 셋 중 하나 | 회의록 작성 + 할 일 추출 | 안건별 회의록, 할 일(담당·기한·세부), 확인 필요 사항 |
| 할 일 | 날짜 계산 ("다음 주 수요일" → 2026-10-28) | 구글 캘린더 등록 화면, .ics 파일 |
회의 원문 탭에서 "녹음으로 넣기"와 "글로 넣기" 중 하나를 고르면 그 입력만 보입니다. 녹음이 기본이고, 카드 안에서 [바로 녹음하기]와 [녹음 파일 올리기] 중 하나를 씁니다. 녹음이 없으면 "글로 넣기"에서 메모·녹취록을 붙여 넣습니다. 녹음을 처리하면 받아쓴 글이 "글로 넣기"의 원문 칸에 들어가므로 따로 적을 필요가 없습니다.
회의 원문 탭에서 고릅니다. 간략은 참석자가 빠르게 확인하는 용도로, 안건별로 "논의한 내용 → 그래서 할 일"을 한 줄씩 씁니다. 상세(기본값)는 회의에 없던 사람이 읽는 용도로, 업무영역 → 세부 주제 아래에 배경·기존안, 나온 의견과 근거(누구 측 의견인지), 결론("로 진행" / " 검토" / "~ 보류" 구분), 그래서 할 일을 논의 순서대로 씁니다.
처음 열면 "기존 회의록 샘플을 하나 올려주세요"라고 묻습니다. .txt, .md, .docx 파일을 올리거나 붙여 넣으면, AI가 그 양식(제목 체계, 번호, 기호, 말투)을 따라 회의록을 씁니다. 샘플이 없으면 추천 양식(■ 주요 내용 / ■ 해야 할 일 / ■ 확인 필요)으로 시작합니다. 양식은 사이드바에서 언제든 바꿀 수 있습니다.
녹음에서 목소리가 다른 사람을 "화자1, 화자2"로 나눕니다. 대화 중에 이름이 불리면("민수 씨?") 그 이름으로 바꾸고, "제가 할게요"라고 말한 사람을 할 일 담당자로 연결합니다. 이름을 모르는 화자는 회의록 화면에서 직접 바꿀 수 있습니다.
[브라우저] [Vercel 서버 함수] [Google Gemini]
녹음 파일 ──── 직접 업로드 ──────────────────────────────────▶ Files API
(업로드 주소만 서버에서 발급)
메모/원문 ───▶ /api/minutes ───▶ API 키를 붙여 요청 ─────────▶ gemini-3.5-flash-lite
결과를 검사해서 돌려줌 ◀────── JSON (안건·할 일·화자·양식 본문)
회의록·할 일 화면 (브라우저에 저장)
→ 구글 캘린더 링크 / .ics / .md 다운로드
meetmate/
index.html 화면 구조 (3개 탭 + 양식 선택 창)
style.css 레이아웃, 모바일 반응형
app.mjs 화면 동작, 브라우저 저장, 녹음·업로드, 양식, 접속 코드
logic.mjs 날짜 계산, 화자 이름 바꾸기, 회의록 .md / .ics 생성, 규칙 기반 추출(예비)
api/_gemini.js Gemini 호출, 프롬프트, 응답 양식(스키마), 응답 검사
api/minutes.js POST /api/minutes — 텍스트 또는 업로드된 녹음 → 회의록 JSON
api/upload.js POST /api/upload — 녹음 업로드 주소 발급
dev-server.mjs 로컬 개발 서버 (정적 파일 + /api 실행)
tests.mjs 단위 테스트 (node tests.mjs)
icon.svg 앱 아이콘
docs/ 개발 기록, 보고서 초안, 스크린샷
.env.local 파일을 만들고 키 입력 (.env.example 참고)
GEMINI_API_KEY=발급받은키
npm run dev # http://localhost:3000
npm test # 단위 테스트
Other, 빌드 명령은 없습니다.GEMINI_API_KEY를 넣습니다. 공개 주소라면 ACCESS_CODE도 넣는 것을 권합니다. 앱에서 그 코드를 한 번 입력해야 AI 기능을 쓸 수 있어서, 모르는 사람이 내 무료 사용량을 쓰는 걸 막습니다.