Giter VIP home page Giter VIP logo

manyfold3d / manyfold Goto Github PK

View Code? Open in Web Editor NEW
652.0 13.0 45.0 8.44 MB

A self-hosted digital asset manager for 3d print files. Previously named "VanDAM"

Home Page: https://manyfold.app

License: MIT License

Ruby 66.95% JavaScript 6.65% HTML 20.27% SCSS 0.99% Dockerfile 0.72% Shell 0.15% TypeScript 4.24% Procfile 0.03%
dam stl-files stl obj-files 3d-printing self-hosted rails6 three-js digital-asset-management van-dam

manyfold's People

Contributors

andreaj42 avatar aneurinprice avatar beniroquai avatar chryton avatar daxx367 avatar dependabot[bot] avatar erbridge avatar floppy avatar imgbotapp avatar james-harder avatar ksuquix avatar matthewbadeau avatar mattpage avatar mcsgroi avatar neographophobic avatar philstenning avatar rukongai avatar sammcj avatar sweep-ai[bot] avatar toasteruwu avatar xior112 avatar zwiebeltvde avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

manyfold's Issues

Feature Request - Unraid support

Would it be possible to create an Unraid docker template for this to simplify the installation? I'm not sure what would be required (sorry).

Rescaling

Many miniature proxies are the incorrect scale. It would be great to be able to store a scale factor for a model or part at least as metadata, and perhaps even rescale the files themselves to fix the models.

Tag editing

Add, remove, and create new tags manually.

Define a standard for file/folder structure

So that one day we can auto-organise the files on disk, we first need a standard, or a few options for standards.

We need to decide:

  • How to name model folders
  • How to name part files
  • How to structure folders within a model
  • How to structure folders within a library, that contain models

I would love to get some examples from the community on how they structure their folders.

Previews not visible behind cloudflare proxying

Hi guys,

I'm having an issue where the stl previews don't seem to be rendering correctly, they just show as a grey box as seen below.

image

I can download the files fine and the .png file preview seems to work. the files inside the container are root:root 775.
Sometimes when i move from page to page i will see the stl files render for a split second but them disappear again. could it be maybe something different about my stl files thats causing the renderer to crash? they are all exported from tinkercad if that makes any different? here's an example stl
wyse_bottom.stl.zip

checked the /logs URL but don't see any specific errors that stand out
logs.zip

running from the latest container image on ubuntu 20.04.03 lts, 5.4.0
docker ver 20.10.2:2291f61

my compose

version: "3"
services:
  app:
    image: ghcr.io/floppy/van_dam:latest
    container_name: 3dp
    ports:
      - 3214:3214
    volumes:
      - "/var/lib/docker/containers/3dp/libraries:/libraries"
    environment:
      DATABASE_URL: postgresql://username:[email protected]/van_dam?pool=5
      SECRET_KEY_BASE: 
      GRID_SIZE: 260
    depends_on:
      - db
      - redis

    networks:
      new-macvlan-network:
        ipv4_address: 172.16.1.75

  db:
    image: postgres:13
    container_name: 3dp_postgres
    volumes:
       - "/var/lib/docker/containers/3dp-db/data:/var/lib/postgresql/data"
    environment:
      POSTGRES_USER: username
      POSTGRES_PASSWORD: password
    ports:
      - 5432:5432
    restart: always
    networks:
      new-macvlan-network:
        ipv4_address: 172.16.1.76

  redis:
    image: redis:6
    container_name: 3dp_redis
    restart: on-failure
    networks:
      new-macvlan-network:
        ipv4_address: 172.16.1.77

volumes:
  3dp_db_data:
networks:
  new-macvlan-network:
    external:
      name: new-macvlan-network

Any other logs I can look at to help narrow down the issue? or things to test out?
Thanks.

Feature Request: Upload support

I was looking for a hosting solution to share stls for me and my friends of our local printing-group and just found this awesome peace of software and set it up immediately. It's realy great!

But i got a big request: Is it possible to add multi-user support (or one password protected account) with the possibility to upload files? I then could it make "public" to my friends and share the credentials.

We would appreciate it very much!

Greetings and thank you so much for sharing your work!

Rescan not finding files?

I have a library setup called "mirror" and within this path on the disk I have several sub-folders which I use like categories. I use this to differentiate between STLs I have created, and STLs I didn't create, but I'm mirroring incase they disappear from the original source.

I went to add a new STL file to one of the subfolders, and I pressed the "Rescan" button in the interface, but it never adds the new file, the permissions are the same, but it never appears.

Screen Shot 2022-05-02 at 12 26 04 PM

Screen Shot 2022-05-02 at 12 25 33 PM

Collection sync

Given #486, we could add the ability to keep an entire collection in sync with local disk. You go to Cults3d, add something to a collection, or like it, and bingo, it's automatically downloaded and added into VanDAM.

Nested collections

Currently, a library is a single list of models. It might be good to group models into collections, which then are part of libraries or other collections. In fact, a Library just becomes a collection.

Show STLs inside zip archives

It would be really nice to show STLs while they are inside a Zip archive (or any other archive for that matter, but mostly will be in .zip, at least for me).

Bit of background to better understand the request / feature (I hope):

I'm creating and organizing a repository of STLs files, currently uploaded and hosted through Nextcloud, but the files themselves are on a shared network drive.
Most of these are not singular files but instead an archive of multiple STLs.

Would it be possible to show (in this case without either editing or else, just showing the preview) of the files inside the archive?

Thanks!

Exclude certain directories

At the moment there is no way to exclude certain directories, if you use a have a folder you put all junk files in, it would be useful to be able to exclude it from scan/rescan.
Also there are certain folders you really don't want to scan: node_modules, pycache , log etc, this would speed up scanning too.
I know you can just create more entry points further down the directory tree, but being able to fine tune a rescan by excluding directories you know are not ever needing to be touched would be a nice addition.

app container fails in docker

The app container fails in docker. I'm using docker in portainer.
The db and redis containers both spin up fine and wait for connections.

The log file from the app container

Preparing database...
bundler: command not found: rails
Install missing gem executables with bundle install

2022-03-29 15_21_59-Portainer

TODO list

The ability to keep a list of things you want to print.

Detailed view is low resolution

This has always been the case, but for some reason the detailed view rendering is low resolution; implies something wrong in the calculations in the renderer setup, probably?

Include licensing information

It would be good to be able to store license metadata perhaps? At the very least, commercial vs free.

NLNet Milestone 1.4

Feature request: warn when a library path doesn't exist

At the moment, if you use a library path that doesn't exist on the file system, it silently fails and behaves as if it's an empty library. I'd have liked it to either validate the path when I created the library or show some sort of warning if I open a library that doesn't have a corresponding path.

Convert to preferred file format

For example, I'd like to have everything in 3MF - it's smaller, better for 3d printing, enforces manifold geometry, etc. It would be great to be able to standardise files into a single format.

TODO:

NLNet Milestone 1.8

Unable to load more than 15 thumbnails per library folder in Chrome/Safari - Too many WebGL contexts

Hi,

If you have more than 15 or 16 objects in your library, when you scroll down past the 15th or 16th preview it will start flushing out the previews from previously rendered thumbnails as seen below

image

Get this in the console;

image

This only happens on chrome and safari, firefox can render them all fine.
I can add an argument into the chrome shortcut to allow for more contexts that fixes the problem as seen this post - https://bugs.chromium.org/p/chromium/issues/detail?id=771792
OS: macOS 12.1 + Windows 20H2:19042
Browser: Chrome Version 99.0.4844.84 + Safari Version 15.2 (17612.3.6.1.6)

Van_dam is a great app, thanks for sharing it.

Proposal - Make pagination the default

On my mac, continuous scroll starts to lock up Chrome if I scroll through more than a couple dozen models.

Threejs also emits a lot of warnings like this:

three.module.js:20481 WARNING: Too many active WebGL contexts. Oldest context will be lost.

If we defaulted to pagination we could avoid this but still provide the option for continuous scroll to those that want it.
This seems to me like a more usable default setup, but what do you think @Floppy ?

Feature request: queue new files to prompt info adding

Hi.
I was thinking it would be awesome if this software would create a queue of newly imported stl-files and then prompts a user to fill in possible information such as tags etc and perhaps would then move files to folders accordingly. This way it would be easy to import new files and keep the library tidy.

Model Synchronisation

Add the ability to synchronise local files with model sources like Thingiverse, Cults3d, etc. If the remote model changes, automatically pull in the change to the local copy.

Rescan resets "Set as preview"

I have a large intricate model which gets picked up as the default preview, so I manually change it to a different model, but when re-scanning, this gets lost and reset.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.