mirror of
https://github.com/usememos/memos.git
synced 2025-11-09 17:01:36 +08:00
An open source, lightweight note-taking service. Easily capture and share your great thoughts.
dockerfreegomarkdownmemomicroblognote-takingreactself-hostedsocial-networksqlitestarred-repostarred-usememos-repo
* feat: improve i18n support as a whole
- Remove dayjs in favor of /helpers/datetime.ts, which uses
Intl.DateTimeFormat and Date. Dayjs is not exactly i18n friendly
and has several locale related opened issues.
- Move/refactor date/time code from /helpers/utils.ts to
/helpers/datetime.ts.
- Fix Daily Review weekday not changing according to selected date.
- Localize Daily review weekday and month.
- Load i18n listed strings from /locales/{locale}.json in a dynamic way.
This makes much easier to add new locales, by just adding a properly
named json file and listing it only in /web/src/i18n.ts and
/api/user_setting.go.
- Fallback languages are now set in /web/src/i18n.ts.
- Full language codes are now preffered, but they fallback to 2-letter
codes when not available.
- The locale dropdown is now populated dynamically from the available
locales. Locale names are populated by the browser via
Intl.DisplayNames(locale).
- /web/src/i18n.ts now exports a type TLocale from availableLocales
array. This is used only by findNearestLanguageMatch(). As I was unable
to use this type in ".d.ts" files, I switched the Locale type from
/web/src/types/i18n.d.ts to string.
- Move pretty much all hardcoded text strings to i18n strings.
- Add pt-BR translation.
- Remove site.ts and move its content to a i18n string.
- Rename zh.json to zh-Hans.json to get the correct language name on
selector dropdown.
- Remove pt_BR.json and replace with pt-BR.json.
- Some minor layout spacing fixes to accommodate larger texts.
- Improve some error messages.
* Delete .yarnrc.yml
* Delete package-lock.json
* fix: 158:28 error Insert `⏎` prettier/prettier
|
||
|---|---|---|
| .github | ||
| .vscode | ||
| api | ||
| assets | ||
| cmd | ||
| common | ||
| docs | ||
| plugin | ||
| scripts | ||
| server | ||
| setup | ||
| store | ||
| test | ||
| web | ||
| .dockerignore | ||
| .gitignore | ||
| .golangci.yaml | ||
| CODEOWNERS | ||
| docker-compose.uffizzi.yml | ||
| docker-compose.yaml | ||
| Dockerfile | ||
| go.mod | ||
| go.sum | ||
| LICENSE | ||
| main.go | ||
| README.md | ||
| SECURITY.md | ||
memos
A lightweight, self-hosted memo hub. Open Source and Free forever.
Live Demo • Discuss in Telegram / Discord
Key points
- Open source and free forever
- Self-hosting with Docker in seconds
- Markdown support
- Customizable and sharable
- RESTful API for self-service
Deploy with Docker in seconds
docker run -d --name memos -p 5230:5230 -v ~/.memos/:/var/opt/memos ghcr.io/usememos/memos:latest
The
~/.memos/directory will be used as the data directory on your local machine, while/var/opt/memosis the directory of the volume in Docker and should not be modified.
Learn more about other installation methods.
Contribution
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. We greatly appreciate any contributions you make. Thank you for being a part of our community! 🥰
- Moe Memos - Third party client for iOS and Android
- lmm214/memos-bber - Chrome extension
- Rabithua/memos_wmp - WeChat MiniProgram
- qazxcdswe123/telegramMemoBot - Telegram bot
- eallion/memos.top - Static page rendered with the Memos API
- eindex/logseq-memos-sync - Logseq plugin
- JakeLaoyu/memos-import-from-flomo - Import data. Support from flomo, wechat reading
- Send to memos - A shortcut for iOS
- Memos Raycast Extension - Raycast extension
- Memos Desktop - Third party client for MacOS and Windows
Acknowledgements
- Thanks Uffizzi for sponsoring preview environments for PRs.
