{"id":21974763,"url":"https://github.com/dopplr-labs/dopplr","last_synced_at":"2025-08-04T16:40:06.300Z","repository":{"id":54315244,"uuid":"301185228","full_name":"dopplr-labs/dopplr","owner":"dopplr-labs","description":"Dopplr is an analytical tool for creating beautiful dashboards from sql queries","archived":false,"fork":false,"pushed_at":"2024-01-01T07:13:52.000Z","size":5526,"stargazers_count":12,"open_issues_count":8,"forks_count":1,"subscribers_count":4,"default_branch":"develop","last_synced_at":"2025-04-28T15:48:16.841Z","etag":null,"topics":["analytics","dashboard","data-visualization","database","mysql","postgresql"],"latest_commit_sha":null,"homepage":"https://app.dopplr.in","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dopplr-labs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-10-04T17:22:19.000Z","updated_at":"2022-12-16T08:57:39.000Z","dependencies_parsed_at":"2024-11-29T15:48:18.742Z","dependency_job_id":"cfdef653-7f62-4002-a6e8-ab9ac73467df","html_url":"https://github.com/dopplr-labs/dopplr","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dopplr-labs/dopplr","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dopplr-labs%2Fdopplr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dopplr-labs%2Fdopplr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dopplr-labs%2Fdopplr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dopplr-labs%2Fdopplr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dopplr-labs","download_url":"https://codeload.github.com/dopplr-labs/dopplr/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dopplr-labs%2Fdopplr/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268723141,"owners_count":24296548,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-04T02:00:09.867Z","response_time":79,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["analytics","dashboard","data-visualization","database","mysql","postgresql"],"created_at":"2024-11-29T15:47:47.438Z","updated_at":"2025-08-04T16:40:06.230Z","avatar_url":"https://github.com/dopplr-labs.png","language":"TypeScript","readme":"\u003cimg src=\"./assets/logo.ico\" width=\"80px\" /\u003e\n\n# Dopplr\n\n**dopplr** is an analytical tool for creating beautiful dashboards using sql queries. It is built using `react` and `nestjs`.\n\n\u003cimg src=\"./assets/dopplr-snapshot.png\" width=\"100%\" /\u003e\n\n## Development Information\n\n### Requirements\n\n- [`docker`](https://docs.docker.com/engine/install/)\n- [`docker-compose`](https://docs.docker.com/compose/install/)\n\n### Technologies Used\n\n- [docker](https://www.docker.com/) for containers\n- [react](https://reactjs.org/) for development\n- [tailwindcss](https://tailwindcss.com/) for styling\n- [nestjs](https://nestjs.com/) for backend\n\n### Starting with development\n\nIf you are running the dockers for the first time (or anytime the `Dockerfile`\nor `docker-entrypoint.sh` changes), make sure to build all the containers using\n\n```sh\n[sudo] docker-compose up --build\n```\n\nLater on, to start all the 3 dockers (database, server and client) use\n\n```sh\n[sudo] docker-compose up\n```\n\nTo install any package in the `client`, start the `docker` shell\n\n```sh\n[sudo] docker-compose exec client sh\n```\n\nTo install any package in the `server`, start the `docker` shell\n\n```sh\n[sudo] docker-compose exec server sh\n```\n\nIt would open the shell and you can then install any dependency using `npm` or `yarn`\n\n### Creating sample database\n\nTo test the application, a sample database can be used, such as [northwind](https://github.com/pthom/northwind_psql). To restore the data use,\n\n- First download the database dump from [here](https://raw.githubusercontent.com/pthom/northwind_psql/master/northwind.sql).\n\n- Run the `docker` command to start `pqsl`\n\n```sh\ndocker exec -it dopplr_postgres_1 psql -U admin postgres\n```\n\n- In the `psql` terminal, enter the follwing to create a database and exit out of it.\n\n```psql\nCREATE DATABASE northwind;\n```\n\n- Restore the database from the dump using\n\n```sh\ncat /path/to/downloaded/northwind.sql | docker exec -i dopplr_postgres_1 psql -U admin northwind\n```\n\n### pgAdmin\n\nTo run `pgAdmin` explicitly, run the following command\n\n```sh\ndocker-compose up pgadmin\n```\n\n### Git Workflow\n\nWe use [gitflow workflow](https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow) for managing git. It is recommended to use [gitflow](https://github.com/nvie/gitflow/wiki/Installation) plugin.\n\nThe overall flow of Gitflow is:\n\n- A develop branch is created from master\n- A release branch is created from develop\n- Feature branches are created from develop\n- When a feature is complete it is merged into the develop branch\n- When the release branch is done it is merged into develop and master\n- If an issue in master is detected a hotfix branch is created from master\n- Once the hotfix is complete it is merged to both develop and master\n\n#### Feature branch\n\nCreate a feature branch when you are working on a feature such as implementation of a new UI component.\n\n```sh\ngit flow feature start feature_branch\n```\n\n#### Hotfix branch\n\nMaintenance or “hotfix” branches are used to quickly patch production releases.\n\n```sh\ngit flow hotfix start hotfix_branch\n```\n\n### Commits\n\n#### Commit Message\n\nWe're using conventional commits to ensure consistency of commit messages. We use [commitizen](https://github.com/commitizen/cz-cli) to write commit messages. It is very simple to use. Just install `commitizen` globally using\n\n```sh\nnpm install -g commitizen\n```\n\nand use `cz` instead of `git commit`. It would ask you fill the some fields and your commit message would be ready. You can find more information about it [here](https://github.com/commitizen/cz-cli#if-your-repo-is-commitizen-friendly).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdopplr-labs%2Fdopplr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdopplr-labs%2Fdopplr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdopplr-labs%2Fdopplr/lists"}