VSCode extension ・ Backend API ・ Frontend dashboard ・ Documentation
This platform is meant for maintainers to curate the guidelines for their contributors.
You can run the API containers using this command:
make run
You can now navigate to http://localhost:3000
to interact with the Next JS app.
In order to stop the service, run:
make stop
- Docker
- Docker compose
- Make (optional)
The project was designed so that everything runs with Docker orchestration (standalone virtual environment), so you won't need to install any additional libraries.
In order to run the project, you will need to specific some information, which can be done using a .env
file.
This file will have to hold the following information:
NEXT_PUBLIC_API_URL
: the endpoint of the Quack API you're usingNEXT_PUBLIC_REDIRECT_URI
: the URL the OAuth app redirects to
Optionally, the following information can be added:
NEXT_PUBLIC_POSTHOG_KEY
: the project key of your PostHog service, for product analytics
So your .env
file should look like something similar to:
NEXT_PUBLIC_API_URL=http://your-quack-api-host.com/api/v1
NEXT_PUBLIC_REDIRECT_URI=http://localhost:3000/
NEXT_PUBLIC_POSTHOG_KEY=phc_my_api_key
The file should be placed at the root folder of your local copy of the project.
The ultimate goal for this platform is to offer a smooth maintenance experience for any project. The development efforts will be focused on achieving the following milestones:
- ✏️ Get the possibility to add/edit/delete/reorder guidelines for your projects
- 👁️🗨️ Automatically parse & interpret guidelines from repository content, issues and PRs
- 📢 Have conditional guidelines and fork guideline flows from other public projects
Quack is dedicated to transform the contribution workflow of developers. Developer tools are among the most difficult types of product to build and we need to better understand where to allocate/reduce our efforts over time.
Since we want to keep providing free options for our services in the future, and since we don't want to rely on advertising, we humbly ask you to share limited usage data so that we can improve the products and services that we offer.
For each event, here is the largest amount of data we collect:
- Event identifiers: the event type (e.g.
fetch-guidelines
) and potentially the scope (e.g. the repository) - User information: depending on the telemetry setting, either your GitHub username or an anonymized UUID specific to you (created when you first activate the extension).
And since the extension is open source, you can navigate the codebase to verify the above information if you feel like it ;)
This data collection is done using Posthog and can be:
- 😟 anonymized: by default we'll identify your actions with your GitHub username. We'll keep an option to prevent that identification, as we understand it's important for developers to have this choice.
- 😭 disabled: like in most VSCode extensions, you have the ability to disable telemetry completely.
Copyright (C) 2023, Quack AI.
This program is licensed under the Apache License 2.0. See LICENSE or go to https://www.apache.org/licenses/LICENSE-2.0 for full license details.
Feeling like improving the interface? Or perhaps submitting a new feature idea? Any sort of contribution is greatly appreciated!
You can find a short guide in CONTRIBUTING
to help grow this project! And if you're interested, you can join us on