https://github.com/pascalpost/email-reminder
https://github.com/pascalpost/email-reminder
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/pascalpost/email-reminder
- Owner: pascalPost
- License: apache-2.0
- Created: 2024-02-11T14:36:29.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-04-21T21:31:31.000Z (about 2 years ago)
- Last Synced: 2025-10-22T02:57:35.115Z (8 months ago)
- Language: TypeScript
- Size: 604 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# email-reminder
// TODO add test icon
// TODO add github actions
This is an email reminder application written in Go (backend) and React (frontend).
Wails is used to bundle it as a desktop application.
Organized in a mono-repo
TODO: add details
## Pre-requisites
- Go 1.17+
- vite
- PNPM
- optionally to have a desktop app: [Wails](https://wails.io/docs/gettingstarted/installation)
## Backend development
- run `air` in the root to have the backend server running and compiled+updated on source code change.
## Frontend development
- SPA with Vite and React
## Communication between frontend and backend
- RestApi documented with
- Decided against using (connectrpc)[https://connectrpc.com/]:
- did not like the external tool approach that much
- prefer writing go code first
- I will test proto generation from go in the future
- For now I settled on generating an openapi documentation from go as sufficient for now: see (
go-rest-crud-demo)[https://github.com/pascalPost/go-rest-crud-demo]
## Wails
### About
You can configure the project by editing `wails.json`. More information about the project settings can be found
here: https://wails.io/docs/reference/project-config
### Live Development
To run in live development mode, run `wails dev` in the project directory. This will run a Vite development
server that will provide very fast hot reload of your frontend changes. If you want to develop in a browser
and have access to your Go methods, there is also a dev server that runs on http://localhost:34115. Connect
to this in your browser, and you can call your Go code from devtools.
### Building
To build a redistributable, production mode package, use `wails build`.
This project uses next export to export the Next.js application to static HTML, and then uses Wails to package
the static files into a program, so some Next.js features are unsupported, see
https://nextjs.org/docs/advanced-features/static-html-export for details.