mirror of
https://github.com/rjNemo/rentease.git
synced 2026-06-06 02:36:49 +00:00
Eliminated all references to the Stripe Connect account configuration and option handling. This includes removing the related environment variable, config struct field, client option, and usage in Stripe client setup. Stripe integration now only uses the main secret key and webhook secret.
137 lines
4.3 KiB
Markdown
137 lines
4.3 KiB
Markdown
# Rentease
|
|
|
|

|
|
|
|
<!--toc:start-->
|
|
|
|
- [Rentease](#rentease)
|
|
- [Features](#features)
|
|
- [Getting Started](#getting-started)
|
|
- [Prerequisites](#prerequisites)
|
|
- [Installation](#installation)
|
|
- [Built With](#built-with)
|
|
- [Roadmap](#roadmap)
|
|
- [Contributing](#contributing)
|
|
- [License](#license)
|
|
|
|
Rentease is a property-management application to help landlords to manage your rental
|
|
properties efficiently. With Rentease, you can create invoices, generate activity
|
|
reports, and sync all the booking platforms you use.
|
|
|
|
## Features
|
|
|
|
- **Invoice Management**: Create and manage invoices for your rental properties
|
|
with ease.
|
|
- **Activity Reports**: Generate detailed reports of rental activities to keep track
|
|
of your property performance.
|
|
- **Platform Sync**: Sync bookings across multiple platforms to streamline your rental
|
|
management.
|
|
|
|

|
|
|
|
## Getting Started
|
|
|
|
To get started with Rentease, follow these steps.
|
|
|
|
### Prerequisites
|
|
|
|
You need a version of the Go programming language installed. You can either install
|
|
it via your package manager or via [Go's official website](https://go.dev/).
|
|
You also need a PostgreSQL database. You can install it locally using Homebrew or
|
|
use a cloud alternative such as Railway, fly.io, _etc._
|
|
|
|
### Installation
|
|
|
|
1. Clone the repository
|
|
|
|
```sh
|
|
git clone https://github.com/rjNemo/rentease.git
|
|
cd rentease
|
|
```
|
|
|
|
2. Install the dependencies
|
|
|
|
```sh
|
|
go mod download
|
|
```
|
|
|
|
3. **Setup PostgreSQL**:
|
|
Ensure you have PostgreSQL installed and running. Create a database for Rentease:
|
|
|
|
```sh
|
|
createdb rentease
|
|
```
|
|
|
|
4. **Configure the application**:
|
|
Create a `.env` file in the project root with the following environment variables:
|
|
|
|
```sh
|
|
DB_HOST=localhost
|
|
DB_PORT=5432
|
|
DB_USER=your_db_username
|
|
DB_PASSWORD=your_db_password
|
|
DB_NAME=rentease
|
|
# Stripe configuration (optional until you enable automatic sync)
|
|
APP_STRIPE_SECRET_KEY=sk_test_your_key
|
|
APP_STRIPE_WEBHOOK_SECRET=whsec_your_webhook_secret
|
|
```
|
|
|
|
Leave the Stripe variables blank to continue using manual cash entry only. When set, Rentease will pull payments from Stripe, process webhooks sent to `/webhooks/stripe`, and expose a manual sync endpoint at `POST /api/stripe/sync` (protected by the existing API key middleware).
|
|
|
|
5. Start the application
|
|
|
|
```sh
|
|
make dev
|
|
```
|
|
|
|
### Development Commands
|
|
|
|
Use the included Makefile for common tasks:
|
|
|
|
- `make dev`: Run the dev container with live reload (Air) on `http://localhost:8000`.
|
|
- `make run`: Build and run the production image locally.
|
|
- `make test`: Run `go test ./...` inside the dev container.
|
|
- `make format`: Generate templ files and format code.
|
|
- `make lint`: Lint with `golangci-lint`.
|
|
- `make stop`: Stop the dev container.
|
|
|
|
6. **Access the application**:
|
|
Open your browser and go to `http://localhost:8000` to start using Rentease.
|
|
|
|
### Built With
|
|
|
|
Rentease is built using the following technologies:
|
|
|
|
- [Go](https://go.dev/): The core application logic is written in Go, providing a
|
|
robust and efficient backend.
|
|
- [Htmx](https://htmx.org/): For handling AJAX requests and enhancing the user interface
|
|
with minimal JavaScript.
|
|
- [Templ](https://templ.guide/): Used for templating and rendering dynamic HTML content.
|
|
- [Gorm](https://gorm.io/docs): An ORM library for Go, used for database interactions.
|
|
- [PostgreSQL](https://www.postgresql.org/):The database used to store all application
|
|
data.
|
|
|
|
## Roadmap
|
|
|
|
See the [open issues](https://github.com/users/rjNemo/projects/2/views/1) for a full
|
|
list of proposed features (and known issues).
|
|
|
|
## Contributing
|
|
|
|
Contributions are what make the open source community such an amazing place to learn,
|
|
inspire, and create. Any contributions you make are **greatly appreciated**.
|
|
|
|
If you have a suggestion that would make this better, please fork the repo and create
|
|
a pull request. You can also simply open an issue with the tag "enhancement".
|
|
|
|
Don't forget to give the project a star! Thanks again!
|
|
|
|
1. Fork the Project
|
|
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
|
|
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
|
|
4. Push to the Branch (`git push origin feature/AmazingFeature`)
|
|
5. Open a Pull Request
|
|
|
|
## License
|
|
|
|
Distributed under the MIT License. See `LICENSE.md` for more information.
|