diff --git a/README.md b/README.md index 67ceba5..d2e2da7 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,93 @@ -# keep-active +

+ + + Appcrons + + Appcrons + +

-Keep-Active is an application mean't to maintain backend severs hosted on platforms like render.com, to keep running all the time without being spined. -This happens by making http requests to backend server basing on a specific time interval +
+

+ Appcrons optimizes the uptime of your free backend instance on Render by sending automated requests, preventing it from shutting down due to inactivity. +

+
+ +## Documentation + +For full documentation, visit [appcrons.netlify.app](https://appcrons.netlify.app). + +## Installation + +To install the Appcrons backend repo locally, follow these steps: + +### Prerequisites + +- Ensure you have **Golang 1.23** installed. You can download it from [go.dev/doc/install](https://go.dev/doc/install). +- Ensure you have **Postgresql 15** installed. You can download it from [postgresql.org/download](https://www.postgresql.org/download/). +- Ensure you have **Redis** installed. You can download it from [redis.io](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/). + +- Ensure your computer system supports **Makefiles** . If you are windows, follow this guide [Run Makefile on windows](https://medium.com/@samsorrahman/how-to-run-a-makefile-in-windows-b4d115d7c516). + +### Steps + +1. **Clone the repository**: + + ```sh + https://github.com/Tibz-Dankan/appcrons.git + + cd appcrons + ``` + +1. **Install packages**: + + ```sh + make install + + ``` + +1. **Set up environmental variables**: + +| Variable | Type | Description | +| ------------------- | ------ | -------------------------------------------- | +| `APPCRONS_TEST_DSN` | string | DSN pointing to test postgres db | +| `APPCRONS_DEV_DSN` | string | DSN pointing to development postgres db | +| `APPCRONS_STAG_DSN` | string | DSN pointing to staging or CI/CD postgres db | +| `APPCRONS_PROD_DSN` | string | DSN pointing to production postgres db | +| `REDIS_URL` | string | URL pointing to your redis instance | +| `JWT_SECRET` | string | key used to sign JWT tokens | + +create .env file in the root project directory and add all these variables + +_Example_ + +```sh + +APPCRONS_DEV_DSN="host=localhost user=postgres password= dbname= port= sslmode=disable" + +``` + +4. **Start the application**: + + ```sh + + make run + ``` + +5. **Run tests in devlopment**: + + ```sh + + make test + + ``` + +6. **Run tests in staging**: + + ```sh + + make stage + + ``` + +> Note: The application server port is **8080** diff --git a/internal/assets/logo.png b/internal/assets/logo.png new file mode 100644 index 0000000..9be6e95 Binary files /dev/null and b/internal/assets/logo.png differ