memos/docs/development.md

44 lines
1.0 KiB
Markdown
Raw Normal View History

2022-09-08 19:32:01 +03:00
# Development
Memos is built with a curated tech stack. It is optimized for developer experience and is very easy to start working on the code:
1. It has no external dependency.
2. It requires zero config.
3. 1 command to start backend and 1 command to start frontend, both with live reload support.
## Prerequisites
- [Go](https://golang.org/doc/install)
- [Air](https://github.com/cosmtrek/air#installation) for backend live reload
2023-09-17 15:55:34 +03:00
- [Buf](https://buf.build/docs/installation)
2022-09-08 19:32:01 +03:00
- [Node.js](https://nodejs.org/)
- [pnpm](https://pnpm.io/installation)
2022-09-08 19:32:01 +03:00
## Steps
1. pull source code
```bash
git clone https://github.com/usememos/memos
```
2. start backend using air(with live reload)
```bash
air -c scripts/.air.toml
```
2023-09-17 15:55:34 +03:00
3. generate TypeScript code from protobuf with `buf`
```
cd proto && buf generate
```
4. start frontend dev server
2022-09-08 19:32:01 +03:00
```bash
cd web && pnpm i && pnpm dev
2022-09-08 19:32:01 +03:00
```
2022-12-25 05:39:45 +03:00
Memos should now be running at [http://localhost:3001](http://localhost:3001) and change either frontend or backend code would trigger live reload.