https://github.com/ujstor/todo-go-htmx
ToDo App - Chi router, HTMx for dynamic content updates, Tailwind CSS for styling, enabling users to add, complete, and remove tasks efficiently without full page reloads.
https://github.com/ujstor/todo-go-htmx
go htmx talwindcss
Last synced: 12 months ago
JSON representation
ToDo App - Chi router, HTMx for dynamic content updates, Tailwind CSS for styling, enabling users to add, complete, and remove tasks efficiently without full page reloads.
- Host: GitHub
- URL: https://github.com/ujstor/todo-go-htmx
- Owner: Ujstor
- Created: 2023-12-03T23:44:05.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-11-23T11:22:48.000Z (over 1 year ago)
- Last Synced: 2025-01-22T18:51:52.871Z (about 1 year ago)
- Topics: go, htmx, talwindcss
- Language: Go
- Homepage: https://todo.ujstor.com
- Size: 42 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Todo app Go-HTMx-Air-Tailwind
Todo-Go is a simple web-based to-do list application built with Go, using the Chi router and HTMx for dynamic content updates without full page reloads. The application allows users to create, mark as done, and delete to-do items.

## Getting Started
To set up Todo-Go using Docker:
1. Clone the repository
2. Copy the `.env.example` file to create a `.env` file and fill in your environment variables
3. Start Docker services using `make docker-run`
The application and the PostgreSQL database will be started. The app will be accessible at `http://localhost:8088`.
## Usage
- Access the Todo-Go app at `http://localhost:8088`.
- You can add, mark as done, and delete to-do items using the web interface.
### Using Docker
When you start the application with Docker Compose, it automatically sets up a PostgreSQL database and connects the Todo-Go application to it. The database schema will be initialized based on the `init.sql.
To stop the application and remove the containers, you can use: `make docker-down`
To persist the PostgreSQL data between runs, a Docker volume `psql_volume` is used as defined in the `docker-compose.yml`
## MakeFile
build the application
```bash
make build
```
run the application
```bash
make run
```
Create DB, migration and App container
```bash
make docker-run
```
Shutdown containers
```bash
make docker-down
```
live reload the application
```bash
make watch
```
clean up binary from the last build
```bash
make clean
```