PySdfScad VS pothos

Compare PySdfScad vs pothos and see what are their differences.

PySdfScad

Openscad interpretor written in python and using signed-distance-functions (by traverseda)

pothos

Pothos GraphQL is library for creating GraphQL schemas in typescript using a strongly typed code first approach (by hayes)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
PySdfScad pothos
6 24
16 2,236
- -
10.0 9.2
about 1 year ago 9 days ago
OpenSCAD TypeScript
- ISC License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

PySdfScad

Posts with mentions or reviews of PySdfScad. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-02-19.
  • CAD Sketcher, free and open-source project bringing CAD like tools to Blender3d
    8 projects | news.ycombinator.com | 19 Feb 2023
    > To clarify, can this method be used as a fully functional replacement to BREP for a mechanical (machine design) CAD system?

    I think so, but there are some open problems. Also it depends on the senior people. Inigo Quilez is a world class expert in this domain, and for the most part we're copying his work, get him on board and you'll be golden.

    Fundamentally it makes sense, BREP is about representing boundaries and you can definitely use SDFs to represent the area under a boundary (infinite SDFs are possible, although obviously you can't turn them in to a mesh). Enclose a volume with boundaries and you can mesh that out just fine. A bit different from CSG-based SDFs, but entirely plausible.

    >what approach would you recommend?

    If I was to do this I'd take the constraint solver from solvespace (same one used in this post) and start using it to generate SDFs. At that point you're already 80% of the way to your end goal.

    I mean if I was personally to do this I'd start by making a system that implements everything openscad can do, try to get some funding going, and than add in a solvespace based workbench for doing 2D cad that you can import into an openscad-ish language. You can see my efforts here: https://github.com/traverseda/PySdfScad

    That's tackling it from a different angle than BREP though. I think that openscad but better is a surprisingly viable thing though, especially if you use it to do things like generate the gears/screws/whatever you import into your BREP based CAD project. Use scriptable CAD as the underpinning for more advances CAD.

    > How long would you estimate it would take for three full time senior developers to get a useful system out?

    Well define "useful"? Honestly I think you can get 80% done in under a month. I built the first pysdfscad in a week or two and replicated 80% of openscad's features. Fogleman built the library I used for pysdfscad in under a month.

    I'd expect something pretty good in under a year at that kind of rate. There would be some outstanding problems, like it would be a challenge to figure out how to apply a fillet/chamfer to an edge, but not an insurmountable challenge. Geometry import is another place where you're going to spend a lot of time/money but is very important.

    So let's say two or three years with three very competent seniors working on it to get a pretty good CAD program, with a GUI.

  • I created an openscad interpreter that supports chamfers and fillets
    1 project | /r/3Dprinting | 17 Feb 2023
  • Show HN: PySdfScad,an openSCAD interpretor using signed-distance-functions
    1 project | news.ycombinator.com | 15 Feb 2023
  • Show HN: PySdfScad, my early work on an openscad interpretor with fillets
    1 project | news.ycombinator.com | 10 Feb 2023
  • Ask HN: What would be your stack if you are building an MVP today?
    47 projects | news.ycombinator.com | 26 Jan 2023
    Depends on exactly what I'm making, the answer is probably different if I'm making like a chat app or something more data centric.

    For something really minimal, an internal tool, I'd probably use grist. Grist is a "no code" spreadsheet program that is open source and works on a relational database. I just threw together an inventory management system for my weekly dnd group in a few minutes, and I've shared it with the group. I find the relational mindset grist uses a lot easier to reason about than traditional spreadsheets.

    The next level up would be django with htmx. Very minimal javascript, I might embed a javascript "applet" like a map into it if needed. This covers 99% of data driven apps.

    If I wanted to build something like say discord I'd probably use a pretty similar stack for the MVP, but with server-sent-events (htmx with server sent events is nice) and web components for more complicated interactions. That's probably why I'm not in charge for building complicated single page webapps with a lot of interdependent state though. I maintain this approach should work but haven't had a real chance to test it in the wild.

    If I'm writing CAD software I'm probably going with QT/python/(numpy/jax/compute-shaders/sympy/etc). Python might not be the fastest, but when you're accelerating it with one of those machine learning libraries it can be really powerful. I've actually been working on something CAD-ish using that stack here: https://github.com/traverseda/PySdfScad

    That's probably roughly the same stack I'd use for things like computer vision, machine learning, etc. Ironically anything where performance is important I'd probably choose python over a compiled language.

    Mind you the QT python documentation is really not great, for a really minimal MVP I might swap qt out for pyimgui which is amazing for rapid prototyping but is going to be a real pain to do things like syntax highlight a text editor or embed HTML content.

    Embedded electronics? Probably micropython on an ESP32 for an MVP. A REPL on your microcontroller is really nice. Robotics I'd probably use buildroot to build a custom linux distro.

    I don't have much experience with mobile development, so I'd probably end up using QT with python and pyqtdeploy, but that's not an approach I'd recommend anyone else follow. I'm keeping an eye on Tauri in that space, although I really wish they made it easier to bundle in things that aren't single page javascript web apps (like a python application).

    So yeah, mostly I'd use python. Master of some trades, jack of a bunch of others, it's flexible and powerful enough that I feel happy to have specialized in it, even if deploying apps to end users can be finicky and annoying. I'd avoid the javascript ecosystem as much as possible, and where I'd have to use javascript I'd prefer to make self-contained web components.

  • GitHub - traverseda/PySdfScad: Openscad interpretor written in python and using signed-distance-functions
    2 projects | /r/openscad | 16 Jan 2023

pothos

Posts with mentions or reviews of pothos. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-01-26.
  • When Do You Use Global Types in Your Project?
    1 project | /r/typescript | 26 Mar 2023
    A project I maintain Pothos uses a global namespace with a bunch of interfaces to allow plugins to extend interfaces defined in core or other plugins. This allows plugins to add new options and methods to objects and classes without the other packages needing to know anything about them.
  • Full-Stack GraphQL-APIs in TypeScript without codegen
    1 project | /r/nextjs | 16 Mar 2023
    I noticed this being shared around on Twitter the other day - pretty handy, as I'm currently trying to architect a similar experience for my job using Pathos and graphql-codegen.
  • Ask HN: What would be your stack if you are building an MVP today?
    47 projects | news.ycombinator.com | 26 Jan 2023
    - tRPC

    But I'd likely throw out Clerk a cheaper option:

    - Supertokens, and also since Supertokens is easy (lots of enthusiastic reports about it), has a managed solution (which is cheaper than the alternatives), is secure and scalable (rotating refresh tokens with JWTs), open source, has magic links, and the architecture of Supertokens would allow me to simply and quickly eject to self-hosting it if/when I'd eventually need to (if the app ever reaches mass-market scale).

    And I might throw out tRPC for the equivalent GraphQL experience (esp. if business strategy dictates I need a 3rd party API):

    - GQty.dev on the client, for inferred queries/mutations. For rapid dev speed. Simple code example: https://gqty.dev/docs/intro Then move to URQL or Relay at scale, or just skip GQty and go with URQL from the start (if scalability trumps dev speed).

    - Pothos http://pothos-graphql.dev on the server, for auto building the schema from your TS code (aka. code-first). Better than Nexus (e.g. Max Stoiber moved from Nexus to Pothos on his Bedrock starter template because Pothos is best in class: https://bedrock.mxstbr.com/tools/pothos/ ).

    And I might throw out NextJS (Webpack) for the equivalent experience in Vite:

    - vite-plugin-ssr, since both architectural control (libraries > frameworks) and Vite rocks. I'd likely then have to make solito-vite https://github.com/nandorojo/solito/discussions/157 to have a unified navigation between React Native and Web, but Solito is allegely tiny, so recreating it should be doable.

    (If doing all of these replacements, maybe starting from scratch would be easier than modifying create-universal-app ... That said, I think if someone made a starter repo with the above choices it would be a real killer!)

    Then I'd also likely use:

    - Vercel (and try their Edge Functions, for a serverless sweet v8 isolates experience without slow cold starts), or maybe Cloudflare Workers (cheaper, slightly more hassle?) for hosting.

    - Planetscale or Supabase for the DB. (Not brave enough to try EdgeDB or SurrealDB just yet, though EdgeDB is close..) Unless I had a specific use case where a more specialized/optimized DB would make sense.

    This stack should stick even post-MVP, as it's not only optimized for a solo developer but for scalability.

  • Real World Rust Backend For Web APIs (GraphQL / REST)
    8 projects | /r/rust | 24 Dec 2022
    Have you used Pothos? It's a way to make GraphQL schemas in TypeScript, in a type-safe way. So the creator of Prisma Client Rust is thinking about making a Pothos-style API based on the t builder pattern:
  • What to use with Apollo Server v4 to achieve type-safety?
    3 projects | /r/graphql | 19 Dec 2022
    I would recommend Pothos (https://pothos-graphql.dev/) as a more modern alternative to typegraphql or nexus.
  • Apollo Layoffs
    6 projects | news.ycombinator.com | 15 Dec 2022
    Depends on language, I've build GraphQL servers in a few, though mostly JavaScript and Python. For Python I used to use Graphene, these days I use Strawberry.

    For JavaScript, I originally used graphql-js and express-graphql, as these were the original libraries and I was a literal day 1 adopter. All the libraries are essentially just wrappers around graphql-js, so it's still viable to use directly. But for schema-building I now use Pothos (https://pothos-graphql.dev/), I'd probably use graphql-helix as the http layer (https://github.com/contra/graphql-helix).

  • Achieving end-to-end type safety in a modern JS GraphQL stack
    9 projects | dev.to | 24 Nov 2022
    Pothos is a breeze of fresh air when it comes to building GraphQL APIs. It is a library that lets you write code-first GraphQL APIs with an emphasis on pluggability and type safety. And it has an awesome Prisma integration! (I am genuinely excited about this one, it makes my life so much easier.)
  • Pothos – Convert TypeScript to GraphQL Schema
    1 project | news.ycombinator.com | 27 Sep 2022
  • How to Build a Type-safe GraphQL API using Pothos and Kysely
    5 projects | dev.to | 29 Aug 2022
    In today's article we are going to create a GraphQL api using the Koa framework together with the GraphQL Yoga library and Pothos. In addition, we will use Kysely, which is a query builder entirely written in TypeScript.
  • Extreme Explorations of TypeScript's Type System
    15 projects | news.ycombinator.com | 27 Jun 2022
    If you're a GraphQL developer, Pothos is the best example - all your user-defined types just fits in it like a glove 99% of the time. It definitely makes the most use of TS generics.

    https://pothos-graphql.dev/

    (I'm a bit sleepy, so this is the main one I can think of at the moment that I really enjoy using.)

What are some alternatives?

When comparing PySdfScad and pothos you can also consider the following projects:

manifold - Geometry library for topological robustness

nexus - Code-First, Type-Safe, GraphQL Schema Construction

SolveSpace-Daily-Engineering - app4soft's engineering experiments in SolveSpace — FLOSS parametric 2D/3D CAD & CAE (.slvs files repository) Follow ➡ https://twitter.com/search?q=solvespace+from%3Aapp4soft

graphql-upload - Middleware and an Upload scalar to add support for GraphQL multipart requests (file uploads via queries and mutations) to various Node.js GraphQL servers.

supabase - The open source Firebase alternative.

TypeGraphQL - Create GraphQL schema and resolvers with TypeScript, using classes and decorators!

deno - A modern runtime for JavaScript and TypeScript.

graphql-ws - Coherent, zero-dependency, lazy, simple, GraphQL over WebSocket Protocol compliant server and client.

jetstream - Tailwind scaffolding for the Laravel framework.

graphql-helix - A highly evolved GraphQL HTTP Server 🧬

redwood - The App Framework for Startups

gqtx - Code-first Typescript GraphQL Server without codegen or metaprogramming