[](https://github.com/lukevella/rallly/actions)
[](https://www.gnu.org/licenses/agpl-3.0)
[](https://www.paypal.com/donate/?hosted_button_id=7QXP2CUBLY88E)

Self-hostable doodle poll alternative. Find the best date for a meeting with your colleagues or friends without the back and forth emails.
Built with [Next.js](https://github.com/vercel/next.js/), [Prisma](https://github.com/prisma/prisma), [tRPC](https://github.com/trpc/trpc) & [TailwindCSS](https://github.com/tailwindlabs/tailwindcss)
## 🐳 Quickstart with docker
_For running in a production environment_
Clone this repo and change directory to the root of the repository.
```bash
git clone https://github.com/lukevella/rallly.git
cd rallly
```
Once inside the directory create a `.env` file where you can set your environment variables. There is a `sample.env` that you can use as a reference.
```bash
cp sample.env .env
```
_See [configuration](#%EF%B8%8F-configuration) to see what parameters are availble._
Build and run with `docker-compose`
```bash
docker-compose up -d
```
Go to [http://localhost:3000](http://localhost:3000)
## 💻 Running locally
Clone this repo and change directory to the root of the repository.
```bash
git clone https://github.com/lukevella/rallly.git
cd rallly
```
Copy the sample `.env` file then open it and set the variables.
```bash
cp sample.env .env
```
_See [configuration](#%EF%B8%8F-configuration) to see what parameters are availble._
Install dependencies
```
yarn
```
Next we need to run the database migrations to create our tables
```
yarn prisma migrate deploy
```
Start the Next.js server
```
# For development
yarn dev
# For production
yarn build
yarn start
```
## ⚙️ Configuration
| Parameter | Default | Description |
| -------------------- | ---------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| NEXT_PUBLIC_BASE_URL | http://localhost:3000 | The hosting url of the server, used for creating links and making api calls from the client. |
| DATABASE_URL | postgres://postgres:postgres@rallly_db:5432/db | A postgres database URL. Leave out if using the docker-compose file since it will spin up and connect to its own database instance. |
| SECRET_PASSWORD | - | A long string (minimum 32 characters) that is used to encrypt session data. |
| SUPPORT_EMAIL | - | An email address that will appear as the FROM email for all emails being sent out. |
| SMTP_HOST | - | Host name of your SMTP server |
| SMTP_PORT | - | Port of your SMTP server |
| SMTP_SECURE | false | Set to "true" if SSL is enabled for your SMTP connection |
| SMTP_USER | - | Username to use for your SMTP connection |
| SMTP_PWD | - | Password to use for your SMTP connection |
## 👨💻 Contributors
If you would like to contribute to the development of the project please reach out first before spending significant time on it.
## 👮♂️ License
Rallly is open-source under the GNU Affero General Public License Version 3 (AGPLv3) or any later version. See [LICENSE](LICENSE) for more detail.
## 🙏 Sponsors
Big thanks to these folks for sponsoring the project!
And thanks to these companies for providing their services to host and run [rallly.co](https://rallly.co).