{"id":21324564,"url":"https://github.com/angydev/custom-3d","last_synced_at":"2026-02-25T06:07:14.886Z","repository":{"id":64988548,"uuid":"408721684","full_name":"AngyDev/custom-3D","owner":"AngyDev","description":"Editor 3D developed with React and Three.js","archived":false,"fork":false,"pushed_at":"2026-02-22T22:05:19.000Z","size":4118,"stargazers_count":13,"open_issues_count":5,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-02-23T02:59:15.501Z","etag":null,"topics":["javascript","nodejs","react","threejs"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AngyDev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-09-21T07:10:32.000Z","updated_at":"2026-01-16T11:41:27.000Z","dependencies_parsed_at":"2024-04-09T09:52:22.061Z","dependency_job_id":"b30aa79f-8f87-44e8-b64c-83d0e654deb5","html_url":"https://github.com/AngyDev/custom-3D","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/AngyDev/custom-3D","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AngyDev%2Fcustom-3D","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AngyDev%2Fcustom-3D/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AngyDev%2Fcustom-3D/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AngyDev%2Fcustom-3D/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AngyDev","download_url":"https://codeload.github.com/AngyDev/custom-3D/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AngyDev%2Fcustom-3D/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29811980,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-25T05:36:42.804Z","status":"ssl_error","status_checked_at":"2026-02-25T05:36:31.934Z","response_time":61,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["javascript","nodejs","react","threejs"],"created_at":"2024-11-21T20:35:01.479Z","updated_at":"2026-02-25T06:07:14.881Z","avatar_url":"https://github.com/AngyDev.png","language":"JavaScript","readme":"# Precise\nPrecise is a Web-Based 3D visualization and editing application for surgical simulation of tumor resection.\n\nThe authors wish to acknowledge the Tuscany Region (Italy) for co-funding the PRECISE project (BANDO RICERCA SALUTE 2018), which originated and made possible this research.\n\n\u003cdiv style=\" display: flex\"\u003e\n     \u003cdiv style=\"flex: 1; padding-right: 5px;\"\u003e\n          \u003cimg src=\"./img/projects.png\" width=\"400\"/\u003e\n     \u003c/div\u003e\n     \u003cdiv style=\"flex: 1; padding-left: 5px;\"\u003e\n          \u003cimg src=\"./img/editor.png\" width=\"400\"/\u003e\n     \u003c/div\u003e\n\u003c/div\u003e\n\n## Table of Contents\n\n\u003cdetails\u003e\n  \u003csummary\u003eTable of Contents\u003c/summary\u003e\n  \u003col\u003e\n    \u003cli\u003e\n        \u003ca href=\"#about-the-project\"\u003eAbout The Project\u003c/a\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\n      \u003ca href=\"#tech-stack\"\u003eTech stack\u003c/a\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\n      \u003ca href=\"#getting-started\"\u003eGetting Started\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#setup\"\u003eSetup\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n  \u003c/ol\u003e\n\u003c/details\u003e\n\n## About the project\nThe Precise application is part of the [Precise Project](https://www.preciseproject.it/). The idea originating the PRECISE project comes from the urgent need of researching, innovate, integrate and validate existing and novel 3D technologies in a new objective unified framework for enabling in the current clinical practice, patient-specific methods and tools for the training, the simulation, the intervention and the follow-up of personalized surgical approaches. Such technologies include CAD, Reverse Engineering, Additive Manufacturing, and Virtual and Augmented Reality. \u003cbr\u003e\nThe Precise application is developed to create a project, import STL files, and visualize those files as 3D images and it gives the possibility to edit and interact with these images through specialized tools. The application is compatible with tablets.\n\n**Related Article:** [SoftwareX - Precise: A web-based 3D visualization and manipulation application for surgical planning of tumour resection](https://www.sciencedirect.com/science/article/pii/S2352711023000948)\n\n\n## Tech stack\nThe application is divided into two parts, the client and the server. it is written completely in JavaScript. Following the technologies used to develop the application:\n\n**Frontend**\n\n- [Three.js](https://threejs.org/) - *JavaScript* library used to create and display animated 3D computer graphics in a web\n- [React](https://reactjs.org/) - *JavaScript* library for building user interface\n- [Vite](https://vitejs.dev/) - *JavaScript* build tool.\n\n**Backend**\n\n- [Node.JS](https://nodejs.org/it/) - An open source server environment\n- [Express](https://expressjs.com/it/) - A framework for Node.js web application\n- [Knex](https://knexjs.org/) - SQL Query Builder for Javascript\n- [Postgresql](https://www.postgresql.org/) - A relational database\n## Getting Started\n\n### Requirements\n- `node: \u003e=14`\n- `npm`\n\n### Setup\n\n[Frontend README](https://github.com/AngyDev/custom-3D/tree/main/client/README.md)\n\n[Backend README](https://github.com/AngyDev/custom-3D/tree/main/server/README.md)\n\nTo run client and server together use the following commands:\n- Add the `.env` file in server and client folder\n\nIn the custom-3D folder\n- Run the command `npm run install:all` \n- Run the command `npm run start:all`\n\n**Alternatively using Docker:**\n\n- Copy the example env and fill values (this repository gitignores `.env`):\n```bash\ncp .env.example .env\n```\n\nThen start services with docker-compose:\n- Build and start all services\n```bash\ndocker-compose up --build\n```\n\n- Seed/run server tasks\n```bash\ndocker-compose exec server npm run knex:dev -- migrate:latest\ndocker-compose exec server npm run seed\n```","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fangydev%2Fcustom-3d","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fangydev%2Fcustom-3d","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fangydev%2Fcustom-3d/lists"}