We’re excited that you’re interested in contributing! 🎉
The OpenLake Project is built with Next.js and we welcome contributions of all kinds — code, documentation, testing, design, and new ideas.
Please read this guide before contributing to ensure smooth collaboration.
- Join our community on Discord for questions, discussions, and updates.
- Check open issues and discussions before starting new work.
Click the Fork button (top right) to create your copy of the repo.
git clone https://github.com/<your-username>/<repo-name>.git
cd <repo-name>npm installCreate a .env file in the root directory.
Refer to .env.example for required keys:
NEXT_PUBLIC_SUPABASE_URL=
NEXT_PUBLIC_SUPABASE_ANON_KEY=
NEXT_PUBLIC_SITE_SALT=
SUPABASE_SERVICE_ROLE_KEY=
- NEXT_PUBLIC_SUPABASE_URL
This is the API URL of your Supabase project. You can find it in the Supabase Dashboard → Project Settings → API → Project URL.
- NEXT_PUBLIC_SUPABASE_ANON_KEY
This is the public anon key (safe to expose on frontend). Found in Supabase Dashboard → Project Settings → API → Project API Keys → anon public.
- SUPABASE_SERVICE_ROLE_KEY
This is the service_role key ( never expose on frontend).Found in Supabase Dashboard → Project Settings → API → Project API Keys → service_role. This is used for server-side tasks like inserting secure data, row-level policies, etc.
- NEXT_PUBLIC_SITE_SALT
This one is not provided by Supabase. It’s usually a random string (for hashing, encryption, or unique IDs).
run on bash
openssl rand -base64 32npm run devThe app will be available at http://localhost:3000.
-
Create a new branch for your work:
git checkout -b feature/your-feature-name
-
Make your changes (code, docs, tests, etc.).
-
Commit with a clear message:
git commit -m "feat: add login component" -
Push to your fork:
git push origin feature/your-feature-name
-
Open a Pull Request (PR):
- Go to the original repo and click New Pull Request.
- Provide a meaningful title and description.
- Link the issue you’re addressing, if any.
- Follow existing code style and structure.
- Write meaningful commit messages.
- Add tests when applicable.
- Update documentation if you change functionality.
- Be respectful and collaborative.
- All contributions — code, documentation, bug fixes, or design improvements — are welcome!
- Issues labeled
good first issueare great entry points for beginners. - Make sure your PRs are high-quality and meaningful.
By participating, you agree to uphold our values of respect, inclusion, and collaboration.