Kukkee
Kukkee copied to clipboard
Meeting poll tool. Bring people together, at the right time!
Self-hosting
I'm happy that you've decided to get your own Kukkee up and running!
Docker
Coming soon!
Manual
The manual guide is divided into two sections: database and deployment.
Database
Kukkee uses MongoDB, hence you would need a MongoDB server hosted somewhere.
MongoDB Atlas
In case you don't have a hosted MongoDB server, you can get started with MongoDB Atlas for free. If you're planning to use Vercel to deploy your own Kukkee, you must add all IP addresses (0.0.0.0/0) to the IP access list of your Atlas cluster since it is not possible to determine the IP addresses of Vercel deployments.
Deployment
Kukkee is built with Next.js. Hence, you would need to deploy Kukkee to a platform that supports Next.js.
For example, Vercel, AWS EC2 or a DigitalOcean Droplet.
Vercel
In case you don't have a platform already, you can get started with Vercel for free.
- Fork this repo to your own GitHub account and then clone it.
- Go to https://vercel.com/dashboard
- Create a new project
- Import your forked git repository
- Set the environment variables (according to the instructions in .env.example)
- Deploy
Contributing
I'm thrilled that you'd like to contribute to Kukkee!
Issues and PRs
If you have suggestions for how this project could be improved, or want to report a bug, open an issue! I'd love all and any contributions. If you have questions, too, I'd love to hear them. Start a new discussion on GitHub!
I'd also love PRs. If you're thinking of a large PR, please open up an issue first to discuss your proposed changes with a project maintainer!
Development
First, make sure you have Node.js and MongoDB installed. Then, to develop locally:
-
Fork this repo to your own GitHub account and then clone it.
git clone https://github.com/<your-username>/Kukkee.git
-
Go to the project folder
cd Kukkee
-
Create a new branch:
git checkout -b MY_BRANCH_NAME
-
Install the dependencies with:
npm i
-
Copy
.env.example
to.env
cp .env.example .env
-
Set the env variables according to the instructions in the .env file
-
Start developing and watch for code changes:
npm run dev
Building
You can build the project with:
npm run build
Please be sure that you can make a full production build before pushing code.
Submitting a pull request
- Fork and clone the repository.
- Configure and install the dependencies.
- Make sure the tests and linters pass on your machine.
- Create a new branch.
- Make your change, add tests, and make sure the tests still pass.
- Push to your fork and open a pull request against the
main
branch. - Pat your self on the back and wait for your pull request to be reviewed and merged.
Here are a few things you can do that will increase the likelihood of your PR being accepted:
- Keep your changes as focused as possible. If there are multiple changes you would like to make that are not dependent upon each other, consider submitting them as separate pull requests.
- Write a good commit message.
"WIP" PRs are also welcome to get feedback early on, or if there is something blocking you.
Acknowledgements
Special thanks to these amazing projects which help power Kukkee:
License
Kukkee is distributed under the MIT License.