{"id":18320696,"url":"https://github.com/xtlsoft/paralab","last_synced_at":"2025-10-09T13:37:36.559Z","repository":{"id":214409054,"uuid":"693439855","full_name":"xtlsoft/paralab","owner":"xtlsoft","description":"paralab as is.","archived":false,"fork":false,"pushed_at":"2023-12-21T06:03:20.000Z","size":511,"stargazers_count":1,"open_issues_count":71,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-15T08:30:45.443Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/xtlsoft.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"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":"2023-09-19T03:19:52.000Z","updated_at":"2023-12-27T23:45:28.000Z","dependencies_parsed_at":null,"dependency_job_id":"82183ac1-5658-4530-a80a-ee3a6a0d80e1","html_url":"https://github.com/xtlsoft/paralab","commit_stats":null,"previous_names":["xtlsoft/paralab"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/xtlsoft/paralab","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xtlsoft%2Fparalab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xtlsoft%2Fparalab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xtlsoft%2Fparalab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xtlsoft%2Fparalab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xtlsoft","download_url":"https://codeload.github.com/xtlsoft/paralab/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xtlsoft%2Fparalab/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279001489,"owners_count":26083102,"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-10-09T02:00:07.460Z","response_time":59,"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":[],"created_at":"2024-11-05T18:17:16.146Z","updated_at":"2025-10-09T13:37:36.544Z","avatar_url":"https://github.com/xtlsoft.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Paralab\n\nParalab is a brand new HPC compete and play platform. It provides a full-featured cloud-native CI (Continuous Integration) module which is compatible with existing HPC ecosystem (e.g. Slurm). It also provides a web-based IDE (Integrated Development Environment) for users to develop and debug their codes. Paralab is designed to be a platform for HPC users to compete and play with each other. It is also a platform for HPC researchers to develop and test their new ideas.\n\n## Features\n\n- **Cloud-native CI**: Paralab provides a full-featured cloud-native CI module which is compatible with existing HPC ecosystem (e.g. Slurm). It supports both static and dynamic analysis. It also supports both unit test and integration test. It can be easily integrated with existing CI tools (e.g. Jenkins, Gitlab CI, etc.) to provide a better CI experience for HPC users.\n- **Web-based IDE**: Paralab provides a web-based IDE for users to develop and debug their codes. It supports both C/C++ and Fortran. It also supports both serial and parallel programs. It can be easily integrated with existing IDEs (e.g. VSCode, Eclipse, etc.) to provide a better IDE experience for HPC users.\n- **Compete and play**: Paralab is designed to be a platform for HPC users to compete and play with each other. It is also a platform for HPC researchers to develop and test their new ideas.\n\n## About this Monorepo\n\nThis is the monorepo of Paralab. It contains the following sub-projects:\n\n- ui\n- bizserver\n- judger\n- paraci\n\n## Development\n\n### Prerequisites\n\n- [Docker](https://docs.docker.com/get-docker/)\n- [Docker Compose](https://docs.docker.com/compose/install/)\n- [Node.js](https://nodejs.org/en/download/)\n- [Golang](https://golang.org/doc/install)\n- [Etcd](https://etcd.io)\n- [MinIO](https://min.io/download)\n- [nsq](https://nsq.io/deployment/installing.html)\n- [Just](https://just.systems)\n\n### Start PostgreSQL and Redis\n\nWe've prepares a docker compose file for you to start PostgreSQL and Redis in one click. You can start them by running the following command under the root directory of this monorepo:\n\n```bash\ndocker-compose -f docker-compose.dev.yml up -d\n```\n\nThis starts a PostgreSQL instance and a Redis instance. You can use the following command to stop them:\n\n```bash\ndocker-compose -f docker-compose.dev.yml down\n```\n\n### Launch the Bizserver\n\nIf you are launching the bizserver for the first time, you need to copy the `.env.example` file to `.env` and modify the environment variables in it.\n\nTo start the bizserver, navigate to the `bizserver` directory and run the following command:\n\n```bash\nset -o allexport \u0026\u0026 source ../../.env \u0026\u0026 set +o allexport\t# This exports the environment variables in the .env file. Copied from https://stackoverflow.com/a/30969768/16569836\nnpm run start:dev\n```\n\n### Launch the UI\n\nNavigate to `packages/ui` and run the following command:\n\n```bash\nexport PROXY_BIZSERVER_ADDR=http://localhost:3000\t# This sets the address of the bizserver. All requests to /api will be redirected to http://localhost:3000/api. You can change it to your own bizserver address.\nnpm run dev\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxtlsoft%2Fparalab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxtlsoft%2Fparalab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxtlsoft%2Fparalab/lists"}