Open-source projects categorized as Optics Edit details

Top 23 Optic Open-Source Projects

  • Kategory

    Λrrow - Functional companion to Kotlin's Standard Library (by arrow-kt)

    Project mention: Functional Companion to Kotlin's Standard Library | news.ycombinator.com | 2022-06-29
  • Monocle

    Optics library for Scala

    Project mention: Show HN: Monocle – bidirectional code generation library | news.ycombinator.com | 2022-04-12

    A very popular Scala optics library is also called Monocle. I’ve been a happy user for a few years:


  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • functionaljava

    Functional programming in Java

    Project mention: How to write this (3) Java lines in a functional style? | reddit.com/r/functionalprogramming | 2022-06-21

    A few side-notes about this code: - you need some sort of "wrapper" or "container" in order to use functional methods like map/flatMap/filter/etc on some object - here I used Optionalfor testing because it's available in standard Java: Optional describes an object that may or may not be available. - A more suitable "wrapper" for this use-case could have been Try which describes the result of an execution that may succeed or fail, see vavr has a Try for example, functionaljava has Either - map transforms A -> B (would make sense for your mapToUser) whereas flatMap transforms A -> Optional (or whichever "wrapper", would make sense for your userService.save if suppose the saving operation can fail) - Here is a working example for you :) - practise exercises: 1- replace the "wrapper" Optional with List, there is almost no change of code, this now gives you the ability to process lists of users 2- import vavr and replace the "wrapper" Optional with Try, there is almost no change of code, this now gives you the ability to process operations that may fail - Enjoy functional programming, you'll find java is rather verbose and quickly gets clunky for FP, consider switching to another language

  • monocle-ts

    Functional optics: a (partial) porting of Scala monocle

    Project mention: Is there a cleaner way to immutably update a deeply nested attribute? (I feel like this is not very clean) | reddit.com/r/typescript | 2022-01-04

    You could have a look at the monocle-ts library. It was designed to deal with this kind of problem.

  • partial.lenses

    Partial lenses is a comprehensive, high-performance optics library for JavaScript

    Project mention: Delete an element from an associative array | reddit.com/r/learnjavascript | 2021-11-19

    If this is something you do often, maybe consider lenses library, like partial.lenses — using it you can target values at arbitrary nesting levels and code should be more concise:

  • λ

    Functional patterns for Java

    Project mention: Paltable Lambda for Java | news.ycombinator.com | 2022-02-17
  • derive4j

    Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching, folds, optics and typeclasses.

  • SonarLint

    Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.

  • generic-records

    Generically derive traversals, lenses, and prisms.

  • tofu

    Functional programming toolbox (by TinkoffCreditSystems)

  • optics-ts

    Type-safe, ergonomic, polymorphic optics for TypeScript

    Project mention: Advanced Large Object Management with jotai | dev.to | 2021-09-26

    The trick lies within the optic-ts integration.

  • OpticSim.jl

    Optical Simulation software

    Project mention: Favorite Optical Design Freeware? | reddit.com/r/Optics | 2022-01-22

    you can try something with python https://github.com/microsoft/OpticSim.jl

  • awesome-physics

    🌌 A collaborative list of awesome software for exploring Physics concepts

    Project mention: Where should I focus in order to be able to do a side project independently? | reddit.com/r/learnprogramming | 2022-02-09

    If you're interested in physics, check out this list of open source physics projects (not all python, but some are): https://github.com/wbierbower/awesome-physics

  • python-lenses

    A python lens library for manipulating deeply nested immutable structures

    Project mention: Is there an alternative to using a bunch of nested If else statements? | reddit.com/r/learnpython | 2022-01-27


  • diffractsim

    ✨ A diffraction simulator for exploring and visualizing physical optics.

    Project mention: Introduction to Fourier Optics in Python: Simulating the Single/Double Slit Experiment | reddit.com/r/Physics | 2022-01-04

    https://rafael-fuente.github.io/simulating-diffraction-patterns-with-the-angular-spectrum-method-and-python.html Simulating diffraction patterns with the angular spectrum method and Python

  • fdtd

    A 3D electromagnetic FDTD simulator written in Python

    Project mention: In a demonstration of Einstein’s E=mc2, collisions of light yielded electrons and positrons. Physicists are claiming the first direct observation of the long-sought Breit-Wheeler process, in which two particles of light, or photons, crash into one another & produce an electron & a positron. | reddit.com/r/science | 2021-08-10

    I am trying to create a cellular automata based on electro-magnetism and see what happens if I add gravity to it. I found this repository that simulates EM and managed to add gravity to it just by adding a scalar field that averages itself over time with neighboring cells and making the gravity in a spot proportional to the difference of the G scalar field at that location relative to it's neighbors.

  • prysm

    physical optics: integrated modeling, phase retrieval, segmented systems, polynomials and fitting, sequential raytracing... (by brandondube)

    Project mention: Optic system design software | reddit.com/r/Optics | 2022-07-02

    No, again, it's because the library you were using (whether it's Optix or a twin) has well optimized routines for limiting the number of surfaces considered for intersection. Finding the intersection between a ray and a mesh is strictly slower than finding the intersection of a ray and any of the basic geometries used in optics. A Zernike or Q-polynomial on base off axis conic surface might be slower because the math is awful. But for your basic surface types, you can find the surface intersection faster than you can eve lookup which simplex is most likely to intersect the ray.

  • Incoherent-Light-Simulation

    Simulation of the propagation of incoherent light, aiming to illustrate the concept of spatial coherence.

    Project mention: Simulation of the double slit experiment with incoherent light at three different time scales. As the field is averaged over a few microseconds, wave interferences disappear! [OC] | reddit.com/r/educationalgifs | 2021-07-30

    The simulations were done with the meep finite difference scheme, programmed in C++. The interface to the simulation was programmed with Python and its source code can be found here.

  • RayTracer

    A ray tracing program

    Project mention: Writing a Raytracer — which book? | reddit.com/r/GraphicsProgramming | 2022-06-22

    I started with number 2 (continuing with the other two in the series), then went further and ended up with this: https://github.com/aromanro/RayTracer

  • quantum-game-2

    LEGACY open-source version of Quantum Game 2 (Sept 2019 - Oct 2020)

    Project mention: Visualizing quantum mechanics in an interactive simulation – Virtual Lab by Quantum Flytrap | reddit.com/r/Physics | 2022-07-04

    These are in the paper. But for convenience, the game is https://quantumgame.io/, and for experiments see:

  • OptSys

    First order ray-optical system simulation (by vishwa91)

  • concave

    🧐 Lens-like state management (for React).

    Project mention: Concave: Lens-like state management for React | reddit.com/r/javascript | 2021-12-28
  • Koko

    Koko is raytracing software for the design and analysis of optical imaging and illumination systems

    Project mention: How are freeform spline surfaces ray traced in commercial software? | reddit.com/r/Optics | 2021-10-05
  • dynamic

    A Scala library that allows copying a case class using a dynamic property name (by reugn)

    Project mention: A Scala library that allows copying a case class using a dynamic property name | reddit.com/r/scala | 2021-07-22
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2022-07-04.

Optics related posts


What are some of the best open-source Optic projects? This list will help you:

Project Stars
1 Kategory 5,098
2 Monocle 1,512
3 functionaljava 1,506
4 monocle-ts 882
5 partial.lenses 880
6 λ 809
7 derive4j 541
8 generic-records 424
9 tofu 417
10 optics-ts 363
11 OpticSim.jl 336
12 awesome-physics 293
13 python-lenses 232
14 diffractsim 208
15 fdtd 200
16 prysm 112
17 Incoherent-Light-Simulation 98
18 RayTracer 87
19 quantum-game-2 59
20 OptSys 14
21 concave 13
22 Koko 12
23 dynamic 11
Find remote jobs at our new job board 99remotejobs.com. There are 2 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives