본문 바로가기

Thinking

메모, 리마인더, 할일 웹앱 MEMOKU 만든 후기

반응형

메모, 리마인더, 할일 웹앱 MEMOKU

 

 

MEMOKU

 

 

이직하고 얼마 지나지 않았을 때, 히스토리가 파악이 안되었는데 여러 일을 진행해야 되었을 때가 있었음.

헤매면서 여러 일을 처리하려니, 정리가 안되어서 메모장에 할일을 적어가면서 했는데,

갑자기 이 메모장을 내가 만들고 싶어짐. 그래서 만듬ㅋ

 

 

MEMOKU 다크모드
MEMOKU 스크린샷

 

 

MEMOKU 잘 될거 같은 생각

 

 

MEMOKU 사용자가 많아지면 SaaS(서비스형 소프트웨어, Software as a Service)로 만들 망상함.

API도 만들어야 될거고, 첫로드도 빨라보이게 하고 싶고, SEO도 중요해질테니 SSR 지원하는 Nuxt3 선택

(정확히는 Universal Rendering 이라고 함)

 

 

Nuxt3 꽤 좋은듯

 

1. Nuxt 공식홈페이지에서 알려주는 방법대로 프로젝트 시작

다른 개인 프로젝트에서도 Nuxt3를 쓰고있는게 몇개 있어서, 용량아낄 요량으로 pnpm으로 설치.

pnpm dlx nuxi@latest init <project-name>

 

 

2. Css양 많아질것 같으므로, TailwindCss 적용

// nuxt.config.ts
{
//...
postcss: {
  plugins: {
    tailwindcss: {},
    autoprefixer: {},
  },
}
//...
}

 

 

3. 일단 브라우저의 기능 indexedDB로 로컬에 저장할거라, 잘 매핑해놓은 dexie 라이브러리 설치

// package.json
{
//...
  "dependencies": {
    "dexie": "^3.2.4",
    //...
  }
//...
}

 

 

4. 필요한 라이브러리(pinia, chart.js...) 설치하고, 전체적인 레이아웃 짜고... 계속 코딩(이 때가 제일 재밌는듯)

<!-- LayoutBasic.vue -->
<template>
  <div
    class="flex | w-screen h-dvh overflow-hidden"
    :class="storageStore.getThemeClass('bg-white', 'bg-slate-900')">
    <BulkButtons v-if="route.query.bulk" />
    <SNB />
    <div class="right-area | flex flex-col | h-full w-full overflow-hidden">
      <slot name="header"><Header /></slot>
      <main
        id="scroll-area"
        ref="scrollArea"
        class="flex flex-col | h-full"
        :class="lockScrollClass"
        @scroll="checkShowScrollTop">
        <slot />
      </main>
      <nav class="relative">
        <FloatingButtons
          v-if="!route.query.bulk"
          :is-show-scroll-top="isShowScrollTop"
          @scroll-top="scrollTop">
          <slot name="actions" />
        </FloatingButtons>
        <BottomAppBar />
      </nav>
    </div>
  </div>
</template>

 

 

5. netlify에서 nuxt 앱 서비스 가능하므로, 바로 업로드

https://memoku.netlify.app 업로드

 

 

6. 오프라인으로도 동작하고, push도 사용하고, 앱처럼 만들고 싶으니 PWA 세팅

// nuxt.config.ts
{
  // ...
  pwa: {
    registerType: 'autoUpdate',
    strategies: 'injectManifest',
    filename: 'service-worker.js',
    manifest: {
      id: '/',
      name: 'MEMOKU',
      short_name: 'MEMOKU',
  // ...
}

PWA 셋팅후
1. PWA셋팅 후, "홈 화면에 추가" 2.앱처럼 잘보이도록 standalone 확인 3. push alarm도 잘 오는지 확인

 

외국인 타겟으로 하면 사용 많아질 생각함

 

7. 다국어를 위해 i18n 적용하고, 설정 페이지에 언어 추가

MEMOKU 설정 화면

 

 

8. 어찌저찌 완성하고, 구글 서치콘솔에 등록

MEMOKU라 검색하면 안나옴 망함
서치콘솔 등록했는데, MEMOKU 나만 클릭함

 

 

 

9. PWA Builder에서 app 만들고 플레이콘솔에 올리기(시간 개오래걸려서 아직까지 검토중임)

MEMOKU를 Play Store에 올려보기

 

 

10. 홍보하기

찾아보니 스타트업이나 인디개발자를 위한 커뮤니티 Disquiet 같은 서비스가 있어서, 한번 올려봄

근데 이렇게 글쓰는게 아닌가봄. (제가 올린글 구경하러 와주세요.)

 

https://disquiet.io/product/memoku

 

 

이렇게 만들고 보니, 프로젝트를 완성해나간다는건 코딩뿐만 아니라는걸 여실히 느끼게됨.

ㅈ됨 webView에서 안되는듯

 

그래도 나름 요긴하게 쓰고있고, 막상 켜두면 좀 있어보이긴함ㅋ

 

 

 


 

할일이 많아 정리가 필요하신가요?

MEMOKU에 할 일 적어가면서 해보세요.

 

https://zabefofoon.github.io/memoku-guide/

https://memoku.netlify.app/

 

MEMOKU: A free, offline-capable, sleek web app for simple note-taking.

 

memoku.netlify.app

 

 

 

반응형

'Thinking' 카테고리의 다른 글

html, css 툴 Markup Manager MM 만든 후기  (23) 2024.06.04
랜덤채팅 웹 앱 RANDOMMY 만들어본 후기  (64) 2024.05.06